作者 liyuhang

gx

<?php
namespace App\Http\Logic\Bside;
use App\Models\ProjectRole as ProjectRoleModel;
use App\Models\User as UserModel;
use Illuminate\Support\Facades\Cache;
class ComLogic extends BaseLogic
{
/***
* @name :登录
* @return void
* @author :liyuhang
* @method
*/
public function login($param){
$userModel = new UserModel();
if(!isset($param['login_method'])){
//密码加密
$param['password'] = base64_encode(md5($param['password']));
$info = $userModel->read(['mobile'=>$param['mobile'],'password'=>$param['password'],'status'=>0], ['*']);
}else{
//TODO::验证验证码是否正确
$info = $userModel->read(['mobile'=>$param['mobile']],['*']);
}
if(empty($info)){
return false;
}
//当前用户角色是否被禁用
$projectRoleModel = new ProjectRoleModel();
$role_info = $projectRoleModel->read(['id'=>$info['role_id'],'status'=>0]);
if(empty($role_info)){
return false;
}
//验证码登录
if(isset($info['token']) && !empty($info['token'])){
//清除上一次用户缓存
Cache::pull($info['token']);
}
//生成新token
$token = md5(uniqid().$info['id']);
//存储缓存
Cache::add($token,$info);
//更新数据库
$data = [
'id'=>$info['id'],
'mobile'=>$info['mobile'],
'name'=>$info['name']
];
$rs = $userModel->edit(['token'=>$token],['id'=>$info['id']]);
if($rs === false){
return false;
}
return $data;
}
}