Parcourir la source

添加密码登录

lyh il y a 2 ans
Parent
commit
7882f60d92
3 fichiers modifiés avec 32 ajouts et 11 suppressions
  1. 28 11
      app/Services/Api/MemberService.php
  2. 2 0
      resources/lang/en/api.php
  3. 2 0
      resources/lang/zh-cn/api.php

+ 28 - 11
app/Services/Api/MemberService.php

@@ -515,21 +515,29 @@ class MemberService extends BaseService
         $code = isset($params['code']) ? $params['code'] : '';
         $scene = isset($params['scene']) ? $params['scene'] : '';
         $appSources = isset($params['app_sources']) ? $params['app_sources'] : '';
+        $password = isset($params['password']) ? $params['password'] : '';
         if (empty($params) || empty($email) || empty($scene) || $code <= 0) {
             $this->error = 2014;
             return false;
         }
 
-        // 验证码
-        if (!EmailService::make()->check($email, $code, $scene)) {
-            $this->error = EmailService::make()->getError();
-            return false;
-        }
-
         // 验证是否注册,没有则注册
         $data = $this->model->where(['email' => $email, 'mark' => 1])->select(['id', 'username','point_id', 'parent_id', 'code', 'status'])->first();
         $data = $data ? $data->toArray() : [];
 
+        if(!empty($password)){
+            if(get_password($password) != $data['password']){
+                $this->error = 3108;
+                return false;
+            }
+        }else{
+            // 验证码
+            if (!EmailService::make()->check($email, $code, $scene)) {
+                $this->error = EmailService::make()->getError();
+                return false;
+            }
+        }
+
         $userId = isset($data['id']) ? $data['id'] : 0;
         $status = isset($data['status']) ? $data['status'] : 0;
         if(empty($data) || $userId<=0){
@@ -592,16 +600,25 @@ class MemberService extends BaseService
             return false;
         }
 
-        // 验证码
-        if (!SmsService::make()->check($mobile, $code, $scene)) {
-            $this->error = SmsService::make()->getError();
-            return false;
-        }
+
 
         // 验证是否注册,没有则注册
         $data = $this->model->where(['mobile' => $mobile, 'mark' => 1])->select(['id', 'username','point_id','mobile', 'parent_id', 'code', 'status'])->first();
         $data = $data ? $data->toArray() : [];
 
+        if(!empty($password)){
+            if(get_password($password) != $data['password']){
+                $this->error = 3108;
+                return false;
+            }
+        }else{
+            // 验证码
+            if (!SmsService::make()->check($mobile, $code, $scene)) {
+                $this->error = SmsService::make()->getError();
+                return false;
+            }
+        }
+
         $userId = isset($data['id']) ? $data['id'] : 0;
         $status = isset($data['status']) ? $data['status'] : 0;
         if(empty($data) || $userId<=0){

+ 2 - 0
resources/lang/en/api.php

@@ -246,5 +246,7 @@ return [
     '打赏推荐奖励通知'=>'打赏推荐奖励通知',
     '打赏推荐奖励通知内容'=>'您在:time(UTC+8)获得了主播:live_name的打赏奖励:score 待返积分',
 
+    '3108'=> 'login password validate fail',
+
 
 ];

+ 2 - 0
resources/lang/zh-cn/api.php

@@ -262,6 +262,8 @@ return [
     '打赏推荐奖励通知内容'=>'您在:time(UTC+8)获得了主播:live_name的打赏奖励:score 待返积分',
 
 
+    '3108'=> '登录密码错误',
+