Commit 1aa21c25 by 杨昕

优化后台用户登录

parent 5ac46a41
Pipeline #14720 passed with stages
in 3 minutes 8 seconds
...@@ -47,26 +47,41 @@ class LoginController extends Controller ...@@ -47,26 +47,41 @@ class LoginController extends Controller
if (!$request->username) { if (!$request->username) {
throw new ControllerException(400, '昵称必须填写'); throw new ControllerException(400, '昵称必须填写');
} }
$len = strlen($request->username);
if ($len < 5){
throw new \Exception('用户名称长度不能小于5个字符');
}
/** /**
* 用户名称是有四部分组成,姓名-新账号-旧账号-mis_uid * 用户名称是有三部分组成,姓名-新账号-旧账号
*/ * user用户名称有两种类型的账号,早期账号用户名称只有员工旧账户,二期项目用户名称由三部分组成
**/
$user = UserModel::where('name', 'regexp', '/^.*?'.$request->username.'/')->first(); $user = UserModel::where('name', 'regexp', '/^.*?'.$request->username.'/')->first();
if (!empty($user)){ if (!empty($user)){
//1.处理二期之后新用户名称
$temp = explode("-",$user["name"]);
if (count($temp)>1){
if (!in_array($request->username,array_slice($temp,1))){
throw new \Exception("用户名或者密码有误");
}
}else{
if ($request->username != $user->name){
throw new \Exception("用户名或者密码有误");
}
}
if (md5($request->password) != $user->password ){ if (md5($request->password) != $user->password ){
throw new \Exception('用户名或者密码有误'); throw new \Exception('用户名或者密码有误');
} }
//为了媒资新旧账号统一,需要以员工mis编号作为用户唯一标识符
if (!$user->mis_uid){ if (!$user->mis_uid){
$request->replace(array_merge($request->all(),["staffNo"=>$request->username])); $request->replace(array_merge($request->all(),["staffNo"=>$request->username]));
/**
* 获取mis用户信息
*/
$userInfo = UserModel::getMisInfo($request);
#获取mis用户信息
$userInfo = UserModel::getMisInfo($request);
$userid = $userInfo['userId']; $userid = $userInfo['userId'];
$flag = UserModel::where("_id",$user->_id)->update(['mis_uid'=>$userid]); $flag = UserModel::where("_id",$user->_id)->update(['mis_uid'=>$userid]);
...@@ -74,12 +89,11 @@ class LoginController extends Controller ...@@ -74,12 +89,11 @@ class LoginController extends Controller
LogModel::addlog(['更新用户mis_uid失败'=>json_encode(['mis_uid'=>$userid])]); LogModel::addlog(['更新用户mis_uid失败'=>json_encode(['mis_uid'=>$userid])]);
throw new \Exception("更新用户mis_uid失败"); throw new \Exception("更新用户mis_uid失败");
} }
} }
}else{ }else{
//新用户第一次登录,直接往媒资注册
$request->replace(array_merge($request->all(),["staffNo"=>$request->username])); $request->replace(array_merge($request->all(),["staffNo"=>$request->username]));
$userInfo = UserModel::getMisInfo($request); $userInfo = UserModel::getMisInfo($request);
$mis_uid = $userInfo["userId"]; $mis_uid = $userInfo["userId"];
...@@ -92,7 +106,7 @@ class LoginController extends Controller ...@@ -92,7 +106,7 @@ class LoginController extends Controller
} }
$data_arr = [ $data_arr = [
'name' => $userInfo['nickName'], 'name' => $userInfo['nickName'],//包含了三部分数据,姓名-新账号-旧账号
'password' => md5($request->password), 'password' => md5($request->password),
'organization_id' => 0, 'organization_id' => 0,
'status' => 0, 'status' => 0,
...@@ -110,8 +124,6 @@ class LoginController extends Controller ...@@ -110,8 +124,6 @@ class LoginController extends Controller
} }
Auth::login($user); Auth::login($user);
return $user; return $user;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment