作者 liyuhang

gx

1 -<?php  
2 -  
3 -namespace App\Http\Logic\Bside;  
4 -  
5 -use App\Models\ProjectRole as ProjectRoleModel;  
6 -use App\Models\User as UserModel;  
7 -use Illuminate\Support\Facades\Cache;  
8 -  
9 -class ComLogic extends BaseLogic  
10 -{  
11 - //统一设置  
12 - protected $casts = [  
13 - 'created_at' => 'datetime:Y-m-d H:i:s',  
14 - 'updated_at' => 'datetime:Y-m-d H:i:s',  
15 - ];  
16 - /***  
17 - * @name :登录  
18 - * @return void  
19 - * @author :liyuhang  
20 - * @method  
21 - */  
22 - public function login($param){  
23 - $userModel = new UserModel();  
24 - if(!isset($param['login_method'])){  
25 - //密码加密  
26 - $param['password'] = base64_encode(md5($param['password']));  
27 - $info = $userModel->read(['mobile'=>$param['mobile'],'password'=>$param['password'],'status'=>0], ['*']);  
28 - }else{  
29 - //TODO::验证验证码是否正确  
30 - $info = $userModel->read(['mobile'=>$param['mobile']],['*']);  
31 - }  
32 - if(empty($info)){  
33 - return false;  
34 - }  
35 - //当前用户角色是否被禁用  
36 - $projectRoleModel = new ProjectRoleModel();  
37 - $role_info = $projectRoleModel->read(['id'=>$info['role_id'],'status'=>0]);  
38 - if(empty($role_info)){  
39 - return false;  
40 - }  
41 - //验证码登录  
42 - if(isset($info['token']) && !empty($info['token'])){  
43 - //清除上一次用户缓存  
44 - Cache::pull($info['token']);  
45 - }  
46 - //生成新token  
47 - $token = md5(uniqid().$info['id']);  
48 - //存储缓存  
49 - Cache::add($token,$info);  
50 - $rs = $userModel->edit(['token'=>$token],['id'=>$info['id']]);  
51 - if($rs === false){  
52 - return false;  
53 - }  
54 - return $info;  
55 - }  
56 -}