瀏覽代碼

订单减库存

root 3 年之前
父節點
當前提交
6e354d9ea5
共有 100 個文件被更改,包括 203 次插入22 次删除
  1. 0 0
      .gitignore
  2. 0 0
      LICENSE.md
  3. 0 0
      README.md
  4. 0 0
      REGION_insert.sql
  5. 0 0
      Vagrantfile
  6. 0 0
      ak-upload-server/ar.upload.ming.conf
  7. 0 0
      ak-upload-server/auth.dev.lua
  8. 0 0
      ak-upload-server/auth.prod.lua
  9. 0 0
      ak-upload-server/server.dev.py
  10. 0 0
      ak-upload-server/server.prod.py
  11. 0 0
      ak-upload-server/token.php
  12. 0 0
      ak-upload-server/upload.py
  13. 0 0
      ak-upload-server/upload_img_filter.conf
  14. 0 0
      ak-upload-server/upload_img_filter.dev.conf
  15. 0 0
      ak-upload-server/upload_img_filter.prod.conf
  16. 0 0
      ak-upload-server/venv/bin/activate
  17. 0 0
      ak-upload-server/venv/bin/activate.csh
  18. 0 0
      ak-upload-server/venv/bin/activate.fish
  19. 0 0
      ak-upload-server/venv/bin/easy_install
  20. 0 0
      ak-upload-server/venv/bin/easy_install-3.6
  21. 0 0
      ak-upload-server/venv/bin/pip
  22. 0 0
      ak-upload-server/venv/bin/pip3
  23. 0 0
      ak-upload-server/venv/bin/pip3.6
  24. 0 0
      ak-upload-server/venv/bin/python
  25. 0 0
      ak-upload-server/venv/bin/python3
  26. 0 0
      ak-upload-server/venv/bin/python3.6
  27. 0 0
      ak-upload-server/venv/lib/python3.6/site-packages/easy-install.pth
  28. 0 0
      ak-upload-server/venv/lib/python3.6/site-packages/setuptools-28.8.0-py3.6.egg
  29. 0 0
      ak-upload-server/venv/lib/python3.6/site-packages/setuptools.pth
  30. 0 0
      ak-upload-server/venv/pyvenv.cfg
  31. 0 0
      backend/assets/AppAsset.php
  32. 0 0
      backend/codeception.yml
  33. 0 0
      backend/config/.gitignore
  34. 0 0
      backend/config/bootstrap.php
  35. 0 0
      backend/config/main-local.php
  36. 0 0
      backend/config/main.php
  37. 0 0
      backend/config/params.php
  38. 0 0
      backend/config/test.php
  39. 0 0
      backend/controllers/SiteController.php
  40. 0 0
      backend/controllers/TestController.php
  41. 0 0
      backend/models/.gitkeep
  42. 0 0
      backend/runtime/.gitignore
  43. 0 0
      backend/tests/_bootstrap.php
  44. 0 0
      backend/tests/_data/.gitignore
  45. 0 0
      backend/tests/_data/login_data.php
  46. 0 0
      backend/tests/_output/.gitignore
  47. 0 0
      backend/tests/_support/.gitignore
  48. 0 0
      backend/tests/_support/FunctionalTester.php
  49. 0 0
      backend/tests/_support/UnitTester.php
  50. 0 0
      backend/tests/functional.suite.yml
  51. 0 0
      backend/tests/functional/LoginCest.php
  52. 0 0
      backend/tests/functional/_bootstrap.php
  53. 0 0
      backend/tests/unit.suite.yml
  54. 0 0
      backend/tests/unit/_bootstrap.php
  55. 0 0
      backend/views/layouts/main.php
  56. 0 0
      backend/views/site/addDecTest.php
  57. 0 0
      backend/views/site/error.php
  58. 0 0
      backend/views/site/index.php
  59. 0 0
      backend/views/site/login.php
  60. 0 0
      backend/web/.gitignore
  61. 0 0
      backend/web/assets/.gitignore
  62. 0 0
      backend/web/css/site.css
  63. 0 0
      backend/web/favicon.ico
  64. 0 0
      backend/web/index.php
  65. 0 0
      backend/web/robots.txt
  66. 0 0
      backend/web/test.php
  67. 3 2
      backendApi/modules/v1/controllers/ShopController.php
  68. 7 2
      backendApi/modules/v1/models/lists/shop/PackageList.php
  69. 0 0
      backendEle/.babelrc
  70. 0 0
      backendEle/.editorconfig
  71. 0 0
      backendEle/.eslintignore
  72. 0 0
      backendEle/.eslintrc.js
  73. 0 0
      backendEle/.gitignore
  74. 0 0
      backendEle/.postcssrc.js
  75. 6 2
      backendEle/src/views/shop/package-add.vue
  76. 3 0
      backendEle/src/views/shop/package.vue
  77. 0 0
      codeception.yml
  78. 5 3
      common/models/DeclarationPackage.php
  79. 0 0
      common/models/OriginDecPv.php
  80. 1 1
      common/models/ShopGoods.php
  81. 0 0
      common/models/UpgradeType.php
  82. 10 6
      common/models/forms/DecPackageForm.php
  83. 66 2
      common/models/forms/DeclarationLoopForm.php
  84. 32 0
      common/models/forms/DeclarationUpgradeForm.php
  85. 70 4
      common/models/forms/OrderForm.php
  86. 0 0
      composer.json
  87. 0 0
      composer.lock
  88. 0 0
      console/config/.gitignore
  89. 0 0
      console/config/bootstrap.php
  90. 0 0
      console/config/main.php
  91. 0 0
      console/config/params.php
  92. 0 0
      console/controllers/.gitkeep
  93. 0 0
      console/controllers/AtlasController.php
  94. 0 0
      console/controllers/BaseController.php
  95. 0 0
      console/controllers/BonusController.php
  96. 0 0
      console/controllers/ChangeNetController.php
  97. 0 0
      console/controllers/ConfigController.php
  98. 0 0
      console/controllers/DecController.php
  99. 0 0
      console/controllers/FinanceController.php
  100. 0 0
      console/controllers/FixNetController.php

