Просмотр исходного кода

修改花材时,有库存增加盘点

林琦海 5 лет назад
Родитель
Сommit
6f4ab7f6b0
1 измененных файлов с 28 добавлено и 11 удалено
  1. 28 11
      biz-ghs/product/classes/ProductClass.php

+ 28 - 11
biz-ghs/product/classes/ProductClass.php

@@ -639,18 +639,43 @@ class ProductClass extends BaseClass
         if (empty($product)) {
             util::fail("该花材不存在");
         }
+        
+        $upData = [];
+
+        if (isset($data['ratio'])) {
+            if (empty($data['ratio'])) {
+                util::fail("请输入花材比例");
+            }
+            if (preg_match("/^[1-9][0-9]*$/", $data['ratio']) == false || $data['ratio'] <= 0) {
+                util::fail('比例请填写整数,并且大于0');
+            }
+            $upData['ratio'] = $data['ratio'];
+        }
 
         //库存可以修改
         if (isset($data['stock']) && is_numeric($data['stock'])) {
             $preStock = $product->stock ?? 0;
             if ($data['stock'] != $preStock) {
                 $product->stock = $data['stock'];
-                $product->save();
+                //增加盘点记录 2021.7.27
+                $ratio = $upData['ratio']??$product->ratio;//取最新比例
+                $formNum = ProductClass::formatStock($data['stock'],$ratio);
+                $ghsItemInfo = [
+                    [
+                        'productId'=>$product->id,
+                        'bigNum'=>$formNum['bigNum'],
+                        'smallNum'=>$formNum['smallNum'],
+                    ]
+                ];
+                $pdData = [];
+                $pdData['itemInfo'] = $ghsItemInfo;
+                $pdData['sjId'] = $product->sjId;
+                $pdData['shopId'] = $product->shopId;
+                CheckOrderClass::opOrder($pdData,false,false);
             }
             unset($data['stock']);
         }
 
-        $upData = [];
         if (isset($data['name'])) {
             if (empty($data['name'])) {
                 util::fail("请输入花材名称");
@@ -672,15 +697,7 @@ class ProductClass extends BaseClass
             }
             $upData['cost'] = $data['cost'];
         }
-        if (isset($data['ratio'])) {
-            if (empty($data['ratio'])) {
-                util::fail("请输入花材比例");
-            }
-            if (preg_match("/^[1-9][0-9]*$/", $data['ratio']) == false || $data['ratio'] <= 0) {
-                util::fail('比例请填写整数,并且大于0');
-            }
-            $upData['ratio'] = $data['ratio'];
-        }
+
         if (isset($data['weight'])) {
             $upData['weight'] = $data['weight'];
         }