You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
233 lines
6.9 KiB
PHP
233 lines
6.9 KiB
PHP
<?php
|
|
|
|
namespace Admin\Controller;
|
|
|
|
use User\Api\UserApi as UserApi;
|
|
|
|
/**
|
|
* 推广查询控制器
|
|
* @author 王贺
|
|
*/
|
|
class UserPayWhiteListController extends ThinkController
|
|
{
|
|
public function index($p = 1) {
|
|
|
|
$page = intval($p);
|
|
$page = $page ? $page : 1; //默认显示第一页数据
|
|
$row=10;
|
|
if(isset($_REQUEST['row'])) {$row = $_REQUEST['row'];}else{$row = 10;}
|
|
|
|
$map = [];
|
|
|
|
if ($_SESSION['onethink_admin']['user_group_id']) {
|
|
|
|
$group_id = $_SESSION['onethink_admin']['user_group_id'];
|
|
|
|
}
|
|
|
|
$empower_type = M('AuthGroup')->field('show_data')->where(array('id'=>$group_id))->find();
|
|
|
|
if (($empower_type['show_data']==1||$group_id==1)) {
|
|
$this->assign('show',1);
|
|
}
|
|
|
|
if ($_REQUEST['show']&&($empower_type['show_data']==1||$group_id==1)) {
|
|
|
|
$data = M('user_pay_whitelist','tab_')->where($map)
|
|
->page($page,$row)
|
|
->order('update_time DESC')
|
|
->select();
|
|
|
|
foreach ($data as $key => $value) {
|
|
if ($value['status']==2) {
|
|
$data[$key]['time_status'] = '永久';
|
|
} else {
|
|
$data[$key]['time_status'] = '有效期至'.date('Y-m-d H:i:s',$value['update_time']+$value['time']);
|
|
}
|
|
|
|
$data[$key]['update_time'] = date('Y-m-d H:i:s',$value['update_time']);
|
|
|
|
}
|
|
|
|
$count = M('user_pay_whitelist','tab_')->where($map)->count();
|
|
|
|
$this->assign('data',$data);
|
|
|
|
$page = set_pagination($count,$row);
|
|
if($page) {$this->assign('_page', $page);}
|
|
}
|
|
|
|
$this->checkListOrCountAuthRestMap($map,[]);
|
|
|
|
$this->assign('data',$data);
|
|
$this->meta_title = '玩家支付限制白名单';
|
|
|
|
$this->display();
|
|
|
|
}
|
|
|
|
public function export() {
|
|
|
|
$xlsName = '支付限制白名单账号导出';
|
|
|
|
$xlsCell = array(
|
|
"序号", "账号", '状态', '有效日期',
|
|
'时间'
|
|
);
|
|
|
|
$map = [];
|
|
|
|
$csvFileName = $xlsName.'.csv';
|
|
//设置好告诉浏览器要下载excel文件的headers
|
|
header('Content-Description: File Transfer');
|
|
header('Content-Type: application/vnd.ms-excel');
|
|
header('Content-Disposition: attachment; filename="'. $csvFileName .'"');
|
|
header('Expires: 0');
|
|
header('Cache-Control: must-revalidate');
|
|
header('Pragma: public');
|
|
$fp = fopen('php://output', 'a');//打开output流
|
|
mb_convert_variables('GBK', 'UTF-8', $xlsCell);
|
|
fputcsv($fp, $xlsCell);//将数据格式化为CSV格式并写入到output流中
|
|
|
|
|
|
$accessNum = M('user_pay_whitelist','tab_')->where($map)->count();
|
|
|
|
$perSize = 2000;//每次查询的条数
|
|
$pages = ceil($accessNum / $perSize);
|
|
|
|
for($i = 1; $i <= $pages; $i++) {
|
|
|
|
|
|
$xlsData = M('user_pay_whitelist','tab_')
|
|
->field("id,user_account,status,'' as time_status,update_time,time")
|
|
->where($map)
|
|
->limit(($i-1)*$perSize ,$perSize)
|
|
->order('update_time DESC')
|
|
->select();
|
|
|
|
foreach ($xlsData as $key => $value) {
|
|
if ($value['status']==2) {
|
|
$value['time_status'] = '永久';
|
|
$value['status'] = '永久';
|
|
} else if($value['status']==1){
|
|
$value['time_status'] = '有效期至'.date('Y-m-d H:i:s',$value['update_time']+$value['time']);
|
|
$value['status'] = '30天允许支付';
|
|
} else {
|
|
$value['time_status'] = '有效期至'.date('Y-m-d H:i:s',$value['update_time']+$value['time']);
|
|
$value['status'] = '7天允许支付';
|
|
}
|
|
unset($value['time']);
|
|
|
|
$value['update_time'] = date('Y-m-d H:i:s',$value['update_time']);
|
|
|
|
mb_convert_variables('GBK', 'UTF-8', $value);
|
|
fputcsv($fp, $value);
|
|
|
|
}
|
|
|
|
unset($xlsData);//释放变量的内存
|
|
//刷新输出缓冲到浏览器
|
|
ob_flush();
|
|
flush();//必须同时使用 ob_flush() 和flush() 函数来刷新输出缓冲。
|
|
}
|
|
|
|
fclose($fp);
|
|
|
|
$getData = $_GET;
|
|
unset($getData['id']);
|
|
unset($getData['xlsname']);
|
|
|
|
}
|
|
|
|
public function add() {
|
|
|
|
if (IS_POST) {
|
|
|
|
$post = $_POST;
|
|
|
|
if($post['account']!=$post['account_check']) {
|
|
$this->ajaxReturn(['status'=>0,'msg'=>'两次输入不一致']);
|
|
exit();
|
|
}
|
|
|
|
$hav_user = M('user','tab_')->where(['account'=>$post['account']])->find();
|
|
|
|
if(!$hav_user) {
|
|
$this->ajaxReturn(['status'=>0,'msg'=>'账号不存在']);
|
|
exit();
|
|
}
|
|
|
|
$whiteList = M('user_pay_whitelist','tab_')->where(['user_id'=>$hav_user['id']])->find();
|
|
|
|
$insert = [];
|
|
|
|
$insert['user_id'] = $hav_user['id'];
|
|
$insert['user_account'] = $hav_user['account'];
|
|
|
|
if(!$whiteList) {
|
|
|
|
$insert['status'] = 0;
|
|
$insert['time'] = 7*86400;
|
|
$insert['create_time'] = time();
|
|
$insert['update_time'] = time();
|
|
|
|
$is_success = M('user_pay_whitelist','tab_')->add($insert);
|
|
|
|
} else {
|
|
$insert['update_time'] = time();
|
|
if($whiteList['status']==0) {
|
|
$insert['status'] = 1;
|
|
$insert['time'] = 30*86400;
|
|
} elseif($whiteList['status']==1) {
|
|
$insert['status'] = 2;
|
|
$insert['time'] = 1;
|
|
|
|
}
|
|
|
|
if($whiteList['status']==2) {
|
|
$this->ajaxReturn(['status'=>0,'msg'=>'该账号已经是永久无需再进行操作']);
|
|
exit();
|
|
}
|
|
|
|
$is_success = M('user_pay_whitelist','tab_')->where(['user_id'=>$hav_user['id']])->save($insert);
|
|
}
|
|
|
|
if($is_success) {
|
|
$this->ajaxReturn(['status'=>1,'msg'=>'操作成功']);
|
|
exit();
|
|
} else {
|
|
$this->ajaxReturn(['status'=>0,'msg'=>'操作失败']);
|
|
exit();
|
|
}
|
|
|
|
}
|
|
|
|
$this->meta_title = '新增支付限制白名单账号';
|
|
|
|
$this->display();
|
|
|
|
}
|
|
|
|
public function del() {
|
|
|
|
if (!$_REQUEST['id']) {
|
|
$this->ajaxReturn(['status'=>0,'msg'=>'id不能为空']);
|
|
exit();
|
|
}
|
|
|
|
$is_del = M('user_pay_whitelist','tab_')->where(['id'=>$_REQUEST['id']])->delete();
|
|
|
|
if($is_del) {
|
|
$this->ajaxReturn(['status'=>1,'msg'=>'删除成功']);
|
|
exit();
|
|
} else {
|
|
$this->ajaxReturn(['status'=>0,'msg'=>'删除失败']);
|
|
exit();
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|