+ 0 - 0
.gitignore


+ 0 - 0
LICENSE.md


+ 0 - 0
README.md


+ 0 - 0
REGION_insert.sql


+ 0 - 0
Vagrantfile


+ 0 - 0
ak-upload-server/ar.upload.ming.conf


+ 0 - 0
ak-upload-server/auth.dev.lua


+ 0 - 0
ak-upload-server/auth.prod.lua


+ 0 - 0
ak-upload-server/server.dev.py


+ 0 - 0
ak-upload-server/server.prod.py


+ 0 - 0
ak-upload-server/token.php


+ 0 - 0
ak-upload-server/upload.py


+ 0 - 0
ak-upload-server/upload_img_filter.conf


+ 0 - 0
ak-upload-server/upload_img_filter.dev.conf


+ 0 - 0
ak-upload-server/upload_img_filter.prod.conf


+ 0 - 0
ak-upload-server/venv/bin/activate


+ 0 - 0
ak-upload-server/venv/bin/activate.csh


+ 0 - 0
ak-upload-server/venv/bin/activate.fish


+ 0 - 0
ak-upload-server/venv/bin/easy_install


+ 0 - 0
ak-upload-server/venv/bin/easy_install-3.6


+ 0 - 0
ak-upload-server/venv/bin/pip


+ 0 - 0
ak-upload-server/venv/bin/pip3


+ 0 - 0
ak-upload-server/venv/bin/pip3.6


+ 0 - 0
ak-upload-server/venv/bin/python


+ 0 - 0
ak-upload-server/venv/bin/python3


+ 0 - 0
ak-upload-server/venv/bin/python3.6


+ 0 - 0
ak-upload-server/venv/lib/python3.6/site-packages/easy-install.pth


+ 0 - 0
ak-upload-server/venv/lib/python3.6/site-packages/setuptools-28.8.0-py3.6.egg


+ 0 - 0
ak-upload-server/venv/lib/python3.6/site-packages/setuptools.pth


+ 0 - 0
ak-upload-server/venv/pyvenv.cfg


+ 0 - 0
backend/assets/AppAsset.php


+ 0 - 0
backend/codeception.yml


+ 0 - 0
backend/config/.gitignore


+ 0 - 0
backend/config/bootstrap.php


+ 0 - 0
backend/config/main-local.php


+ 0 - 0
backend/config/main.php


