Переглянути джерело

会员购物、修改个人信息

kevin_zhangl 3 роки тому
батько
коміт
f8c36914fb

+ 80 - 0
common/helpers/user/Info.php

@@ -13,6 +13,8 @@ use common\components\ActiveQuery;
 use common\components\ActiveRecord;
 use common\helpers\Cache;
 use common\helpers\Tool;
+use common\models\BaUser;
+use common\models\BaUserInfo;
 use common\models\Config;
 use common\models\PerfMonth;
 use common\models\PerfPeriod;
@@ -631,4 +633,82 @@ class Info {
         if ($data && $data['IS_UNION'] == 1) return true;
         return false;
     }
+
+    /**
+     * 获取用户ID
+     * @param $userName
+     * @return mixed
+     */
+    public static function getBaUserIdByUserName($userName) {
+        $user = BaUserInfo::findOneAsArray('USER_NAME=:USER_NAME AND DELETED=0', [':USER_NAME' => $userName], 'USER_ID');
+        return $user ? $user['USER_ID'] : null;
+    }
+
+    /**
+     * 获取会员名通过ID
+     * @param $userId
+     * @return mixed|null
+     */
+    public static function getBaUserNameByUserId($userId) {
+        $user = BaUserInfo::findOneAsArray('USER_ID=:USER_ID AND DELETED=0', [':USER_ID' => $userId], 'USER_NAME');
+        return $user ? $user['USER_NAME'] : null;
+    }
+
+    /**
+     * 获取用户EMAIL
+     * @param $userName
+     * @return mixed
+     */
+    public static function getBaEmailByUserId($userId) {
+        $user = BaUserInfo::findOneAsArray('USER_ID=:USER_ID AND DELETED=0', [':USER_ID' => $userId], 'USER_NAME');
+        return $user ? $user['EMAIL'] : null;
+    }
+
+    /**
+     * 获取会员姓名通过ID
+     * @param $userId
+     * @return null
+     */
+    public static function getBaUserRealNameByUserId($userId) {
+        $user = BaUser::findOneAsArray('ID=:ID AND DELETED=0', [':ID' => $userId], 'REAL_NAME');
+        return $user ? $user['REAL_NAME'] : null;
+    }
+
+    /**
+     * 获取会员邮箱通过ID
+     * @param $userId
+     * @return null
+     */
+    public static function getBaUserEmailByUserId($userId) {
+        $user = BaUser::findOneAsArray('ID=:ID AND DELETED=0', [':ID' => $userId], 'EMAIL');
+        return $user ? $user['EMAIL'] : null;
+    }
+
+    /**
+     * 获取手机号通过ID
+     * @param $userId
+     * @return null
+     */
+    public static function getBaUserMobileByUserId($userId) {
+        $user = BaUser::findOneAsArray('ID=:ID AND DELETED=0', [':ID' => $userId], 'MOBILE');
+        return $user ? $user['MOBILE'] : null;
+    }
+
+    /**
+     * 通过用户ID获取用户的编号和名称
+     * @param $userId
+     * @return array|null
+     */
+    public static function getBaBaseUserById($userId) {
+        return BaUser::findOneAsArray('ID=:ID', [':ID' => $userId], 'ID,USER_NAME,REAL_NAME');
+    }
+
+    /**
+     * 通过用户ID获取用户的编号和名称
+     * @param $username
+     * @return array|null
+     */
+    public static function getBaBaseUserByUserName($username) {
+        return BaUser::findOneAsArray('USER_NAME=:USER_NAME', [':USER_NAME' => $username]);
+    }
 }

+ 1 - 1
common/models/BaOrder.php

@@ -151,7 +151,7 @@ class BaOrder extends \common\components\ActiveRecord
         }
 
         $periodsStr = implode(",", $periods);
-        $orders = Order::find()->where("USER_ID = :USER_ID AND PERIOD_NUM IN ($periodsStr)", [':USER_ID' => $userId]);
+        $orders = BaOrder::find()->where("USER_ID = :USER_ID AND PERIOD_NUM IN ($periodsStr)", [':USER_ID' => $userId]);
         return $orders;
     }
 }

+ 5 - 5
common/models/forms/BaApproachOrderForm.php

@@ -19,6 +19,7 @@ use common\models\BaApproachOrderGoods;
 use common\models\BaOrder;
 use common\models\BaOrderGoods;
 use common\models\BaReceiveAddress;
+use common\models\BaUser;
 use common\models\DealType;
 use common\models\DecLevelLog;
 use common\models\DecOrder;
@@ -180,8 +181,7 @@ class BaApproachOrderForm extends Model
      * @param $params
      */
     public function validatePassword($attribute, $params) {
-        // TODO
-        if (!User::validatePayPassword(\Yii::$app->user->id, $this->payPassword)) {
+        if (!BaUser::validatePayPassword(\Yii::$app->user->id, $this->payPassword)) {
             $this->addError($attribute, 'The payment password is incorrect');//支付密码不正确
         }
     }
@@ -402,9 +402,9 @@ class BaApproachOrderForm extends Model
         $nowCalcMonth = $periodObj->getYearMonth($nowPeriodNum);
 
         $userId = \Yii::$app->user->id;
-        $userName = Info::getUserNameByUserId($userId); // TODO
-        $userMobile = Info::getUserMobileByUserId($userId); // TODO
-        $userEmail = Info::getUserEmailByUserId($userId); // TODO
+        $userName = Info::getBaUserNameByUserId($userId);
+        $userMobile = Info::getBaUserMobileByUserId($userId);
+        $userEmail = Info::getBaUserEmailByUserId($userId);
 
         // 加入订单信息
         if ($this->_address['PROVINCE'] != 1) {

+ 35 - 0
frontendApi/modules/v1/controllers/UserController.php

@@ -576,4 +576,39 @@ class UserController extends BaseController {
 
         return static::notice('Illegal request', 400); // 非法请求
     }
+
+    /**
+     * 修改登录密码
+     */
+    public function actionBaPassword(){
+        if(\Yii::$app->request->isPost) {
+            $form = new BaUserForm();
+            $form->scenario = 'modifyPassword';
+            $post = \Yii::$app->request->post();
+            if($form->load($post, '') && $result = $form->modifyPassword()){
+                return static::notice('Password modified successfully');//密码修改成功
+            } else {
+                return static::notice(Form::formatErrorsForApi($form->getErrors()), 400);
+            }
+        }
+        return static::notice('Illegal request', 400); // 非法请求
+    }
+
+    /**
+     * 修改支付密码
+     */
+    public function actionBaPayPassword(){
+        if(\Yii::$app->request->isPost){
+            $form = new BaUserForm();
+            $form->scenario = 'modifyPasswordPay';
+            $post = \Yii::$app->request->post();
+            $form->userId = \Yii::$app->user->id;
+            if($form->load($post, '') && $result = $form->modifyPasswordPay()){
+                return static::notice('Payment password modified successfully');  // 支付密码修改成功
+            } else {
+                return static::notice(Form::formatErrorsForApi($form->getErrors()), 400);
+            }
+        }
+        return static::notice('Illegal request', 400); // 非法请求
+    }
 }

+ 1 - 1
frontendEle/src/views/shop/ba-order-list.vue

@@ -65,7 +65,7 @@ export default {
         },
         // 列表页合并
         objectSpanMethod(obj) {
-            if (obj.columnIndex > 7) {
+            if (obj.columnIndex >= 7) {
                 // ⼆维数组存储的数据取出
                 let _row = this.spanArr[obj.rowIndex];
                 let _col = _row > 0 ? 1 : 0;