shish 4 سال پیش
والد
کامیت
1de7b34778
2فایلهای تغییر یافته به همراه32 افزوده شده و 2 حذف شده
  1. 30 0
      app-ghs/controllers/ClearController.php
  2. 2 2
      app-ghs/controllers/OrderClearController.php

+ 30 - 0
app-ghs/controllers/ClearController.php

@@ -6,12 +6,42 @@ use biz\ghs\classes\GhsClass;
 use bizGhs\clear\classes\ClearClass;
 use bizGhs\clear\services\ClearService;
 use bizGhs\custom\classes\CustomClass;
+use common\components\dict;
 use common\components\util;
 use Yii;
 
 class ClearController extends BaseController
 {
 
+    public function actionCancel()
+    {
+        $id = Yii::$app->request->get('id');
+        $clear = ClearClass::getLockById($id);
+        if (empty($clear)) {
+            util::fail('没有结账信息');
+        }
+        $ghsId = $clear->ghsId ?? 0;
+        $ghs = GhsClass::getById($ghsId, true);
+        if (empty($ghs)) {
+            util::fail('没有找到供应商关系');
+        }
+        if ($ghs->shopId != $this->shopId) {
+            util::fail('没有权限');
+        }
+        if ($clear->clearStyle != dict::getDict('clearStyle', 'gys2Hd')) {
+            util::fail('不是你建的账单');
+        }
+        if ($clear->status == ClearClass::STATUS_HAS_PAY) {
+            util::fail('账单已完成');
+        }
+        if ($clear->status == ClearClass::STATUS_EXPIRE) {
+            util::fail('账单已取消');
+        }
+        $clear->status = ClearClass::STATUS_EXPIRE;
+        $clear->save();
+        util::complete();
+    }
+
     //供应商的结帐单 ssh 20210625
     public function actionList()
     {

+ 2 - 2
app-ghs/controllers/OrderClearController.php

@@ -43,7 +43,7 @@ class OrderClearController extends BaseController
         $searchTime = $post['searchTime'] ?? '';
         //结账记录太多数据库会报错,所以必须选月份才能结账!!!!!
         //订单详情里可以单个结账
-        if (count($id) > 100) {
+        if (count((array)$id) > 100) {
             util::fail('订单太多,请选月份再结');
         }
         $startTime = $post['startTime'] ?? '';
@@ -65,7 +65,7 @@ class OrderClearController extends BaseController
                     $item->status = PurchaseClearClass::STATUS_EXPIRE;
                     $item->save();
                 } else {
-                    util::fail('客户还有未完成结账单');
+                    util::success(['hasUnComplete' => 1], '此客户还有待完成结账单');
                 }
             }
         }