shish 2 miesięcy temu
rodzic
commit
1a07a69407

+ 35 - 26
app-ghs/controllers/ProductController.php

@@ -92,7 +92,7 @@ class ProductController extends BaseController
         $get = Yii::$app->request->get();
         $id = $get['id'] ?? 0;
         $clearStock = $get['clearStock'] ?? -1;
-        if($clearStock == -1){
+        if ($clearStock == -1) {
             util::fail('请选择是否清库存');
         }
         $info = ProductClass::getById($id, true);
@@ -127,7 +127,7 @@ class ProductController extends BaseController
         $info = ProductClass::getById($id, true);
         ProductClass::check($info, $this->mainId);
 
-        try{
+        try {
             $str = $post['date'] ?? '';
             $presell = $post['presell'] ?? 0;
             $newStr = '';
@@ -149,11 +149,11 @@ class ProductController extends BaseController
 
                 //使用redis缓存来保存某用户设置了某花材的预售
                 $redis = Yii::$app->redis;
-                $redis->set('product_presell:'.$id, $new[0]);
+                $redis->set('product_presell:' . $id, $new[0]);
             } else {
                 $redis = Yii::$app->redis;
-                if ($redis->exists('product_presell:'.$id)) {
-                    $redis->del('product_presell:'.$id);
+                if ($redis->exists('product_presell:' . $id)) {
+                    $redis->del('product_presell:' . $id);
                 }
             }
             $info->presell = $presell;
@@ -165,12 +165,12 @@ class ProductController extends BaseController
             }
 
             $info->save();
-        }catch(\Exception $e){
+        } catch (\Exception $e) {
             // 失败情况,要把缓存删除
             if ($presell == 1) {
                 $redis = Yii::$app->redis;
-                if ($redis->exists('product_presell:'.$id)) {
-                    $redis->del('product_presell:'.$id);
+                if ($redis->exists('product_presell:' . $id)) {
+                    $redis->del('product_presell:' . $id);
                 }
             }
         }
@@ -229,7 +229,7 @@ class ProductController extends BaseController
 
         $name = $info->name ?? '';
         $name = preg_replace('/\s{2,}/', ' ', $name ?? '');
-        
+
         $ptItemId = $info->itemId ?? 0;
         $mainId = $info->mainId ?? 0;
         $ext = $this->shopExt;
@@ -396,22 +396,22 @@ class ProductController extends BaseController
         $itemInfoData = [];
         $fieldMap = [
             'hasStockList' => 'id,py,cover,name,classId,itemId,price,skPrice,hjPrice,stock,onStock,cost,avCost,addPrice,hjAddPrice,skMore,limitBuy',
-            'hideItem'     => 'id,py,cover,name,classId,itemId,price,skPrice,hjPrice,stock,onStock,cost,avCost,addPrice,hjAddPrice,skMore,limitBuy',
-            'changePrice'  => 'id,py,cover,name,cost,itemId,classId,addPrice,skPrice,hjPrice,discountPrice,hjDiscountPrice,skDiscountPrice,skMore,hjAddPrice,variety,price,stock,onStock,presell,frontHide,reachNum,reachNumDiscount,limitBuy',
-            'changeStock'  => 'id,py,cover,name,cost,itemId,status,classId,addPrice,skPrice,discountPrice,skMore,variety,price,stock,frontHide,limitBuy',
-            'kd'           => 'id,py,cover,name,cost,itemId,classId,skPrice,variety,price,hjPrice,hjDiscountPrice,skDiscountPrice,discountPrice,stock,weight,stockWarning,presell,ratioType,smallUnit,smallRatio,bigUnit,ratio,frontHide,reachNum,reachNumDiscount,limitBuy',
-            'book'         => 'id,py,cover,name,cost,itemId,classId,skPrice,variety,price,hjPrice,hjDiscountPrice,skDiscountPrice,discountPrice,stock,weight,stockWarning,presell,ratioType,smallUnit,smallRatio,bigUnit,ratio,frontHide,limitBuy',
-            'itemList'     => 'id,py,cover,name,cost,avCost,itemId,classId,skPrice,variety,price,hjPrice,discountPrice,hjDiscountPrice,skDiscountPrice,stock,onStock,actualSold,status,ratio,ratioType,presell,frontHide,auth,reachNum,reachNumDiscount,addPrice,hjAddPrice,skMore,limitBuy',
-            'cgStaffList'  => 'id,py,cover,name,cost,itemId,classId,skPrice,variety,price,hjPrice,discountPrice,hjDiscountPrice,skDiscountPrice,stock,onStock,actualSold,status,ratio,ratioType,presell,frontHide,auth,reachNum,reachNumDiscount,cgStaffId,cgStaffName,limitBuy',
-            'outList'      => 'id,py,cover,name,cost,itemId,classId,addPrice,skPrice,bigUnit,smallUnit,ratio,ratioType,discountPrice,skMore,variety,price,stock,presell,status,limitBuy',
-            'stopList'     => 'id,py,cover,name,cost,itemId,classId,addPrice,skPrice,bigUnit,smallUnit,ratio,ratioType,discountPrice,skMore,variety,price,stock,presell,status,delStatus,limitBuy',
-            'removeList'   => 'id,py,cover,name,cost,itemId,classId,addPrice,skPrice,bigUnit,smallUnit,ratio,ratioType,discountPrice,skMore,variety,price,stock,presell,status,limitBuy',
-            'check'        => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,stockWarning,presell,ratioType,smallUnit,bigUnit,ratio,frontHide,limitBuy',
-            'break'        => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,stockWarning,presell,ratioType,smallUnit,bigUnit,ratio,frontHide,limitBuy',
-            'part'         => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,stockWarning,presell,ratioType,smallUnit,bigUnit,ratio,limitBuy',
-            'stockOut'     => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,stockWarning,presell,ratioType,smallUnit,bigUnit,ratio,smallRatio,frontHide,limitBuy',
-            'cg'           => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,presell,ratioType,smallUnit,bigUnit,ratio,weight,frontHide,limitBuy',
-            'warning'      => 'id,py,cover,name,cost,itemId,classId,skPrice,variety,price,discountPrice,stock,onStock,actualSold,presell,bigUnit,stockWarning,status,frontHide,limitBuy',
+            'hideItem' => 'id,py,cover,name,classId,itemId,price,skPrice,hjPrice,stock,onStock,cost,avCost,addPrice,hjAddPrice,skMore,limitBuy',
+            'changePrice' => 'id,py,cover,name,cost,itemId,classId,addPrice,skPrice,hjPrice,discountPrice,hjDiscountPrice,skDiscountPrice,skMore,hjAddPrice,variety,price,stock,onStock,presell,frontHide,reachNum,reachNumDiscount,limitBuy',
+            'changeStock' => 'id,py,cover,name,cost,itemId,status,classId,addPrice,skPrice,discountPrice,skMore,variety,price,stock,frontHide,limitBuy',
+            'kd' => 'id,py,cover,name,cost,itemId,classId,skPrice,variety,price,hjPrice,hjDiscountPrice,skDiscountPrice,discountPrice,stock,weight,stockWarning,presell,ratioType,smallUnit,smallRatio,bigUnit,ratio,frontHide,reachNum,reachNumDiscount,limitBuy',
+            'book' => 'id,py,cover,name,cost,itemId,classId,skPrice,variety,price,hjPrice,hjDiscountPrice,skDiscountPrice,discountPrice,stock,weight,stockWarning,presell,ratioType,smallUnit,smallRatio,bigUnit,ratio,frontHide,limitBuy',
+            'itemList' => 'id,py,cover,name,cost,avCost,itemId,classId,skPrice,variety,price,hjPrice,discountPrice,hjDiscountPrice,skDiscountPrice,stock,onStock,actualSold,status,ratio,ratioType,presell,frontHide,auth,reachNum,reachNumDiscount,addPrice,hjAddPrice,skMore,limitBuy',
+            'cgStaffList' => 'id,py,cover,name,cost,itemId,classId,skPrice,variety,price,hjPrice,discountPrice,hjDiscountPrice,skDiscountPrice,stock,onStock,actualSold,status,ratio,ratioType,presell,frontHide,auth,reachNum,reachNumDiscount,cgStaffId,cgStaffName,limitBuy',
+            'outList' => 'id,py,cover,name,cost,itemId,classId,addPrice,skPrice,bigUnit,smallUnit,ratio,ratioType,discountPrice,skMore,variety,price,stock,presell,status,limitBuy',
+            'stopList' => 'id,py,cover,name,cost,itemId,classId,addPrice,skPrice,bigUnit,smallUnit,ratio,ratioType,discountPrice,skMore,variety,price,stock,presell,status,delStatus,limitBuy',
+            'removeList' => 'id,py,cover,name,cost,itemId,classId,addPrice,skPrice,bigUnit,smallUnit,ratio,ratioType,discountPrice,skMore,variety,price,stock,presell,status,limitBuy',
+            'check' => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,stockWarning,presell,ratioType,smallUnit,bigUnit,ratio,frontHide,limitBuy',
+            'break' => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,stockWarning,presell,ratioType,smallUnit,bigUnit,ratio,frontHide,limitBuy',
+            'part' => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,stockWarning,presell,ratioType,smallUnit,bigUnit,ratio,limitBuy',
+            'stockOut' => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,stockWarning,presell,ratioType,smallUnit,bigUnit,ratio,smallRatio,frontHide,limitBuy',
+            'cg' => 'id,py,cover,name,itemId,classId,variety,price,discountPrice,stock,presell,ratioType,smallUnit,bigUnit,ratio,weight,frontHide,limitBuy',
+            'warning' => 'id,py,cover,name,cost,itemId,classId,skPrice,variety,price,discountPrice,stock,onStock,actualSold,presell,bigUnit,stockWarning,status,frontHide,limitBuy',
         ];
 
         if (!isset($fieldMap[$requestType])) {
@@ -1219,6 +1219,15 @@ class ProductController extends BaseController
             $post['images'] = implode(',', $post['images']);
         }
 
+        //如果开启限购则必须升级应用
+        $limitBuy = $post['limitBuy'] ?? 0;
+        if ($limitBuy > 0) {
+            $appVersion = $post['appVersion'] ?? 0;
+            if ($appVersion < 2) {
+                util::fail('请先升级,才能使用限购');
+            }
+        }
+
         $connection = Yii::$app->db;
         $transaction = $connection->beginTransaction();
         try {
@@ -1334,7 +1343,7 @@ class ProductController extends BaseController
             $limitBuyClearInfo = [];
         }
         // foreach ($limitBuyClearInfo as $key => $value) {
-            // $respond[$key] = $value;
+        // $respond[$key] = $value;
         // }
         $respond['limitBuyClearInfo'] = $limitBuyClearInfo;
         $ptItemId = $respond['itemId'] ?? 0;

+ 9 - 0
app-hd/controllers/ProductController.php

@@ -937,6 +937,15 @@ class ProductController extends BaseController
         $post['staffId'] = $this->shopAdmin->id;
         $post['staffName'] = $this->shopAdmin->name;
 
+        //如果开启限购则必须升级应用
+        $limitBuy = $post['limitBuy'] ?? 0;
+        if ($limitBuy > 0) {
+            $appVersion = $post['appVersion'] ?? 0;
+            if ($appVersion < 2) {
+                util::fail('请先升级,才能使用限购');
+            }
+        }
+
         $connection = Yii::$app->db;
         $transaction = $connection->beginTransaction();
         try {