Browse Source

用户MVC三层

master
xyiege 1 year ago
parent
commit
b6a5d6d4ac
  1. 27
      app/api/controller/Passport.php
  2. 9
      app/api/model/User.php
  3. 37
      app/api/service/UserService.php

27
app/api/controller/Passport.php

@ -0,0 +1,27 @@
<?php
namespace app\api\controller;
use app\api\service\UserService;
use think\Controller;
use think\response\Json;
/**
* 用户账户控制器
* 功能:MVC 中的C,处理用户输入和反馈给用户
*/
class Passport extends ApiController{
/**
* 登录
*/
public function login():Json{
$model = new UserService;
if (($userInfo = $model->login($this->postData())) === false) {
return $this->renderError($model->getError() ?: '登录失败');
}
return $this->renderSuccess([
'userId' => $userInfo['uid'],
'token' => $model->getToken()
], '登录成功');
}
}

9
app/api/model/User.php

@ -0,0 +1,9 @@
<?php
namespace app\api\model;
use app\common\model\TimeModel;
class User extends TimeModel
{
protected $deleteTime = 'delete_time';
}

37
app/api/service/UserService.php

@ -0,0 +1,37 @@
<?php
namespace app\api\service;
use app\api\model\User;
use think\Db;
/**
* 用户表
*/
class UserService {
public function mktoken(){
// jwt
$guid = get_guid_v4();
$dtime = time();
return md5(uniqid($guid.$dtime,true));
}
/**
* 用户登录操作,传入用户查询后才对比密码
*/
public function userlogin(string $uname,string $pass){
// query db
$drs = User::where(['nick_name'=>$uname])->find();
// 异常处理
if(!isset($drs)){
throwError('用户不存在');
return false;
}else{
// 对比密码
if($drs['password'] != $pass){
throwError('密码错误');
return false;
}
// 返回用户信息
return $drs;
}
return false;
}
}
Loading…
Cancel
Save