ComLogic.php 1.4 KB
<?php

namespace App\Http\Logic\Bside;

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){
        #TODO 查询mobile, 验证密码 true->return; false-> 查询sms发送记录 验证code
        $userModel = new UserModel();
        if($param['login_method'] == 1){
            //密码加密
            $param['password'] = base64_encode(md5($param['password']));
            $info = $userModel->read(['mobile'=>$param['mobile'],'password'=>$param['password']], ['id','mobile','role_id','project_id','name']);
        }else{
            //TODO::验证验证码是否正确
            $info = $userModel->read(['mobile'=>$param['mobile']],['id','mobile','role_id','project_id','name']);
        }
        if(empty($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 = $info;
        $rs = $userModel->edit(['token'=>$token],['id'=>$info['id']]);
        if($rs === false){
            return false;
        }
        return $data;
    }
}