shish 5 سال پیش
والد
کامیت
4010442d88
2فایلهای تغییر یافته به همراه20 افزوده شده و 30 حذف شده
  1. 2 2
      app-ghs/controllers/ItemController.php
  2. 18 28
      biz-ghs/item/services/ItemService.php

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

@@ -36,8 +36,8 @@ class ItemController extends BaseController
     public function actionBatchAdd()
     {
         $post = Yii::$app->request->post();
-        $data = $post['data']; //[{itemId:1000,classId:2,cost:1,addPrice:1,stockWarning:1}]
-        //2021.7.11 linqh  参数改为 只传售价,成本价和加价各取一半[{itemId:1000,classId:2,price:1,stockWarning:1}]
+        //[{itemId:1000,classId:2,price:1,stockWarning:1}]
+        $data = $post['data'];
         if (empty($data)) {
             util::fail("请选花材");
         }

+ 18 - 28
biz-ghs/item/services/ItemService.php

@@ -31,54 +31,44 @@ class ItemService extends BaseService
         $sjId = $data['sjId'] ?? 0;
         $classId = $data['classId'] ?? 0;
         $itemId = $data['itemId'] ?? 0;
-        $cost = $data['cost'] ?? false;
-        $addPrice = $data['addPrice'] ?? false;
-        $stockWarning = $data['stockWarning'] ?? false;
-        $price = $data['price'] ?? false;
-        if (!$sjId) {
-            util::fail("请选择供应商");
-        }
-        if (!$classId) {
+        if (empty($classId)) {
             util::fail("请选择分类");
         }
-        if (!$itemId) {
+        if (empty($itemId)) {
             util::fail("请选择花材");
         }
-        if ($cost === false) {
-            //util::fail("请输入花材的成本价");
-        }
-        if ($addPrice === false) {
-            //util::fail("请输入花材的加价");
+        if (isset($data['price']) == false || is_numeric($data['price']) == false) {
+            util::fail('价格填写有误');
         }
-        if ($price == false || $price <= 0) {
-            util::fail("请输入正确花材的售价");
+        $price = $data['price'] ?? 10;
+        if (isset($data['name']) == false || empty($data['name'])) {
+            util::fail('请填写名称');
         }
+        $name = $data['name'] ?? '';
+
+        //2021.7.11 linqh  参数改为 只传售价,成本价和加价各取一半[{itemId:1000,classId:2,price:1,stockWarning:1}]
         $cost = bcdiv($price, 2, 2);
         $addPrice = bcsub($price, $cost, 2);
         $data['cost'] = $cost;
         $data['addPrice'] = $addPrice;
 
-        if ($stockWarning === false) {
-            util::fail("请输入库存预警值");
-        }
+        $stockWarning = isset($data['stockWarning']) && preg_match("/^[1-9][0-9]*$/", $data['stockWarning']) ? $data['stockWarning'] : 5;
 
         //判断花材是否存在 调用平台花材的方法
         $checkItem = PtItemClass::getById($itemId);
-        if (!$checkItem) {
+        if (empty($checkItem)) {
             util::fail("花材不存在");
         }
-
         $existItemClass = ItemClassClass::exists(['id' => $classId, 'sjId' => $sjId]);
-        if (!$existItemClass) {
-            util::fail("花材分类不存在");
+        if (empty($existItemClass)) {
+            util::fail("分类不存在");
         }
-
-        $existItem = ItemClass::exists(['itemId' => $itemId, 'sjId' => $sjId]);
+        $existItem = ItemClass::exists(['sjId' => $sjId, 'itemId' => $itemId]);
         if ($existItem) {
             util::fail("花材已添加");
         }
         //补全花材信息
-        $data['name'] = $checkItem['name'];
+        $data['name'] = $name;
         $data['alias'] = $checkItem['alias'];
         $data['py'] = $checkItem['py'];
         $data['cover'] = $checkItem['cover'];
@@ -86,7 +76,7 @@ class ItemService extends BaseService
         $data['weight'] = $checkItem['weight'];
         $data['bigUnit'] = $checkItem['bigUnit'];
         $data['smallUnit'] = $checkItem['smallUnit'];
-        //$data['price'] = bcadd($cost,$addPrice,2);
+        $data['stockWarning'] = $stockWarning;
 
         $connection = Yii::$app->db;
         $transaction = $connection->beginTransaction();
@@ -97,7 +87,7 @@ class ItemService extends BaseService
             $shopIds = ShopService::getShopIds($sjId);
             if (empty($shopIds)) {
                 $transaction->rollBack();
-                util::fail("门店");
+                util::fail("没有找到门店");
             }
             foreach ($shopIds as $shopId) {
                 $data['shopId'] = $shopId;