+ 0 - 0
backend/config/params.php


+ 0 - 0
backend/config/test.php


+ 0 - 0
backend/controllers/SiteController.php


+ 0 - 0
backend/controllers/TestController.php


+ 0 - 0
backend/models/.gitkeep


+ 0 - 0
backend/runtime/.gitignore


+ 0 - 0
backend/tests/_bootstrap.php


+ 0 - 0
backend/tests/_data/.gitignore


+ 0 - 0
backend/tests/_data/login_data.php


+ 0 - 0
backend/tests/_output/.gitignore


+ 0 - 0
backend/tests/_support/.gitignore


+ 0 - 0
backend/tests/_support/FunctionalTester.php


+ 0 - 0
backend/tests/_support/UnitTester.php


+ 0 - 0
backend/tests/functional.suite.yml


+ 0 - 0
backend/tests/functional/LoginCest.php


+ 0 - 0
backend/tests/functional/_bootstrap.php


+ 0 - 0
backend/tests/unit.suite.yml


+ 0 - 0
backend/tests/unit/_bootstrap.php


+ 0 - 0
backend/views/layouts/main.php


+ 0 - 0
backend/views/site/addDecTest.php


+ 0 - 0
backend/views/site/error.php


+ 0 - 0
backend/views/site/index.php


+ 0 - 0
backend/views/site/login.php


+ 0 - 0
backend/web/.gitignore


+ 0 - 0
backend/web/assets/.gitignore


+ 0 - 0
backend/web/css/site.css


+ 0 - 0
backend/web/favicon.ico


+ 0 - 0
backend/web/index.php


+ 0 - 0
backend/web/robots.txt


+ 0 - 0
backend/web/test.php


+ 3 - 2
backendApi/modules/v1/controllers/ShopController.php

@@ -226,7 +226,8 @@ class ShopController extends BaseController {
             'PACKAGE_NAME'=> 'DP.PACKAGE_NAME',
             'AMOUNT'=> 'DP.AMOUNT',
             'PV'=> 'DP.PV',
-            'STATUS'=> 'DP.STATUS',
+            'STATUS'=> 'DP.STATUS',
+			'STORE_NUMS'=>'DP.STORE_NUMS',
         ]);
         $condition = $filter['condition'];
         $params = $filter['params'];
@@ -263,7 +264,7 @@ class ShopController extends BaseController {
             });
         }
         $package = DeclarationPackage::findOneAsArray('ID=:ID', [':ID' => $id]);
