登录模块

This commit is contained in:
wuyanwen 2019-12-12 09:13:44 +08:00
parent 7a6628a95f
commit 66e72c6537
4 changed files with 29 additions and 15 deletions

View File

@ -1,8 +1,8 @@
<?php
namespace catchAdmin\login;
use app\exceptions\LoginFailedException;
use think\Db;
use catchAdmin\user\model\Users;
use cather\exceptions\LoginFailedException;
use think\facade\Session;
class Auth
@ -27,15 +27,20 @@ class Auth
*/
public function login($params)
{
$user = Db::table('admin_users')
->where('name', $params['name'])
// ->where('password', $params['password'])
->first();
if (!password_verify($params('password'), $user->password)) {
$user = Users::where('username', $params['name'])->find();
if (!password_verify($params['password'], $user->password)) {
throw new LoginFailedException('登陆失败, 请检查用户名和密码');
}
if ($user->status == Users::DISABLE) {
throw new LoginFailedException('该用户已被禁用');
}
// 记录用户登录
$user->last_login_ip = ip2long(request()->ip());
$user->last_login_time = time();
$user->save();
Session::set($this->loginUser, $user);
return true;

View File

@ -3,9 +3,10 @@ namespace catchAdmin\login\controller;
use catchAdmin\login\Auth;
use catchAdmin\login\request\LoginRequest;
use catcher\base\BaseController;
use catcher\base\CatchController;
use catcher\CatchResponse;
class Index extends BaseController
class Index extends CatchController
{
/**
* 登录
@ -25,11 +26,13 @@ class Index extends BaseController
* @time 2019年11月28日
* @param LoginRequest $request
* @return bool|string
* @throws \cather\exceptions\LoginFailedException
* @throws \app\exceptions\LoginFailedException
*/
public function login(LoginRequest $request)
{
(new Auth())->login($request->post());
return (new Auth())->login($request->param()) ?
CatchResponse::success('', '登录成功') : CatchResponse::success('', '登录失败');
}
/**

View File

@ -1,9 +1,9 @@
<?php
namespace catchAdmin\login\request;
use catcher\base\BaseRequest;
use catcher\base\CatchRequest;
class LoginRequest extends BaseRequest
class LoginRequest extends CatchRequest
{
protected function rules(): array
{
@ -11,7 +11,7 @@ class LoginRequest extends BaseRequest
return [
'name|用户名' => 'require|max:25',
'password|密码' => 'require',
'captcha|验证码' => 'require|captcha'
// 'captcha|验证码' => 'require|captcha'
];
}

View File

@ -106,7 +106,13 @@
type: 'post',
data: obj.field,
success: function(response) {
layer.msg(response.msg)
layer.msg(response.msg, {
icon: 1,
time: 2000 //2秒关闭如果不配置默认是3秒
}, function(){
//do something
window.location.href = '/';
})
}
});
return false;