244 lines
8.6 KiB
PHP
244 lines
8.6 KiB
PHP
<?php
|
||
|
||
namespace app\admin\controller;
|
||
|
||
use think\Db;
|
||
use think\Request;
|
||
use think\Session;
|
||
|
||
class Controller extends Common{
|
||
/**
|
||
* 操作员列表
|
||
*/
|
||
public function index()
|
||
{
|
||
// 接收分页的条件
|
||
$get = Request::instance()->get();
|
||
$query = http_build_query($get);
|
||
$this->assign('get',$get);
|
||
$this->assign('query',$query);
|
||
|
||
// 接收搜索的条件信息
|
||
$nickname = Request::instance()->get('nickname');
|
||
$start = Request::instance()->get('start');
|
||
$end = Request::instance()->get('end');
|
||
$startTime = 0;
|
||
$endTime = time();
|
||
|
||
// 拼装搜索条件
|
||
$where = array();
|
||
if($nickname) $where['nickname'] = array('like',"%".$nickname."%");
|
||
if($start) $startTime = strtotime($start);
|
||
if($end) $endTime = strtotime($end);
|
||
|
||
// 获取所有操作员信息
|
||
$user_list = Db::name('user_controller')->where($where)->paginate(10,false,array('query'=>$get));
|
||
$user_sum = Db::name('user_controller')->where($where)->count();
|
||
foreach($user_list as $k => $v){
|
||
$table = Db::name('table')->find($v['table_id']);
|
||
$v['table_name'] = $table['table_name'];
|
||
if($v['last_login_time'] > 0) $v['last_login_time'] = date('Y-m-d H:i:s',$v['last_login_time']);
|
||
if($v['last_login_time'] <= 0) $v['last_login_time'] = '尚未登录';
|
||
if(empty($v['last_login_ip'])) $v['last_login_ip'] = '尚未登录';
|
||
$user_list[$k] = $v;
|
||
}
|
||
|
||
// 渲染变量和模板
|
||
$this->assign('user_list',$user_list);
|
||
$this->assign('user_sum',$user_sum);
|
||
return $this->fetch();
|
||
}
|
||
|
||
/**
|
||
* 添加操作员页面
|
||
*/
|
||
public function controller_add()
|
||
{
|
||
// 查询所有桌子信息
|
||
$table_list = Db::name('table')->select();
|
||
|
||
// 渲染参数和模板
|
||
$this->assign('table_list',$table_list);
|
||
return $this->fetch('/controller/controller-add');
|
||
}
|
||
|
||
/**
|
||
* 处理添加操作员
|
||
*/
|
||
public function do_controller_add()
|
||
{
|
||
if(Request::instance()->post()){
|
||
|
||
// 接收提交过来的数据
|
||
$username = Request::instance()->post('username');
|
||
$nickname = Request::instance()->post('nickname');
|
||
$pass = Request::instance()->post('pass');
|
||
$repass = Request::instance()->post('repass');
|
||
$table = Request::instance()->post('table');
|
||
|
||
// 数据验证
|
||
if( !isset($table) && empty($table) ){
|
||
die(json_encode(['code'=>0,'msg'=>'请选择所属桌子!']));
|
||
}
|
||
if( !isset($username) && empty($username) ){
|
||
die(json_encode(['code'=>0,'msg'=>'用户名不能为空!']));
|
||
}
|
||
if( !isset($nickname) && empty($nickname) ){
|
||
die(json_encode(['code'=>0,'msg'=>'昵称不能为空!']));
|
||
}
|
||
if( !isset($pass) && empty($pass) ){
|
||
die(json_encode(['code'=>0,'msg'=>'密码不能为空!']));
|
||
}
|
||
if( !isset($repass) && empty($repass) ){
|
||
die(json_encode(['code'=>0,'msg'=>'确认密码不能为空!']));
|
||
}
|
||
if( $repass != $pass ){
|
||
die(json_encode(['code'=>0,'msg'=>'两次密码不一致!']));
|
||
}
|
||
|
||
// 检测用户名是否已经被注册
|
||
$user = Db::name('user_controller')->where('username',$username)->find();
|
||
if($user){
|
||
die(json_encode(['code'=>0,'msg'=>'账号已存在!']));
|
||
}
|
||
|
||
// 拼装数据
|
||
$data = array();
|
||
$data['username'] = $username;
|
||
$data['nickname'] = $nickname;
|
||
$data['password'] = think_ucenter_md5($pass, UC_AUTH_KEY);
|
||
$data['table_id'] = $table;
|
||
$data['is_delete'] = 0;
|
||
$insert_id = Db::name('user_controller')->insertGetId($data);
|
||
if($insert_id){
|
||
insertAdminLog('添加操作员','添加操作员: | ID: '.$insert_id.' | 账号: '.$username);
|
||
die(json_encode(['code'=>1,'msg'=>'添加成功!']));
|
||
}else{
|
||
die(json_encode(['code'=>0,'msg'=>'添加失败!']));
|
||
}
|
||
}else{
|
||
die(json_encode(['code'=>0,'msg'=>'操作错误!']));
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 编辑操作员页面
|
||
*/
|
||
public function controller_edit()
|
||
{
|
||
// 接收会员ID,查询会员信息
|
||
$controller_id = Request::instance()->get('controller_id');
|
||
$controller = Db::name('user_controller')->find($controller_id);
|
||
|
||
// 查询所有桌子信息
|
||
$table_list = Db::name('table')->select();
|
||
|
||
// 渲染参数和模板
|
||
$this->assign('table_list',$table_list);
|
||
$this->assign('controller',$controller);
|
||
return $this->fetch('/controller/controller-edit');
|
||
}
|
||
|
||
/**
|
||
* 处理修改操作员信息
|
||
*/
|
||
public function do_controller_edit()
|
||
{
|
||
if(Request::instance()->post()){
|
||
// 接收传过来的数据
|
||
$controller_id = Request::instance()->post('controller_id');
|
||
$username = Request::instance()->post('username');
|
||
$nickname = Request::instance()->post('nickname');
|
||
$pass = Request::instance()->post('pass');
|
||
$repass = Request::instance()->post('repass');
|
||
$table = Request::instance()->post('table');
|
||
|
||
//数据验证
|
||
if(empty($username)){
|
||
die(json_encode(['code'=>0,'msg'=>'会员账号不能为空!']));
|
||
}
|
||
if(empty($nickname)){
|
||
die(json_encode(['code'=>0,'msg'=>'会员昵称不能为空!']));
|
||
}
|
||
if(!empty($pass) && strlen($pass) < 6){
|
||
die(json_encode(['code'=>0,'msg'=>'密码长度不能少于6位!']));
|
||
}
|
||
if(!empty($pass) && $pass != $repass){
|
||
die(json_encode(['code'=>0,'msg'=>'两次密码输入不一致!']));
|
||
}
|
||
if(empty($table)){
|
||
die(json_encode(['code'=>0,'msg'=>'请选择所属桌子!']));
|
||
}
|
||
|
||
// 拼装数据
|
||
$data = array();
|
||
$data['username'] = $username;
|
||
$data['nickname'] = $nickname;
|
||
if(!empty($pass)) $data['password'] = think_ucenter_md5($pass, UC_AUTH_KEY);
|
||
$data['table_id'] = $table;
|
||
|
||
// 修改操作员资料
|
||
$result = Db::name('user_controller')->where('id',$controller_id)->update($data);
|
||
if($result){
|
||
insertAdminLog('修改操作员','修改操作员: | ID: '.$controller_id.' | 账号: '.$username);
|
||
die(json_encode(['code'=>1,'msg'=>'修改成功!']));
|
||
}else{
|
||
die(json_encode(['code'=>0,'msg'=>'修改失败!']));
|
||
}
|
||
}else{
|
||
die(json_encode(['code'=>0,'msg'=>'操作错误!']));
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 删除操作员
|
||
*/
|
||
public function controller_del()
|
||
{
|
||
if(Request::instance()->post()){
|
||
// 接收数据
|
||
$controller_id = Request::instance()->post('controller_id');
|
||
|
||
// 数据验证
|
||
if(!$controller_id){
|
||
die(json_encode(['code'=>0,'msg'=>'用户不存在']));
|
||
}
|
||
|
||
// 删除用户
|
||
$result = Db::name('user_controller')->where('id',$controller_id)->delete();
|
||
if($result){
|
||
insertAdminLog('删除操作员','删除操作员: | ID: '.$controller_id);
|
||
die(json_encode(['code'=>1,'msg'=>'已删除!']));
|
||
}else{
|
||
die(json_encode(['code'=>1,'msg'=>'删除失败!']));
|
||
}
|
||
}else{
|
||
die(json_encode(['code'=>0,'msg'=>'操作错误!']));
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 删除多个操作员
|
||
*/
|
||
public function controller_del_more()
|
||
{
|
||
if(Request::instance()->post()){
|
||
// 接收数据
|
||
$user_ids = json_decode(Request::instance()->post('user_ids'),true);
|
||
|
||
// 验证数据
|
||
if(empty($user_ids)){
|
||
die(json_encode(['code'=>0,'msg'=>'删除用户不能为空!']));
|
||
}else{
|
||
// 遍历删除多个会员
|
||
foreach($user_ids as $v){
|
||
insertAdminLog('删除操作员','删除操作员: | ID: '.$v);
|
||
Db::name('user_controller')->where('id',$v)->delete();
|
||
}
|
||
die(json_encode(['code'=>1,'msg'=>'已删除!']));
|
||
}
|
||
}else{
|
||
die(json_encode(['code'=>0,'msg'=>'操作错误!']));
|
||
}
|
||
}
|
||
} |