LoginLogic.php 1.3 KB
<?php

namespace App\Http\Logic\Aside;

use App\Models\Manage\Manage;
use App\Models\Manage\LoginLog;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Session;


/**
 * Class LoginLogic
 * @package App\Http\Logic\Aside
 * @author zbj
 * @date 2023/4/19
 */
class LoginLogic extends BaseLogic
{
    public function __construct()
    {
        parent::__construct();

        $this->model = new Manage();
    }


    public function login()
    {
        $manage = $this->model->where('mobile', $this->requestAll['mobile'])->first();

        if (!$manage){
            $this->fail('登录用户名不存在');
        }
        if (Manage::STATUS_DISABLE == $manage->status) {
            $this->fail('帐号已被禁用');
        }
        if (!Hash::check($this->requestAll['password'], $manage->password)) {
            $this->fail('登录密码不正确');
        }
        Session::put('manage', $manage->toArray());

        LoginLog::addLog($manage->id);

        return $this->success();
    }

    public function logout(){
        Session::forget('manage');
        return redirect(route('admin.login'));
    }

    public static function manage($field = ''){
        $manage = Session::get('manage');
        $manage = Manage::find(1)->toArray();
        if($field){
            return $manage[$field] ?? '';
        }
        return $manage;
    }
}