Files
yuyin-php/application/admin/controller/Common.php

94 lines
2.9 KiB
PHP
Raw Normal View History

2025-08-08 14:45:40 +08:00
<?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];
}
}