shish 2 ani în urmă
părinte
comite
890caeb502

+ 1 - 1
app-ghs/controllers/CustomController.php

@@ -37,7 +37,7 @@ class CustomController extends BaseController
         if ($amount <= 0) {
             util::fail('充值金额需要大于0');
         }
-        $custom = CustomClass::getById($customId, true);
+        $custom = CustomClass::getLockById($customId);
         if (empty($custom)) {
             util::fail('没有找到客户');
         }

+ 2 - 1
biz-ghs/custom/classes/CustomClass.php

@@ -67,7 +67,7 @@ class CustomClass extends BaseClass
     public static function rechargeAmount($custom, $amount, $shop, $staff)
     {
         $ghsId = $custom->ghsId ?? 0;
-        $ghsInfo = GhsClass::getById($ghsId, true);
+        $ghsInfo = GhsClass::getLockById($ghsId);
         if (empty($ghsInfo)) {
             util::fail('没有找到供货商');
         }
@@ -184,6 +184,7 @@ class CustomClass extends BaseClass
             'remark' => '',
         ];
         GhsBalanceChangeClass::add($gbData, true);
+        return ['custom' => $custom, 'ghs' => $ghsInfo];
     }
 
     public static function createSeatSn($mainId)

+ 11 - 2
biz-ghs/custom/services/CustomService.php

@@ -7,6 +7,7 @@ use biz\sj\classes\SjClass;
 use bizGhs\order\classes\OrderClearClass;
 use bizHd\base\services\BaseService;
 use bizGhs\custom\classes\CustomClass;
+use common\components\util;
 
 class CustomService extends BaseService
 {
@@ -16,8 +17,16 @@ class CustomService extends BaseService
     //充值和结账 ssh 20240309
     public static function rechargeClear($custom, $amount, $shop, $staff)
     {
-        CustomClass::rechargeAmount($custom, $amount, $shop, $staff);
-        OrderClearClass::useBalanceClear($custom);
+        $respond = CustomClass::rechargeAmount($custom, $amount, $shop, $staff);
+        $custom = $respond['custom'] ?? [];
+        $ghs = $respond['ghs'] ?? [];
+        if (empty($custom)) {
+            util::fail('没有客户信息');
+        }
+        if (empty($ghs)) {
+            util::fail('没有供货商信息');
+        }
+        OrderClearClass::useBalanceClear($custom, $ghs);
     }
 
     //分享建立客户和供货商关系 ssh 2021.2.28

+ 17 - 2
biz-ghs/order/classes/OrderClearClass.php

@@ -21,9 +21,24 @@ class OrderClearClass extends BaseClass
     public static $baseFile = '\bizGhs\order\models\OrderClear';
 
     //使用余额自助结欠款 ssh 20240310
-    public static function useBalanceClear($custom)
+    public static function useBalanceClear($custom, $ghs)
     {
-        return true;
+        $customId = $custom->id ?? 0;
+        $ghsId = $ghs->id ?? 0;
+        $customBalance = $custom->balance ?? 0;
+        $ghsBalance = $ghs->balace ?? 0;
+        if (floatval($customBalance) != floatval($ghsBalance)) {
+            noticeUtil::push("客户{$customId} 供货商{$ghsId} 的余额有问题", '15280215347');
+            util::fail('系统故障');
+        }
+        if ($customBalance < 0) {
+            noticeUtil::push("客户{$customId} 供货商{$ghsId} 的余额小于0", '15280215347');
+            util::fail('系统故障哦');
+        }
+        if (floatval($customBalance) == 0) {
+            return true;
+        }
+        
     }
 
     //订单结算 ssh 2021.3.14