Browse Source

花材同步

shish 3 years ago
parent
commit
0340440209
1 changed files with 39 additions and 68 deletions
  1. 39 68
      biz/item/classes/PtItemClass.php

+ 39 - 68
biz/item/classes/PtItemClass.php

@@ -114,19 +114,15 @@ class PtItemClass extends BaseClass
     }
 
     //修改花材信息
-    public static function updateItem($data, $sync = false)
+    public static function updateItem($data)
     {
         $id = $data['id'] ?? 0;
-        $syncCover = false;
         $model = self::getById($id);
         if (!$model) {
-            util::fail("该花材不存在");
+            util::fail('没有找到花材');
         }
         $upData = [];
-        if (isset($data['name'])) {
-            if (empty($data['name'])) {
-                util::fail("请输入花材名称");
-            }
+        if (isset($data['name']) && !empty($data['name'])) {
             $upData['name'] = $data['name'];
         }
         if (isset($data['py'])) {
@@ -135,89 +131,64 @@ class PtItemClass extends BaseClass
             }
             $upData['py'] = $data['py'];
         }
-
-        if (isset($data['cover'])) {
-            if (empty($data['cover'])) {
-                util::fail("请输入花材图片");
-            }
+        if (isset($data['cover']) && !empty($data['cover'])) {
             $upData['cover'] = $data['cover'];
-            $syncCover = true;
-        }
-        if (isset($data['alias'])) {
-            if (empty($data['alias'])) {
-                util::fail("请输入花材别名");
-            }
-            $upData['alias'] = $data['alias'];
-        }
-        if (isset($data['cost'])) {
-            if (empty($data['cost'])) {
-                util::fail("请输入花材成本价");
-            }
-            $upData['cost'] = $data['cost'];
         }
         if (isset($data['ratioType']) && is_numeric($data['ratioType'])) {
             $upData['ratioType'] = $data['ratioType'];
         }
-        if (isset($data['ratio'])) {
-            if (empty($data['ratio'])) {
-                util::fail("请输入花材比例");
-            }
+        if (isset($data['ratio']) && !empty($data['ratio'])) {
             if (preg_match("/^[1-9][0-9]*$/", $data['ratio']) == false || $data['ratio'] <= 0) {
                 util::fail('比例请填写整数,并且大于0');
             }
             $upData['ratio'] = $data['ratio'];
         }
-        if (isset($data['weight'])) {
-            if (empty($data['weight'])) {
-                util::fail("请输入花材重量");
-            }
+        if (isset($data['weight']) && !empty($data['weight'])) {
             $upData['weight'] = $data['weight'];
         }
-        if (isset($data['addPrice'])) {
-            if (empty($data['addPrice'])) {
-                util::fail("请输入花材价加");
-            }
-            $upData['addPrice'] = $data['addPrice'];
-        }
-
-        if (isset($data['stockWarning'])) {
-            if (empty($data['stockWarning'])) {
-                util::fail("请输入花材库存预警");
-            }
+        if (isset($data['stockWarning']) && !empty($data['stockWarning'])) {
             $upData['stockWarning'] = $data['stockWarning'];
         }
-        if (isset($data['bigUnit'])) {
-            if (empty($data['bigUnit'])) {
-                util::fail("请输入花材大单位");
-            }
+        if (isset($data['bigUnit']) && !empty($data['bigUnit'])) {
             $upData['bigUnit'] = $data['bigUnit'];
         }
-        if (isset($data['smallUnit'])) {
-            if (empty($data['smallUnit'])) {
-                util::fail("请输入花材小单位");
-            }
+        if (isset($data['bigUnitId']) && !empty($data['bigUnitId'])) {
+            $upData['bigUnitId'] = $data['bigUnitId'];
+        }
+        if (isset($data['smallUnit']) && !empty($data['smallUnit'])) {
             $upData['smallUnit'] = $data['smallUnit'];
         }
-        if (isset($data['classId'])) {
-            if (empty($data['classId'])) {
-                util::fail("请选择花材分类");
-            }
+        if (isset($data['smallUnitId']) && !empty($data['smallUnitId'])) {
+            $upData['smallUnitId'] = $data['smallUnitId'];
+        }
+        if (isset($data['classId']) && !empty($data['classId'])) {
             $upData['classId'] = $data['classId'];
         }
-
         unset($data['id']);
-        if (empty($upData)) {
-            util::fail("参数错误");
-        }
-        self::updateById($id, $upData);
-        if ($sync) {
-            //同步各个商户的Item todo
-            if ($syncCover) {
-                $newCover = $upData['cover'];
-                $syncData['cover'] = $newCover;
-                ProductClass::updateByCondition(['itemId' => $id], $syncData);
-            }
+        if (!empty($upData)) {
+            self::updateById($id, $upData);
+        }
+
+        $syncData = [];
+        if (isset($data['ratioType']) && is_numeric($data['ratioType'])) {
+            $syncData['ratioType'] = $data['ratioType'];
+        }
+        if (isset($data['bigUnit']) && !empty($data['bigUnit'])) {
+            $syncData['bigUnit'] = $data['bigUnit'];
+        }
+        if (isset($data['bigUnitId']) && !empty($data['bigUnitId'])) {
+            $syncData['bigUnitId'] = $data['bigUnitId'];
+        }
+        if (isset($data['smallUnit']) && !empty($data['smallUnit'])) {
+            $syncData['smallUnit'] = $data['smallUnit'];
+        }
+        if (isset($data['smallUnitId']) && !empty($data['smallUnitId'])) {
+            $syncData['smallUnitId'] = $data['smallUnitId'];
+        }
+        if (isset($data['weight']) && !empty($data['weight'])) {
+            $syncData['weight'] = $data['weight'];
         }
+        ProductClass::updateByCondition(['itemId' => $id], $syncData);
     }
 
     //获取详情 ssh 2021.4.11