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

Merge branch 'develop' of http://16.162.42.175:8014/guanli/ngds into develop

kevin_zhangl 2 лет назад
Родитель
Сommit
8f65d77720

+ 2 - 0
common/messages/en-US/app.php

@@ -215,6 +215,8 @@ return [
     'brandAmbassadorUpgradeError' => 'Brand Ambassador upgrade error',
     'changeUserStatusError' => 'change user status error',
     'dataFormatError' => 'Data format error',
+    'decUserNameDoesNotExist' => '请输入报单中心编号',
+    'decUserNameIsWrong' => '报单中心编号输入错误',
 
 
 

+ 3 - 1
common/messages/zh-CN/app.php

@@ -219,6 +219,8 @@ return [
     'membersExchangePointPayment' => '会员复销积分兑换',
     'brandAmbassadorUpgradeError' => 'BA会员升级错误',
     'changeUserStatusError' => '修改会员状态错误',
+    'decUserNameDoesNotExist' => '请输入报单中心编号',
+    'decUserNameIsWrong' => '报单中心编号输入错误',
 
 
     # 奖金
@@ -311,4 +313,4 @@ return [
     'invalidParameter' => '无效参数',
     'dataDoesNotExists' => '数据不存在',
 
-];
+];

+ 1 - 1
common/models/ApproachOrder.php

@@ -70,7 +70,7 @@ class ApproachOrder extends \common\components\ActiveRecord
     public function rules()
     {
         return [
-            [['USER_ID', 'USER_NAME', 'ORDER_TYPE', 'CREATE_USER'], 'required'],
+            [['USER_ID',  'ORDER_TYPE', 'CREATE_USER'], 'required'],
             [['ORDER_AMOUNT', 'PV', 'PAY_AMOUNT', 'PAY_PV', 'FREIGHT', 'PAY_FREIGHT'], 'number'],
             [['PAY_AT', 'DELIVERY_STATUS', 'DELIVERY_PERIOD', 'DELIVERY_AT', 'EXPRESS_TYPE', 'PERIOD_NUM', 'STATUS', 'PROVINCE', 'CITY', 'COUNTY', 'CREATED_AT', 'UPDATED_AT', 'IS_DELETE', 'DELETED_AT'], 'integer'],
             [['ID','SN', 'DEC_SN', 'USER_ID', 'ORDER_TRACK_NO','PAY_TYPE'], 'string', 'max' => 32],

+ 1 - 1
common/models/DecOrder.php

@@ -47,7 +47,7 @@ class DecOrder extends \common\components\ActiveRecord
     public function rules()
     {
         return [
-            [['USER_ID', 'TO_USER_ID','REC_USER_ID','CON_USER_ID','DEC_ID', 'TYPE', 'PAID_WALLET', 'PERIOD_NUM', 'P_CALC_MONTH', 'CREATED_AT'], 'required'],
+            [['USER_ID', 'TO_USER_ID','REC_USER_ID','CON_USER_ID',/*'DEC_ID',*/ 'TYPE', 'PAID_WALLET', 'PERIOD_NUM', 'P_CALC_MONTH', 'CREATED_AT'], 'required'],
             [['IS_ADMIN', 'IS_BATCH', 'PERIOD_NUM', 'CALC_MONTH', 'CREATED_AT', 'IS_DEL', 'DELETED_AT'], 'integer'],
             [['DEC_AMOUNT', 'DEC_PV'], 'number'],
             [['ID', 'DEC_SN', 'ORDER_SN', 'USER_ID', 'TO_USER_ID','REC_USER_ID','CON_USER_ID','DEC_ID', 'TYPE', 'UPDATER', 'UPDATED_AT'], 'string', 'max' => 32],

+ 1 - 1
common/models/Order.php

@@ -70,7 +70,7 @@ class Order extends \common\components\ActiveRecord
     public function rules()
     {
         return [
-            [['USER_ID', 'USER_NAME', 'ORDER_TYPE', 'CREATE_USER'/*, 'EMAIL'*/], 'required'],
+            [['USER_ID', 'ORDER_TYPE', 'CREATE_USER'/*, 'EMAIL'*/], 'required'],
             [['ORDER_AMOUNT', 'PV', 'PAY_AMOUNT', 'PAY_PV', 'FREIGHT', 'PAY_FREIGHT', 'ORDER_AMOUNT_STANDARD', 'PAY_AMOUNT_STANDARD', 'EXCHANGE_RATE'], 'number'],
             [['PAY_AT', 'DELIVERY_STATUS', 'DELIVERY_PERIOD', 'DELIVERY_AT', 'EXPRESS_TYPE', 'PERIOD_NUM', 'STATUS', 'PROVINCE', /*'CITY', 'COUNTY', */'CREATED_AT', 'UPDATED_AT', 'IS_DELETE', 'DELETED_AT'], 'integer'],
             [['ID','SN', 'DEC_SN', 'USER_ID', 'ORDER_TRACK_NO','PAY_TYPE'], 'string', 'max' => 32],

+ 2 - 4
common/models/forms/ApproachDeclarationForm.php

@@ -127,10 +127,10 @@ class ApproachDeclarationForm extends Model
     {
         return [
             [['type','decLv','decWay','packageId', 'insertUserName', 'realName',/* 'insertUserIdCard',*/ 'mobile', 'address', 'openBank', 'bankAddress', 'bankNo','bankProvince','bankCity','bankCounty','consignee','acceptMobile','province','city','county','cityName','lgaName','decUserName', 'conUserName', 'recUserName', 'location'], 'trim'],
-            [['type','decLv','decWay','insertUserName',/* 'insertUserIdCard',*/'password','payPassword','decUserName'], 'required'],
+            [['type','decLv','decWay','insertUserName',/* 'insertUserIdCard',*/'password','payPassword'], 'required'],
             [['type'], 'isType', 'on'=>['userDec', 'canDec']],
             [['insertUserName'], 'isCanAddUser'],
-            [['decUserName', 'decType'], 'issetDec'],
+//            [['decUserName', 'decType'], 'issetDec'],
             [['conUserName'], 'isConUserName'],
             [['recUserName'], 'isRecUserName'],
             [['location'], 'isLocation'],
@@ -770,11 +770,9 @@ class ApproachDeclarationForm extends Model
         $user->VERIFIED = 1;
         $user->VERIFIED_AT = Date::nowTime();
         $user->IS_RECHARGE = 1;
-
         if (!$user->save()) {
             throw new Exception(Form::formatErrorsForApi($user->getErrors()));
         }
-
         $this->_insertUserId = $user->ID;
         $userForm = new UserForm();
         $this->_userForm = $userForm;

+ 0 - 3
common/models/forms/ApproachDeclarationLoopForm.php

@@ -177,7 +177,6 @@ class ApproachDeclarationLoopForm extends Model
                     }
 
                 }
-				
                 if (is_array($value)) {
                     foreach($value as $key=>$decFormData){
                         $model->$key = $decFormData;
@@ -201,9 +200,7 @@ class ApproachDeclarationLoopForm extends Model
                     throw new Exception(Yii::t('app', 'reportFormatIncorrect'));
                 }
             }
-
             $transaction->commit();
-
             return $result;
         } catch (\Exception $e){
             $transaction->rollBack();

+ 4 - 2
common/models/forms/ApproachOrderForm.php

@@ -1,6 +1,7 @@
 <?php
 namespace common\models\forms;
 
+use Codeception\Module\Db;
 use common\helpers\Cache;
 use common\helpers\Date;
 use common\components\Model;
@@ -51,6 +52,7 @@ class ApproachOrderForm extends Model
     public $email;
 
     public $userName;
+    public $decUserName;
     public $consignee;
     public $acceptMobile;
     public $province;
@@ -68,6 +70,7 @@ class ApproachOrderForm extends Model
     private $_orderGoods;
     private $_standardAmount;
     private $_decAmountStandard;
+    private $_userName;
 
     /**
      * @var ApproachOrder
@@ -405,7 +408,6 @@ class ApproachOrderForm extends Model
         if(!$this->validate()){
             return null;
         }
-
         $ids = $this->goodsId;
         $totalAmount = 0;
         $totalPv = 0;
@@ -552,7 +554,7 @@ class ApproachOrderForm extends Model
         $orderModel->DEC_SN = 'DS' . $ordNo;
         $orderModel->ORDER_TYPE = $this->type;
         $orderModel->USER_ID = $userId;
-        $orderModel->USER_NAME = $userName;
+        $orderModel->USER_NAME = $this->decUserName;
         $orderModel->ORDER_AMOUNT = $this->_decAmount;
         $orderModel->PV = $_hasPV;
         $orderModel->PAY_AMOUNT = $this->_payAmount;

+ 3 - 3
common/models/forms/DeclarationForm.php

@@ -123,10 +123,10 @@ class DeclarationForm extends Model
     {
         return [
             [['type','decLv','decWay','packageId', 'insertUserName', 'realName',/* 'insertUserIdCard',*/ 'mobile', 'address', 'openBank', 'bankAddress', 'bankNo','bankProvince','bankCity','bankCounty','consignee','acceptMobile','province','city','county','cityName','lgaName','decUserName', 'conUserName', 'recUserName', 'location'], 'trim'],
-            [['type','decLv','decWay','insertUserName',/* 'insertUserIdCard',*/'password','payPassword','decUserName'], 'required'],
+            [['type','decLv','decWay','insertUserName',/* 'insertUserIdCard',*/'password','payPassword'], 'required'],
             [['type'], 'isType', 'on'=>['userDec', 'canDec']],
             [['insertUserName'], 'isCanAddUser'],
-            [['decUserName'], 'issetDec'],
+//            [['decUserName'], 'issetDec'],
             [['conUserName'], 'isConUserName'],
             [['recUserName'], 'isRecUserName'],
             [['location'], 'isLocation'],
@@ -180,7 +180,7 @@ class DeclarationForm extends Model
     {
         $parentScenarios =  parent::scenarios();
         $customScenarios = [
-            'userDec' => ['type','allData', 'decLv','decWay','insertUserName','password','payPassword', 'realName',/* 'insertUserIdCard',*/ 'mobile', 'address', 'openBank', 'bankAddress', 'bankNo', 'bankProvince','bankCity','bankCounty', 'consignee','acceptMobile','province',/*'city','county',*/ 'conUserName', 'recUserName','decUserName', 'location', 'email'],
+            'userDec' => ['type','allData', 'decLv','decWay','insertUserName','password','payPassword', 'realName',/* 'insertUserIdCard',*/ 'mobile', 'address', 'openBank', 'bankAddress', 'bankNo', 'bankProvince','bankCity','bankCounty', 'consignee','acceptMobile','province',/*'city','county',*/ 'conUserName', 'recUserName',/*'decUserName',*/ 'location', 'email'],
             'canDec' => ['type', 'insertUserName',/* 'insertUserIdCard',*/ 'conUserName', 'recUserName', 'location'],
             'notFull' => ['type', 'insertUserName', 'conUserName', 'recUserName', 'location'],
         ];

+ 2 - 1
common/models/forms/OrderForm.php

@@ -46,6 +46,7 @@ class OrderForm extends Model
     public $email;
 
     public $userName;
+    public $decUserName;
     public $consignee;
     public $acceptMobile;
     public $province;
@@ -712,7 +713,7 @@ class OrderForm extends Model
         $orderModel->DEC_SN = 'DS'.$ordNo;
         $orderModel->ORDER_TYPE = $this->type;
         $orderModel->USER_ID = $userId;
-        $orderModel->USER_NAME = $userName;
+        $orderModel->USER_NAME = $this->decUserName;;
         $orderModel->ORDER_AMOUNT = $this->_decAmount;
         $orderModel->PV = $_hasPV;
         $orderModel->PAY_AMOUNT = $this->_payAmount;

+ 2 - 2
frontendApi/config/menu.php

@@ -39,7 +39,7 @@ return [
         'show'=>1,
         'wiki' => 'memberManagement',
         'child'=>[
-            ['name'=>'Member Welcome Pack', 'class'=>'', 'icon'=>'', 'controller'=>'user', 'action'=>'dec', 'routePath'=>'user/dec', 'show'=>1, 'allow'=>'declarer', 'wiki' => 'welcomePack',], // 会员报单
+            ['name'=>'Member Welcome Pack', 'class'=>'', 'icon'=>'', 'controller'=>'user', 'action'=>'dec', 'routePath'=>'user/dec', 'show'=>1,  'wiki' => 'welcomePack',], // 会员报单
             ['name'=>'Member Repeat Purchase', 'class'=>'', 'icon'=>'', 'controller'=>'user', 'action'=>'reconsume', 'routePath'=>'shop/reconsume', 'show'=>1, 'allow'=>'declarer','wiki' => 'memberRepeatPurchase',],//会员复消
             ['name'=>'Member Upgrade', 'class'=>'', 'icon'=>'', 'controller'=>'user', 'action'=>'dec', 'routePath'=>'user/upgrade', 'show'=>1,'allow'=>'declarer', 'wiki' => 'memberUpgrade',],//会员升级
             ['name'=>'Member Order', 'class'=>'', 'icon'=>'', 'controller'=>'user', 'action'=>'member-order', 'routePath'=>'shop/member-order', 'show'=>1, 'wiki' => 'memberOrder',],//会员订单
@@ -113,4 +113,4 @@ return [
 //            ['name'=>'Reset Password', 'class'=>'', 'icon'=>'', 'controller'=>'user', 'action'=>'password', 'routePath'=>'user/password', 'show'=>1, 'wiki' => 'resetPassword',],//重设密码
         ]
     ],
-];
+];

+ 6 - 6
frontendApi/modules/v1/controllers/BaController.php

@@ -232,7 +232,7 @@ class BaController extends BaseController {
         // 获取系统中的DEC 报单级别配置
         $decConfig = Cache::getDecLevelConfig();
         $userDecInfo = $decConfig[$userDecId]; // 会员的级别具体信息
-        $maxPerfInfo = DeclarationLevel::getMaxDecPref(); 
+        $maxPerfInfo = DeclarationLevel::getMaxDecPref();
         $maxDecId = $maxPerfInfo['ID']; // 级别配置中最高级别ID
         $observe = Config::getConfigByType('observe'); // 获取观察期配置信息
         $observeLimit = $observe['observePeriodLimit']['value']; // 月份限制
@@ -251,7 +251,7 @@ class BaController extends BaseController {
             'IS_OBSERVE' => $isObserve, // 是否是观察期  true为是观察期
             'IS_MAX' => $isMax, // 是否已是最大级别 最大级别不需要判断报单总PV是多少 只展示基本信息
         ];
-        
+
         // 如果是最高级别了,则无需升级
         if ($isMax) {
             return static::notice(['baseInfo' => $userInfo]);
@@ -282,12 +282,12 @@ class BaController extends BaseController {
             // 循环列表,补充升级所需要的补差
             foreach ($userInfo['LEVEL_LIST'] as &$v) {
                 $v['REPAIR_PV'] = $isObserve ? $v['PERF'] - $userInfo['NOW_PERF'] : $v['PERF'];
-            }   
+            }
         }
-        
+
         return static::notice(['baseInfo' => $userInfo]);
     }
-    
+
     // 会员升级管理
     public function actionUpgrade() {
         $isSwitchUpgrade = Config::find()
@@ -576,4 +576,4 @@ class BaController extends BaseController {
 
         return static::notice(Yii::t('app', 'illegalRequest'), 400);
     }
-}
+}

+ 35 - 1
frontendApi/modules/v1/controllers/ShopController.php

@@ -135,7 +135,7 @@ class ShopController extends BaseController {
         $freight = floatval(Cache::getSystemConfig()['freight']['VALUE'] ?? 0);
         // 普通商品免运费阈值.奈拉
         $freeShipping = floatval(Cache::getSystemConfig()['freeShipping']['VALUE'] ?? 0);
-
+        $isDec = User::getEnCodeInfo(\Yii::$app->user->id)['IS_DEC'];
         return static::notice(
             [
                 'payList'=>$payList,
@@ -144,6 +144,7 @@ class ShopController extends BaseController {
                 'sellType' => ShopGoods::getCategoryType(),
                 'freight' => $freight,
                 'freeShipping' => $freeShipping,
+                'isDec' => $isDec,
             ]);
     }
 
@@ -157,6 +158,23 @@ class ShopController extends BaseController {
             $formModel->remark = 'FX';//复销备注
             $post = \Yii::$app->request->post();
             $post['type'] = DeclarationForm::TYPE_FX;
+            $userInfo = User::getEnCodeInfo(\Yii::$app->user->id);
+            if($userInfo['IS_DEC'] == 1 && !empty($post['userName']) && $post['userName'] != $userInfo['USER_NAME']){
+                return static::notice(Yii::t('app', 'stockistDoesNotExist'), 400);
+            }
+            if($post['userName'] && $userInfo['IS_DEC'] == 0){
+                //查询报单编号是否存在
+                $userId = Info::getUserIdByUserName($post['userName']);
+                if(!$userId){
+                    return static::notice(Yii::t('app', 'stockistDoesNotExist'), 400);
+                }
+                $isDec = User::getEnCodeInfo($userId)['IS_DEC'];
+                if(!$isDec){
+                    return static::notice(Yii::t('app', 'decUserNameIsWrong'), 400);
+                }
+            }
+
+            $formModel->decUserName = $post['userName'];
             if ($formModel->load($post, '') && $order = $formModel->add()) {
                 return static::notice($order);
             } else {
@@ -188,6 +206,22 @@ class ShopController extends BaseController {
             $formModel->remark = '复销备注';
             $post = \Yii::$app->request->post();
             $post['type'] = DeclarationForm::TYPE_FX;
+            $userInfo = User::getEnCodeInfo(\Yii::$app->user->id);
+            if($userInfo['IS_DEC'] == 1 && !empty($post['userName']) && $post['userName'] != $userInfo['USER_NAME']){
+                return static::notice(Yii::t('app', 'stockistDoesNotExist'), 400);
+            }
+            //查询报单编号是否存在
+            if($post['userName'] && $userInfo['IS_DEC'] == 0){
+                $userId = Info::getUserIdByUserName($post['userName']);
+                if(!$userId){
+                    return static::notice(Yii::t('app', 'stockistDoesNotExist'), 400);
+                }
+                $isDec = User::getEnCodeInfo($userId)['IS_DEC'];
+                if(!$isDec){
+                    return static::notice(Yii::t('app', 'decUserNameIsWrong'), 400);
+                }
+            }
+            $formModel->decUserName = $post['userName'];
             if ($formModel->load($post, '') && $order = $formModel->add()) {
                 return static::notice($order);
             } else {

+ 6 - 6
frontendApi/modules/v1/controllers/SiteController.php

@@ -246,16 +246,16 @@ class SiteController extends BaseController
         }
 
         if($menu['allow']=='pastBonusSwitch'){
-            $pastBonusSwitch = isset(Cache::getSystemConfig()['pastBonusSwitch']) 
-                ? Cache::getSystemConfig()['pastBonusSwitch']['VALUE'] 
+            $pastBonusSwitch = isset(Cache::getSystemConfig()['pastBonusSwitch'])
+                ? Cache::getSystemConfig()['pastBonusSwitch']['VALUE']
                 : '';
             if($pastBonusSwitch) return false;
         }
 
         if($menu['allow']=='newBonusSwitch'){
-            // ??? 
-            $newBonusSwitch = isset(Cache::getSystemConfig()['newBonusSwitch']) 
-                ? Cache::getSystemConfig()['newBonusSwitch']['VALUE'] 
+            // ???
+            $newBonusSwitch = isset(Cache::getSystemConfig()['newBonusSwitch'])
+                ? Cache::getSystemConfig()['newBonusSwitch']['VALUE']
                 : '';
             if($newBonusSwitch) return false;
         }
@@ -378,4 +378,4 @@ class SiteController extends BaseController
 
         return static::notice($data);
     }
-}
+}

+ 17 - 2
frontendApi/modules/v1/controllers/UserController.php

@@ -385,8 +385,22 @@ class UserController extends BaseController {
         $userName = Info::generateWebUserName('NG',9);
         $redis = \Yii::$app->redis;
         $post = \Yii::$app->request->post();
-
         if (\Yii::$app->request->isPost) {
+            $userInfo = User::getEnCodeInfo(\Yii::$app->user->id);
+            if($userInfo['IS_DEC'] == 1 && !empty($post['decUserName']) && $post['decUserName'] != $userInfo['USER_NAME']){
+                return static::notice(Yii::t('app', 'decUserNameIsWrong'), 400);
+            }
+            if($userInfo['IS_DEC'] == 0 && $post['decUserName']){
+                //查询报单编号是否存在
+                $userId = Info::getUserIdByUserName($post['decUserName']);
+                if(!$userId){
+                    return static::notice(Yii::t('app', 'decUserNameIsWrong'), 400);
+                }
+                $isDec = User::getEnCodeInfo($userId)['IS_DEC'];
+                if(!$isDec){
+                    return static::notice(Yii::t('app', 'decUserNameIsWrong'), 400);
+                }
+            }
             // 根据支付方式区分逻辑
             $payMethod = \Yii::$app->request->post('payType', '');
 
@@ -458,7 +472,7 @@ class UserController extends BaseController {
         // 所有开户行
         $allOpenBank = OpenBank::find()->where('STATUS=1')->orderBy('LIST_ORDER ASC')->asArray()->all();
         if (!$userName) {
-            return static::notice(Yii::t('app', 'failedToGenerateMemberNumber'), 400);
+            return static::notice(Yii::t('app',  'failedToGenerateMemberNumber'), 400);
         }
         //随机码保存在redis中方便进行比对
         $redis->setex('key_'.$userName , 3600 , $userName);
@@ -479,6 +493,7 @@ class UserController extends BaseController {
             'sellType' => ShopGoods::getCategoryType(),
             'categoryType' => ShopGoods::getCategoryType()[0]['id'],
             'userBalance' => $userBalance,
+            'isDec' => $isDec,
         ]);
     }