94 lines
2.9 KiB
PHP
94 lines
2.9 KiB
PHP
<?php
|
||
|
||
namespace app\admin\controller;
|
||
|
||
use think\Controller;
|
||
use think\Db;
|
||
|
||
class Common extends Controller
|
||
{
|
||
public $aid;
|
||
public function initialize()
|
||
{
|
||
header('Access-Control-Allow-Origin: *');
|
||
|
||
// ajaxReturn(301, '系统维护');
|
||
$login_token = input('login_token', 0);
|
||
$reslut = model('Admin')->check_login_token($login_token);
|
||
if ($reslut['code'] == 201) {
|
||
return ajaxReturn(301, $reslut['msg'], $reslut['data']);
|
||
} else {
|
||
$this->aid = $reslut['data'];
|
||
}
|
||
|
||
$check_ip = $this->check_ip();
|
||
if($check_ip['code'] == 201){
|
||
db::name('admin')->where('aid', $this->aid)->update(['login_token' => '']);
|
||
return ajaxReturn(301, $check_ip['msg'], $check_ip['data']);
|
||
}
|
||
|
||
$header = request()->header();
|
||
if(!isset($header['referer'])){
|
||
return ajaxReturn(301, '登录失效', $reslut['data']);
|
||
}
|
||
|
||
add_operation(1, $this->aid); //用户行为日志
|
||
}
|
||
public function check_login_status()
|
||
{
|
||
$user_name = Db::name("admin")->where(array("aid" => $this->aid))->value("user_name");
|
||
$data['data'] = $user_name;
|
||
$check_ip = $this->check_ip();
|
||
if($check_ip['code'] == 201){
|
||
db::name('admin')->where('aid', $this->aid)->update(['login_token' => '']);
|
||
return ajaxReturn(301, $check_ip['msg'], $check_ip['data']);
|
||
}
|
||
ajaxReturn(1, '登录成功', $data);
|
||
}
|
||
public function get_menu_list()
|
||
{
|
||
$data = model('SystemMenu')->getSystemInit($this->aid);
|
||
return json($data);
|
||
}
|
||
|
||
//限制ip
|
||
public function check_ip(){
|
||
$check_ip = request()->ip();
|
||
if($check_ip){
|
||
// $check_ip = explode('.',$check_ip);
|
||
// $check_ip = $check_ip[0].'.'.$check_ip[1];
|
||
// $ip = array(
|
||
// '61.52',
|
||
// '219.157',
|
||
// '113.137',
|
||
// '117.37',
|
||
// '123.149',
|
||
// '125.41',
|
||
// '115.60',
|
||
// '113.141',
|
||
// '221.15',
|
||
// '36.46',
|
||
// '113.137',
|
||
// '123.53',
|
||
// '1.198',
|
||
// '111.18',
|
||
// '1.193',
|
||
// '119.137',
|
||
// '111.19'
|
||
// );
|
||
// if(!in_array($check_ip,$ip)){
|
||
// return ['code' => 201, 'msg' => 'ip不匹配无法登陆!', 'data'=>null];
|
||
// }
|
||
$check_ips = has_ip();
|
||
if(!$check_ips){
|
||
return ['code' => 201, 'msg' => 'ip不匹配无法登陆!', 'data'=>null];
|
||
}
|
||
}else{
|
||
return ['code' => 201, 'msg' => 'ip不匹配无法登陆!', 'data'=>null];
|
||
}
|
||
return ['code' => 200, 'msg' => 'ip可登陆', 'data'=>null];
|
||
}
|
||
|
||
|
||
}
|