|
|
@@ -75,4 +75,45 @@ class Login extends Manager
|
|
|
// 表单令牌
|
|
|
return json_send(['code' => 'success', 'msg' => '退出成功', 'data' => '']);
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 手机号码登录 /manager/login/mobile
|
|
|
+ * @author 唐远望
|
|
|
+ * @version 1.0
|
|
|
+ * @date 2025-12-04
|
|
|
+ * @param string mobile 手机号码
|
|
|
+ * @param string password 登录密码
|
|
|
+ *
|
|
|
+ */
|
|
|
+ public function mobile(Request $Request, AdminUser $AdminUser, AuthRule $AuthRule)
|
|
|
+ {
|
|
|
+ // 验证规则
|
|
|
+ $Request->scene('mobile')->validate();
|
|
|
+ // 接收数据
|
|
|
+ $mobile = $Request->input('mobile', '');
|
|
|
+ // 接收数据
|
|
|
+ $password = $Request->input('password', '');
|
|
|
+ // 查询用户
|
|
|
+ $admin = $AdminUser->where('phone', $mobile)->first(['uid', 'username', 'phone', 'status', 'password', 'insert_time', 'update_time']);
|
|
|
+ // 用户不存在
|
|
|
+ if (!$admin || $admin['status']) return json_send(['code' => 'error', 'msg' => '密码错误或账号不存在']);
|
|
|
+ // 用户不存在
|
|
|
+ if ($admin['status']) return json_send(['code' => 'error', 'msg' => '该账号已停用']);
|
|
|
+ // 转数组
|
|
|
+ $admin = $admin->toArray();
|
|
|
+ // 比对密码
|
|
|
+ if (md5($password) != $admin['password']) return json_send(['code' => 'error', 'msg' => '密码错误或账号不存在']);
|
|
|
+ // 登录
|
|
|
+ $accessToken = $AdminUser->Login($admin['uid'], 'manager');
|
|
|
+ // 比对密码
|
|
|
+ if (isset($accessToken['error'])) return json_send(['code' => 'error', 'msg' => '登录失败', 'data' => $accessToken['data']]);
|
|
|
+ // 获取权限列表
|
|
|
+ $accessToken['username'] = $admin['username'];
|
|
|
+ // 获取权限列表
|
|
|
+ $accessToken['auth_rules'] = $AuthRule->getAuthList($admin['uid'], 'manager');;
|
|
|
+ // 表单令牌
|
|
|
+ return json_send(['code' => 'success', 'msg' => '登录成功', 'data' => $accessToken]);
|
|
|
+
|
|
|
+ }
|
|
|
}
|