-        return static::notice(['id' => $package['ID'], 'packageName' => $package['PACKAGE_NAME'],'packageNo' => $package['PACKAGE_NO'], 'amount' => $package['AMOUNT'], 'amountPv' => $package['PV'], 'levelId' => $package['LEVEL_ID'], 'packageContent' => $package['PACKAGE_CONTENT']]);
+        return static::notice(['id' => $package['ID'], 'packageName' => $package['PACKAGE_NAME'],'packageNo' => $package['PACKAGE_NO'], 'amount' => $package['AMOUNT'], 'amountPv' => $package['PV'], 'levelId' => $package['LEVEL_ID'], 'packageContent' => $package['PACKAGE_CONTENT'],'storenums' => $package['STORE_NUMS']]);
     }
 
     /**

+ 7 - 2
backendApi/modules/v1/models/lists/shop/PackageList.php

@@ -2,7 +2,8 @@
 namespace backendApi\modules\v1\models\lists\shop;
 
 use common\helpers\Tool;
-use common\libs\dataList\column\DateTime;
+use common\libs\dataList\column\DateTime;
+use common\libs\dataList\column\YesNo;
 use common\libs\dataList\DataListInterface;
 use common\models\DeclarationLevel;
 use common\models\DeclarationPackage;
@@ -53,7 +54,11 @@ class PackageList extends \common\libs\dataList\DataList implements DataListInte
                 'LEVEL_NAME' => [
                     'header' => '所属报单级别',
                     'headerOther' => ['width' => '200'],
-                ],
+                ],
+				'STORE_NUMS' => [
+				    'header' => '库存',
+				    'headerOther' => ['width' => '200'],
+				],
                 'AMOUNT' => [
                     'header' => '套餐金额',
                     'headerOther' => [

+ 0 - 0
backendEle/.babelrc


+ 0 - 0
backendEle/.editorconfig


+ 0 - 0
backendEle/.eslintignore


+ 0 - 0
backendEle/.eslintrc.js


+ 0 - 0
backendEle/.gitignore


+ 0 - 0
backendEle/.postcssrc.js


+ 6 - 2
backendEle/src/views/shop/package-add.vue

@@ -24,7 +24,9 @@
                 <el-form-item label="套餐内容">
                     <el-input v-model="form.packageContent"></el-input>
                 </el-form-item>
-
+                <el-form-item label="套餐库存">
+                    <el-input oninput="value=value.replace(/[^\d]/g,'')" v-model="form.storenums"></el-input>
+                </el-form-item>
 
                 <el-form-item>
                     <el-button type="primary" @click="addSubmit" :loading="submitButtonStat">添加</el-button>
@@ -52,7 +54,8 @@
                     amount:'',
                     amountPv:'',
                     levelId:'',
-                    packageContent:''
+                    packageContent:'',
+                    storenums:''
                 },
                 submitButtonStat: false,
                 allDecLevel: baseInfo.decLevels(),
@@ -70,6 +73,7 @@
                     amountPv: this.form.amountPv,
                     levelId: this.form.levelId,
                     packageContent: this.form.packageContent,
+                    storenums:this.form.storenums,
 
                 }
 

+ 3 - 0
backendEle/src/views/shop/package.vue

@@ -70,6 +70,9 @@
                 <el-form-item label="套餐内容">
                     <el-input v-model="form.packageContent"></el-input>
                 </el-form-item>
+                <el-form-item label="套餐库存">
+                    <el-input oninput="value=value.replace(/[^\d]/g,'')" v-model="form.storenums"></el-input>
+                </el-form-item>
             </el-form>
             <div slot="footer" class="dialog-footer">
                 <el-button @click="dialogEditFormVisible = false">取 消</el-button>

+ 0 - 0
codeception.yml


+ 5 - 3
common/models/DeclarationPackage.php

@@ -11,7 +11,8 @@ namespace common\models;
  * @property string $LEVEL_ID 所属报单级别ID
  * @property string $AMOUNT 套餐金额
  * @property string $PV 套餐PV
- * @property string $PACKAGE_CONTENT 套餐内容
+ * @property string $PACKAGE_CONTENT 套餐内容
+ * @property string $STORE_NUMS 套餐库存
  * @property string $CREATED_AT 创建时间
  * @property string $CREATE_ADMIN 创建人
  * @property string $UPDATE_ADMIN 更新人
@@ -46,7 +47,7 @@ class DeclarationPackage extends \common\components\ActiveRecord
             [['ID','LEVEL_ID','CREATE_ADMIN', 'UPDATE_ADMIN'], 'string', 'max' => 32],
             [['PACKAGE_NAME'], 'string', 'max' => 48],
             [['PACKAGE_NAME'], 'unique'],
-            [['AMOUNT', 'PV'], 'number'],
+            [['AMOUNT', 'PV','STORE_NUMS'], 'number'],
             [['ID'], 'unique'],
         ];
     }
@@ -70,7 +71,8 @@ class DeclarationPackage extends \common\components\ActiveRecord
             'UPDATED_AT' => '更新时间',
             'IS_DEL' => '是否删除',
             'STATUS' => '是否上架',
-            'DELETED_AT' => '删除时间',
+            'DELETED_AT' => '删除时间',
+			'STORE_NUMS' => '套餐库存',
         ];
     }
 

+ 0 - 0
common/models/OriginDecPv.php


+ 1 - 1
common/models/ShopGoods.php

@@ -143,7 +143,7 @@ class ShopGoods extends \common\components\ActiveRecord
         return [
             [['SELL_DISCOUNT','GOODS_NAME', 'CATE_ID','GIFT_TYPE', 'GOODS_NO', 'SELL_PRICE','MARKET_PRICE','PRICE_PV','STORE_NUMS', 'SELL_TYPE', 'CATEGORY_TYPE'], 'required'],
             [['STORE_NUMS'], 'integer'],
-            [['SELL_PRICE','MARKET_PRICE','PRICE_PV','POINT', 'SELL_TYPE', 'CATEGORY_TYPE'], 'number'],
+            [['SELL_PRICE','MARKET_PRICE','PRICE_PV','POINT'/*, 'SELL_TYPE'*/, 'CATEGORY_TYPE'], 'number'],
             [['ID','CATE_ID', 'GOODS_NO','GIFT_TYPE'], 'string', 'max' => 32],
             [['UNIT'], 'string', 'max' => 16],
             [['COVER', 'GOODS_NAME'], 'string', 'max' => 255],

+ 0 - 0
common/models/UpgradeType.php


+ 10 - 6
common/models/forms/DecPackageForm.php

@@ -20,7 +20,8 @@ class DecPackageForm extends Model
     public $amountPv;
     public $levelId;
     public $packageContent;
-    public $status;
+    public $status;
+	public $storenums;
 
     /**
      * @inheritdoc
@@ -33,7 +34,8 @@ class DecPackageForm extends Model
             [['id'], 'required', 'on'=>'edit'],
             [['id'], 'exist', 'targetClass'=>DeclarationPackage::class, 'targetAttribute'=>'ID'],
             [['amount','amountPv'], 'price'],
-            [['selectedIds'], 'isSelected'],
+            [['selectedIds'], 'isSelected'],
+			[['storenums'],'number'],
         ];
     }
 
@@ -47,7 +49,8 @@ class DecPackageForm extends Model
             'amount' => '套餐金额',
             'amountPv' => '套餐BV',
             'levelId' => '所属报单级别',
-            'packageContent' => '套餐详情',
+            'packageContent' => '套餐详情',
+			'storenums' => '套餐库存',
         ];
     }
 
@@ -59,8 +62,8 @@ class DecPackageForm extends Model
     {
         $parentScenarios =  parent::scenarios();
         $customScenarios = [
-            'add' => ['packageName','packageNo','amount','amountPv','levelId', 'packageContent'],
-            'edit' => ['id','packageName','packageNo','amount','amountPv', 'levelId', 'packageContent'],
+            'add' => ['packageName','packageNo','amount','amountPv','levelId', 'packageContent','storenums'],
+            'edit' => ['id','packageName','packageNo','amount','amountPv', 'levelId', 'packageContent','storenums'],
             'changeStatus' => ['selectedIds', 'status'],
         ];
         return array_merge($parentScenarios, $customScenarios);
@@ -104,7 +107,8 @@ class DecPackageForm extends Model
         $model->AMOUNT = $this->amount;
         $model->PV = $this->amountPv;
         $model->LEVEL_ID = $this->levelId;
-        $model->PACKAGE_CONTENT = $this->packageContent;
+        $model->PACKAGE_CONTENT = $this->packageContent;
+		$model->STORE_NUMS = $this->storenums;
         if($model->save()){
             return $model;
         } else {

+ 66 - 2
common/models/forms/DeclarationLoopForm.php

@@ -5,7 +5,10 @@ use common\components\Model;
 use common\helpers\Form;
 use common\models\UserBind;
 use yii\base\Exception;
-use yii\helpers\Json;
+use yii\helpers\Json;
+use common\models\DeclarationPackage;
+use common\helpers\Date;
+use common\models\ShopGoods;
 
 /**
  * Login form
@@ -111,7 +114,68 @@ class DeclarationLoopForm extends Model
             $model = new DeclarationForm();
             $model->scenario = $this->scenario;
             $model->allData = $this->data;
-            foreach ($this->data as $value){
+            foreach ($this->data as $value){
+				
+				/**
+				                 * 2022-04-29
+				                 * York
+				                 * 获取商品套餐信息
+				                 */
+				                if (isset($value['packageId']) && $value['packageId']){
+				
+				
+				                    $packagedata = DeclarationPackage::findOneAsArray('ID=:ID', [':ID' => $value['packageId']]);
+				                    //var_dump($packagedata['ID']);
+				                    if($packagedata['STORE_NUMS']>0){
+				                        $data =  DeclarationPackage::find()->where(['ID'=> $packagedata['ID'] ])->one();
+				                        $goods_store_nums = $data->STORE_NUMS - 1;
+				                        $data->STORE_NUMS = $goods_store_nums;
+				                        $data->update();
+				//                        var_dump('输出一下数量');
+				//                        var_dump($goods_store_nums);
+				                        //库存为0下架套餐
+				                        if ($goods_store_nums <= 0){
+				                            $data->STATUS = 0;
+				                            $data->UPDATED_AT = Date::nowTime();
+				//                            var_dump('购买后套餐库存为0 下架拉');
+				                        }
+				
+				                    }else{
+				                        throw new Exception($packagedata['PACKAGE_NAME'].'库存不足');
+				                    }
+				
+				
+				                }
+								
+								if (count($value['goodsId']) > 0 && (count($value['goodsId']) == count($value['goodsNum']))){
+								    for ($i=0;$i<count($value['goodsId']);$i++){
+								        $goods = ShopGoods::findOneAsArray('ID=:ID',[':ID'=> $value['goodsId'][$i]]);
+								        if ($goods['STATUS'] == 1 ){
+								            if($goods['STORE_NUMS'] >= $value['goodsNum'][$i]){
+								                $data = ShopGoods::find()->where(['ID' => $value['goodsId'][$i]])->one();
+								                $goods_store_nums = $data->STORE_NUMS - $value['goodsNum'][$i];
+								                $data->STORE_NUMS = $goods_store_nums;
+								                $data->update();
+								                if($goods_store_nums <= 0){
+								                    $data->STATUS = 0;
+								                    $data->UPDATED_AT = Date::nowTime();
+								                    $data->update();
+								                }
+								            }else{
+								                throw new Exception($goods['GOODS_NAME'].'商品库存不足');
+								            }
+								
+								        }else{
+								            throw new Exception($goods['GOODS_NAME'].'商品已下架');
+								        }
+								
+								    }
+								
+								}
+				
+				
+				
+				
                 if(is_array($value)){
                     foreach($value as $key=>$decFormData){
                         $model->$key = $decFormData;

+ 32 - 0
common/models/forms/DeclarationUpgradeForm.php

@@ -274,6 +274,38 @@ class DeclarationUpgradeForm extends Model
                 $transaction->rollBack();
                 throw new Exception(Form::formatErrorsForApi($orderModel->getErrors()));
             }
+			
+			/**
+			  * 2022-05-10
+			  * York
+			  */
+			 foreach ($this->goodsNum as $k => $v) {
+			     if ($v) {
+			         $goods = ShopGoods::findOneAsArray('ID=:ID',[':ID'=> $this->goodsId[$k]]);
+			
+			         $storenums = $goods['STORE_NUMS'] - $this->goodsNum[$k];
+			         if($goods['STATUS']==1){
+			            if($goods['STORE_NUMS'] >=$this->goodsNum[$k]){
+			                $data = ShopGoods::find()->where(['ID' => $this->goodsId[$k]])->one();
+			                $data->STORE_NUMS = $storenums;
+			                $data->update();
+			                if ($storenums==0){
+			                    $data->STATUS = 0;
+			                    $data->UPDATED_AT = Date::nowTime();
+			                    $data->update();
+			                }
+			            }else{
+			                throw new Exception("商品".$goods['GOODS_NAME']."库存不足");
+			            }
+			         }else{
+			             throw new Exception("商品".$goods['GOODS_NAME']."已下架");
+			         }
+			     }
+			 }
+			// exit();
+
+
+
 
             // 加入商品到订单商品表
             foreach($this->_orderGoods as $key=>$value){

+ 70 - 4
common/models/forms/OrderForm.php

@@ -73,8 +73,8 @@ class OrderForm extends Model
     public function rules()
     {
         return [
-            [['sn', 'expressCompany', 'orderTrackNo', 'status', 'remark','type','addressId','payType','goodsId','goodsNum', 'payPassword','userName','consignee','acceptMobile','province','city','county','detailaddress','email'], 'trim'],
-            [['sn', 'expressCompany', 'orderTrackNo', 'status', 'remark','type','addressId','payType','goodsId','goodsNum', 'payPassword','userName','consignee','acceptMobile','province','city','county','detailaddress','email'], 'required'],
+            [['sn', 'expressCompany', 'orderTrackNo', 'status', 'remark','type','addressId','payType','goodsId','goodsNum', 'payPassword','userName','consignee','acceptMobile','province','city','county','detailaddress'/*,'email'*/], 'trim'],
+            [['sn', 'expressCompany', 'orderTrackNo', 'status', 'remark','type','addressId','payType','goodsId','goodsNum', 'payPassword','userName','consignee','acceptMobile','province','city','county','detailaddress'/*,'email'*/], 'required'],
             [['status'], 'isStatus'],
             [['addressId'], 'isAddress'],
             [['payType'], 'isPayType'],
@@ -487,7 +487,39 @@ class OrderForm extends Model
             $result = $this->getBalanceAdequate($this->payType, $this->_payAmount);
             if ($result['code'] !== 200) {
                 throw new Exception($result['message']);
-            }
+            }
+			
+			
+			
+			/**
+			             * 2022-04-28
+			             * York
+			             * 支付后减少库存
+			             */
+			            foreach ($this->goodsNum as $k => $v){
+			                if ($v){
+			                    $goods = ShopGoods::findOneAsArray('ID=:ID AND STATUS=1',[':ID'=> $ids[$k]]);
+			                    if ($goods['STORE_NUMS'] >= $this->goodsNum[$k]){
+			                        $data = ShopGoods::find()->where(['ID' => $ids[$k]])->one();
+			                        $goods_store_nums = $data->STORE_NUMS - $this->goodsNum[$k];
+			                        $data->STORE_NUMS = $goods_store_nums;
+			                        $data->update();
+			                        //下单后库存小于等于0 商品下架
+			                        if($goods_store_nums <= 0){
+			                            $data->STATUS = 0;
+			                            $data->UPDATED_AT = Date::nowTime();
+			                            $data->update();
+			
+			                        }
+			                    }else{
+			                        throw new Exception($goods['GOODS_NAME'].'库存不足,无法购买商品');
+			
+			                    }
+			
+			
+			                }
+			            }
+			//                exit();
 
             //写入订单
             if (!$orderResult = $this->addOrder()) {
@@ -706,7 +738,41 @@ class OrderForm extends Model
                 if ($this->_payAmount > Balance::getBalanceReconsumePoints($loginUserId)) {
                     throw new Exception('复消积分不足,无法购买商品');
                 }
-            }
+            }
+			
+			
+			
+			/**
+			             * 2022-04-28
+			             * York
+			             * 支付后减少库存
+			             */
+			            foreach ($this->goodsNum as $k => $v){
+			                if ($v){
+			                    $goods = ShopGoods::findOneAsArray('ID=:ID AND STATUS=1',[':ID'=> $ids[$k]]);
+			                    if ($goods['STORE_NUMS'] >= $this->goodsNum[$k]){
+			                        $data = ShopGoods::find()->where(['ID' => $ids[$k]])->one();
+			                        $goods_store_nums = $data->STORE_NUMS - $this->goodsNum[$k];
+			                        $data->STORE_NUMS = $goods_store_nums;
+			                        $data->update();
+			                        //下单后库存小于等于0 商品下架
+			                        if($goods_store_nums <= 0){
+			                            $data->STATUS = 0;
+			                            $data->UPDATED_AT = Date::nowTime();
+			                            $data->update();
+			
+			                        }
+			                    }else{
+			                        throw new Exception($goods['GOODS_NAME'].'库存不足,无法购买商品');
+			
+			                    }
+			
+			
+			                }
+			            }
+			//                exit();
+			
+			
             //写入订单
             if (!$orderResult = $this->addUserOrder()) {
                 throw new Exception(Form::formatErrorsForApi($orderResult->getErrors()));

+ 0 - 0
composer.json


+ 0 - 0
composer.lock


+ 0 - 0
console/config/.gitignore


+ 0 - 0
console/config/bootstrap.php


+ 0 - 0
console/config/main.php


+ 0 - 0
console/config/params.php


+ 0 - 0
console/controllers/.gitkeep


+ 0 - 0
console/controllers/AtlasController.php


+ 0 - 0
console/controllers/BaseController.php


+ 0 - 0
console/controllers/BonusController.php


+ 0 - 0
console/controllers/ChangeNetController.php


+ 0 - 0
console/controllers/ConfigController.php


+ 0 - 0
console/controllers/DecController.php


+ 0 - 0
console/controllers/FinanceController.php


+ 0 - 0
console/controllers/FixNetController.php


Some files were not shown because too many files changed in this diff