Merge branch 'release-1.0.0' into dev

master
zhengchanglong 5 years ago
commit 484972e9f2

@ -44,16 +44,11 @@ function get_promote_list_by_id($id=0) {
if(is_numeric($id) && $id>=0) {
$map['parent_id'] = $id;
$list = $query->where($map)->select();
} elseif(is_array($id)) {
$map['parent_id'] = array('in',$id);
$list = $query->where($map)->select();
} elseif(is_numeric($id) && $id<0){
$list = $query->where($map)->select();
} else {
$list = '';
}
return $list;
$list = $query->where($map)->select();
return $list;
}
/*
@ -1557,9 +1552,9 @@ function getAdminData ($uid) {
->join('left join sys_auth_group on sys_auth_group_access.group_id=sys_auth_group.id')
->where(array('uid'=>$uid))->find();
$promoteData = M('promote','tab_')->field('id')->where(array('admin_id'=>$uid))->select();
$promoteData = implode(',',array_column($promoteData,'id'));
$adminData['data_president'] = $adminData['data_president'].','.$promoteData;
// $promoteData = M('promote','tab_')->field('id')->where(array('admin_id'=>$uid))->select();
// $promoteData = implode(',',array_column($promoteData,'id'));
// $adminData['data_president'] = $adminData['data_president'].','.$promoteData;
return $adminData;
}
@ -1590,7 +1585,8 @@ function getPowerPromoteIds()
if ($myPromote_ids) {
if ($userAuth['data_empower_type'] == 2) {//部分会长加上自己创建的会长
$userAuth['data_president'] .= "," . $myPromote_ids;
// $userAuth['data_president'] .= "," . $myPromote_ids;
} elseif ($userAuth['data_empower_type'] == 3) {//自己创建的会长和底下推广员
$userAuth['data_president'] = $myPromote_ids;
}
@ -1598,6 +1594,7 @@ function getPowerPromoteIds()
if (!empty($userAuth['data_president'])) {//查询有权限查看的会长以及底下的推广员
$map = array();
//查询会长底下的推广员(首个斜杆之间的数字)
$userAuth['data_president']= trim($userAuth['data_president'], ",");
$where['SUBSTRING_INDEX(SUBSTRING_INDEX(`chain`,"/",2),"/",-1)'] = array('exp',"IN({$userAuth['data_president']})");
$where['id'] = array('in', $userAuth['data_president']);//会长本身
$where['_logic'] = 'or';
@ -1619,11 +1616,17 @@ function getPowerPromoteIds()
return $promoteIds;
}
/**
* 为数据权限添加筛选参数
* @param array $map 查询条件
* @param string $column 字段名默认为promote_id
* @return mixed
*/
function setPowerPromoteIds(&$map, $column = 'promote_id') {
//为数据权限添加
$promoteIds = getPowerPromoteIds();
if (empty($promoteIds)) {
$map[$column] = -1;
$map[$column] = -1;//没权限时将promote_id置为-1
} elseif ($promoteIds != 'all') {
if (isset($map[$column])) {
if (isset($map['_string'])) {//查询字段中已存在promote_id不覆盖此条件而处理
@ -1697,4 +1700,19 @@ function get_admin_listOther()
if(empty($list)){return false;}
return $list;
}
/**
* 根据会长id底下的推广员id
* @param $promote_id
* @return mixed
*/
function getOffspringByPromoteId($promote_id) {
$promote_ids = M('promote', 'tab_')
->where(['chain' => ['like', "%/{$promote_id}/%"]])
->field('group_concat(id) as promote_ids')
->find();
return $promote_ids['promote_ids'];
}
?>

@ -16,7 +16,6 @@ use Admin\Model\AuthGroupModel;
* @author 麦当苗儿 <zuojiazi@vip.qq.com>
*/
class AdminController extends Controller {
/**
* 后台控制器初始化
*/
@ -49,36 +48,44 @@ class AdminController extends Controller {
if ( false === $access ) {
$this->error('403:禁止访问');
}elseif(null === $access ){
//检测访问权限
$rule = strtolower(MODULE_NAME.'/'.CONTROLLER_NAME.'/'.ACTION_NAME);
if ( !$this->checkRule($rule,array('in','1,2')) ){
if ($rule == "admin/index/index"){
//如果首页没有访问权限 自动检测有访问权限的页面然后跳转过去
$qx = M("Auth_group")->table("__AUTH_GROUP__ as ag")
->join("__AUTH_GROUP_ACCESS__ as aga on(ag.id=aga.group_id and aga.uid=".UID.")",'right')
->where("ag.status=1")->limit(1)->select();
if (empty($qx)){
//如果没有任何权限 直接登出
D('Member')->logout();
session('[destroy]');
if(CONTROLLER_NAME !== "Ajax"){//ajax放行
//检测访问权限
$rule = strtolower(MODULE_NAME.'/'.CONTROLLER_NAME.'/'.ACTION_NAME);
if($rule == "admin/statistics/overview"){//第一级菜单单独判断
$this->strictCheckRule($rule);
}elseif ( !$this->checkRule($rule,array('in','1,2')) ){
if ($rule == "admin/index/index"){
//如果首页没有访问权限 自动检测有访问权限的页面然后跳转过去
$qx = M("Auth_group")->table("__AUTH_GROUP__ as ag")
->join("__AUTH_GROUP_ACCESS__ as aga on(ag.id=aga.group_id and aga.uid=".UID.")",'right')
->where("ag.status=1")->limit(1)->select();
if (empty($qx)){
//如果没有任何权限 直接登出
D('Member')->logout();
session('[destroy]');
}
$where['id'] = substr($qx[0]['rules'],0,strpos($qx[0]['rules'], ','));
//$where['id'] = substr($qx[0]['rules'],0,1)
$dz = M("auth_rule")->field('name')->where($where)->find();
$red = substr($dz['name'],6);
redirect(U("$red"));
}else{
$this->error('未授权访问!');
}
$where['id'] = substr($qx[0]['rules'],0,1);;
$dz = M("auth_rule")->field('name')->where($where)->find();
$red = substr($dz['name'],6);
redirect(U("$red"));
}else{
$this->error('未授权访问!');
}
}else{
// 检测分类及内容有关的各项动态权限
$dynamic = $this->checkDynamic();
if( false === $dynamic ){
$this->error('未授权访问!');
}else{
// 检测分类及内容有关的各项动态权限
$dynamic = $this->checkDynamic();
if( false === $dynamic ){
$this->error('未授权访问!');
}
}
}
}
}
$map2['uid'] = session("user_auth.uid");
$res = M('auth_group_access','sys_')->field('uid,group_id')->where($map2)->find();
@ -89,7 +96,49 @@ class AdminController extends Controller {
$this->assign('__MENU__', $this->getMenus());
}
/**
* 大菜单存在两个及以上的同方法菜单,需要进行多级菜单确认
*/
protected function strictCheckRule($rule)
{
$flag =false;
$id= 0;
$ruleres = M("auth_rule")->field("id,type")->where("name LIKE '%{$rule}%'")->select();
foreach ($ruleres as $k => $v) {
$checkRule = $this->checkRule($rule,array('eq',$v['type']));
if(!$checkRule){
$flag = true;
}else{
$id = $v['id'];
}
}
if($flag){ //不通过
//获取菜单下的
$rulearr = explode("/",$rule);
$where = array();
$where['pid'] = 0;
$where['hide'] = 0;
$where['url'] = array("like",$rulearr[1]."/".$rulearr[2]);
$second_id = M('Menu')->where($where)->field('id')->find()['id'];
$where2['pid'] = $second_id;
$where2['hide'] = 0;
$menu = M('Menu')->where($where2)->field('id,url')->order('sort asc')->select();
foreach ($menu as $k=>$v) {
$to_check_url = $v['url'];
if( stripos($to_check_url,MODULE_NAME)!==0 ){
$trule = MODULE_NAME.'/'.$to_check_url;
}else{
$trule = $to_check_url;
}
if($this->checkRule($trule, AuthRuleModel::RULE_URL,null)){
redirect(U("$trule"));
}
}
}
# code...
}
/**
* 权限检测
* @param string $rule 检测的规则

@ -78,6 +78,7 @@ class BehaviorLogController extends ThinkController
$this->assign('startDate', $startDate);
$this->assign('endDate', $endDate);
$this->assign('data', $data);
$this->assign("is_admin",is_administrator());
$this->display('index');
}

@ -8,13 +8,13 @@ use User\Api\UserApi as UserApi;
* @author 麦当苗儿 <zuojiazi@vip.qq.com>
*/
class DepositController extends ThinkController {
const model_name = 'Deposit';
const model_name = 'Deposit';
public function lists(){
if(isset($_REQUEST['user_account'])){
$map['user_account']=array('like','%'.trim($_REQUEST['user_account']).'%');
unset($_REQUEST['user_account']);
}
if(isset($_REQUEST['user_account'])){
$map['user_account']=array('like','%'.trim($_REQUEST['user_account']).'%');
unset($_REQUEST['user_account']);
}
if(isset($_REQUEST['pay_order_number'])){
$map['pay_order_number']=array('like','%'.trim($_REQUEST['pay_order_number']).'%');
unset($_REQUEST['pay_order_number']);
@ -49,7 +49,7 @@ class DepositController extends ThinkController {
unset($_REQUEST['promote_id']);
unset($_REQUEST['promote_name']);
}
if(isset($_REQUEST['time-start'])&&isset($_REQUEST['time-end'])){
if(isset($_REQUEST['time-start'])&&isset($_REQUEST['time-end'])){
$map['create_time'] =array('BETWEEN',array(strtotime($_REQUEST['time-start']),strtotime($_REQUEST['time-end'])+24*60*60-1));
unset($_REQUEST['time-start']);unset($_REQUEST['time-end']);
}elseif(isset($_REQUEST['time-start'])){
@ -101,16 +101,16 @@ class DepositController extends ThinkController {
$this->assign('ttotal',$ttotal);
$this->assign('ytotal',$ytotal);
$this->m_title = '平台币充值';
$this->assign('commonset',M('Kuaijieicon')->where(['url'=>'Deposit/lists','status'=>1])->find());
$this->m_title = '平台币充值';
$this->assign('commonset',M('Kuaijieicon')->where(['url'=>'Deposit/lists','status'=>1])->find());
parent::lists(self::model_name,$_GET["p"],$map);
$this->assign("is_admin",is_administrator());
parent::lists(self::model_name,$_GET["p"],$map);
}
public function send_lists(){
public function send_lists(){
if(IS_POST){
$type = $_REQUEST['type'];
$firstpay = A('Send','Event');
@ -131,8 +131,8 @@ class DepositController extends ThinkController {
$this->meta_title ="后台发放(玩家)";
$this->m_title = '平台币发放(玩家)';
$this->assign('commonset',M('Kuaijieicon')->where(['url'=>'Deposit/send_lists','status'=>1])->find());
$this->m_title = '平台币发放(玩家)';
$this->assign('commonset',M('Kuaijieicon')->where(['url'=>'Deposit/send_lists','status'=>1])->find());
$this->display();
}
@ -183,10 +183,10 @@ class DepositController extends ThinkController {
unset($_REQUEST['op_id']);
}
if(is_numeric($_REQUEST['status']) && ($_REQUEST['status']==0 || $_REQUEST['status']==1)) {
$map['status'] = $_REQUEST['status'];
unset($_REQUEST['status']);
}
if(is_numeric($_REQUEST['status']) && ($_REQUEST['status']==0 || $_REQUEST['status']==1)) {
$map['status'] = $_REQUEST['status'];
unset($_REQUEST['status']);
}
$map1=$map;
$map1['status']=1;
@ -209,8 +209,8 @@ class DepositController extends ThinkController {
);
$user = A('User','Event');
$this->m_title = '平台币发放(玩家)';
$this->assign('commonset',M('Kuaijieicon')->where(['url'=>'Deposit/send_lists','status'=>1])->find());
$this->m_title = '平台币发放(玩家)';
$this->assign('commonset',M('Kuaijieicon')->where(['url'=>'Deposit/send_lists','status'=>1])->find());
$user->user_join_($model,$_GET['p']);
@ -222,7 +222,7 @@ class DepositController extends ThinkController {
* @param $ids
*/
public function batch($ids=''){
if ( empty($ids) ) {
if ( empty($ids) ) {
$this->error('请选择要操作的数据!');
}
$list=M("provide_user","tab_");
@ -244,7 +244,7 @@ class DepositController extends ThinkController {
}
public function delprovide($ids=null){
if ( empty($ids) ) {
if ( empty($ids) ) {
$this->error('请选择要操作的数据!');
}
$list=M("provide_user","tab_");

@ -3,6 +3,7 @@
namespace Admin\Controller;
use Sdk\Controller\AgeController;
use Think\Log;
use User\Api\MemberApi as MemberApi;
use Org\WeixinSDK\Weixin;
@ -937,11 +938,31 @@ class MemberController extends ThinkController
}
}
public function changeprelname()
{
if (preg_match('/^([\xe4-\xe9][\x80-\xbf]{2}){2,4}$/', $_POST['real_name'])) {
//重复判断
$map['id'] = $_POST['id'];
$pro = M("User", "tab_")
->where($map)
->setField('real_name', $_POST['real_name']);
if ($pro !== false) {
$this->ajaxReturn(array("status" => 1, "msg" => "真实姓名修改成功"));
} else {
$this->ajaxReturn(array("status" => 0, "msg" => "真实姓名修改失败"));
}
} else {
$this->ajaxReturn(array("status" => 0, "msg" => "真实姓名输入错误"));
}
}
public function changepidcard()
{
if (preg_match('/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/', $_POST['idcard'])) {
//重复判断
$where['idcard'] = $_POST['idcard'];
//$where['idcard'] = $_POST['idcard'];
/*$user = M('User', 'tab_')->where($where)->field('id,account')->find();
if ($user) {
$this->ajaxReturn(array("status" => 0, "msg" => "该身份证号码已被" . $user['account'] . "(" . $user['id'] . ")绑定"));
@ -1049,17 +1070,26 @@ class MemberController extends ThinkController
setPowerPromoteIds($map,'promote_id');
if (isset($_REQUEST['promote_id'])) {
$map['promote_id'] = $_REQUEST['promote_id'];
if (I('promote_level') ==1) {
$promote_ids = getOffspringByPromoteId($_REQUEST['promote_id']);
if (empty($promote_ids)) {
$promote_ids = -1;
}
$map['promote_id'] = ['exp', "in($promote_ids)"];
} else {
$map['promote_id'] = $_REQUEST['promote_id'];
}
unset($_REQUEST['promote_id']);
}
// $map['type'] = 1;
// $map['login_time'] = ['exp', 'login_time<>0'];
$extend = array();
$extend['map'] = $map;
$count = M('UserLoginRecord','tab_')->field('user_id')->where($extend['map'])->group('user_id')->select(false);
$sql = "select count(user_id) as count from ({$count})t";
$count = M('UserLoginRecord','tab_')->query($sql);
// var_dump($sql);die();
$this->m_title = '登录记录';
$this->assign('user_count',$count[0]['count']);

@ -200,6 +200,16 @@ class PromoteController extends ThinkController
parent::lists('SiteApply', $p, $map);
}
private function accountExist($account, $id = null)
{
$res = M('promote', 'tab_')->where(['account' => $account])->field('id')->find();
if ($res) {
return $id != $res['id'];
} else {
return false;
}
}
public function add($account=null, $password=null, $second_pwd=null, $real_name=null, $email=null,
$mobile_phone=null, $bank_name=null, $bank_card=null, $admin=null, $status=null, $ba_id = null, $company_id = null)
{
@ -207,6 +217,9 @@ class PromoteController extends ThinkController
if (C('PROMOTE_AUTO_AUDIT') == 1) {
$status = 1;
}
if ($this->accountExist($account)) {
$this->error('该账号已存在');
}
$data = array('account'=>$account,'password'=>$password,'second_pwd'=>$second_pwd,'real_name'=>$real_name,
'email'=>$email,'mobile_phone'=>$mobile_phone,'bank_name'=>$bank_name,'bank_card'=>$bank_card,
'admin_id'=>session('user_auth')['uid'],'status'=>$status,'ba_id'=>$ba_id, 'company_id' => $company_id);
@ -225,7 +238,7 @@ class PromoteController extends ThinkController
session('user_auth_promote_ids', null);
$this->success("添加成功", U('lists'));
} else {
$this->error($res);
$this->error('添加失败');
}
} else {
$this->meta_title ='新增渠道信息';
@ -265,7 +278,9 @@ class PromoteController extends ThinkController
$data['account'] = I('post.account');
$map1['id'] = array('neq',$_POST['id']);
$map1['account'] = $data['account'];
if ($this->accountExist($data['account'])) {
$this->error('该账号已存在');
}
$pdata = D('Promote')->where($map1)->find();
if ($pdata) {

@ -674,6 +674,7 @@ class UserController extends AdminController
$this->m_title = '角色查询';
$this->assign('commonset', M('Kuaijieicon')->where(['url' => 'User/rolelist', 'status' => 1])->find());
$this->assign("is_admin",is_administrator());
$this->display();

@ -7,24 +7,24 @@
<style>
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
</style>
<!-- 标题栏 -->
@ -37,7 +37,7 @@
<!-- 高级搜索 -->
<div class="jssearch fl cf search_list">
<div class="input-list search-title-box">
<label>搜索:</label>
<label>搜索:</label>
</div>
<div class="input-list">
@ -63,14 +63,14 @@
<volist name=":getAllGame()" id="vo">
<option value="{$vo.game_name}" <?php echo $vo.relation_game_name == I('game_name') ? 'selected':''; ?> >{$vo.game_name}</option>
</volist>
</select>
</select>
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="sdk_version" name="sdk_version" class="select_gallery" >
<option value="">设备类型</option>
<option value="1" <?php echo I('game_type') == 1 ? "selected" : ''?>>安卓</option>
<option value="2" <?php echo I('game_type') == 2 ? "selected" : ''?>>苹果</option>
</select>
</select>
</div>
<div class="input-list input-list-server search_label_rehab">
<select id="server_name" name="server_name" class="select_gallery" style="width:120px;">
@ -139,48 +139,60 @@
<tr>
<td>{$vo.extend}</td>
<td>{:set_show_time($vo['create_time'])}</td>
<td>{$vo.user_account}</td>
<td>
<if condition="$is_admin eq true ">
{$vo.user_account}
<else />
{$vo.user_account|encryptStr}
</if>
</td>
<td>{$vo.game_name}</td>
<td>{$vo.server_name}</td>
<td>{$vo.promote_account}</td>
<td>
<if condition="$is_admin eq true ">
{$vo.promote_account}
<else />
{$vo.promote_account|encryptStr}
</if>
</td>
<td>{$vo.game_player_id}</td>
<td>{$vo.game_player_name}</td>
<td>{$vo.price}</td>
</tr>
</volist>
</empty>
<!-- <tr class="data_summary">
<td>汇总</td>
<td colspan="6">
当页充值:{:null_to_0(array_sum(array_column(array_status2value('pay_status','',$list_data),'pay_amount')))}
今日充值:{$ttotal}
昨日充值:{$ytotal}
累计充值:{$total}(此处只汇总充值成功的订单)
</td>
<td colspan="99" style="color: #a9a9a9;">
今日充值:今日平台所有推广员的累计充值(包括官方渠道)/
昨日充值:昨日平台所有推广员的累计充值(包括官方渠道)
</td>
</tr> -->
<!-- <tr class="data_summary">
<td>汇总</td>
<td colspan="6">
当页充值:{:null_to_0(array_sum(array_column(array_status2value('pay_status','',$list_data),'pay_amount')))}
今日充值:{$ttotal}
昨日充值:{$ytotal}
累计充值:{$total}(此处只汇总充值成功的订单)
</td>
<td colspan="99" style="color: #a9a9a9;">
今日充值:今日平台所有推广员的累计充值(包括官方渠道)/
昨日充值:昨日平台所有推广员的累计充值(包括官方渠道)
</td>
</tr> -->
</tbody>
</table>
</div>
</div>
<div class="page">
<a class="sch-btn" href="{:U('Export/expUser',array_merge(array('id'=>21,'xlsname'=>'游戏充值预下单'),I('get.')))}">导出</a>
<a class="sch-btn" href="{:U('Export/expUser',array_merge(array('id'=>21,'xlsname'=>'游戏充值预下单'),I('get.')))}">导出</a>
{$_page|default=''}
</div>
<div class="common_settings">
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
<form class="addShortcutIcon">
<input type="hidden" name="title" value="{$m_title}">
<input type="hidden" name="url" value="Spend/lists">
</form>
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='commonset'>已添加<else />添加至常用设置</notempty></span></a>
</div>
<div class="common_settings">
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
<form class="addShortcutIcon">
<input type="hidden" name="title" value="{$m_title}">
<input type="hidden" name="url" value="Spend/lists">
</form>
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='commonset'>已添加<else />添加至常用设置</notempty></span></a>
</div>
</block>
@ -197,7 +209,7 @@
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
<script>
<volist name = ":I('get.')" id = "vo">
Think.setValue('{$key}', "{$vo}");
Think.setValue('{$key}', "{$vo}");
</volist>
$(".select_gallery").select2();
</script>
@ -417,8 +429,8 @@
dataType:'json',
success:function(response){
str = '<option value="">请选择推广员</option>' +
// '<option value="0"'+(promote_id && 0 == promote_id?'selected':'')+'>官方渠道</option>' +
'';
// '<option value="0"'+(promote_id && 0 == promote_id?'selected':'')+'>官方渠道</option>' +
'';
data = response.data;
for (var i in data){
str += "<option value='"+data[i].id+"' "+(promote_id && data[i].id == promote_id?'selected':'')+">"+data[i].nickname+"</option>"
@ -431,29 +443,29 @@
});
$("#promote_level").change();
var game_server = "{:I('server_name')}";
$("#sdk_version").change(function(){
$.ajax({
url:"{:U('Ajax/getGmeServer')}",
type:"post",
data:{sdk_version:$("#sdk_version option:selected").val(), game_name:$("#game_name option:selected").val()},
dataType:'json',
success:function(data){
str = "<option value=''>请选择区服</option>";
for (var i in data){
str += "<option value='"+data[i].server_name+"' "+(game_server && data[i].server_name == game_server?'selected':'')+">"+data[i].server_name+"</option>"
}
$("#server_name").empty();
$("#server_name").append(str);
$("#server_name").select2();
var game_server = "{:I('server_name')}";
$("#sdk_version").change(function(){
$.ajax({
url:"{:U('Ajax/getGmeServer')}",
type:"post",
data:{sdk_version:$("#sdk_version option:selected").val(), game_name:$("#game_name option:selected").val()},
dataType:'json',
success:function(data){
str = "<option value=''>请选择区服</option>";
for (var i in data){
str += "<option value='"+data[i].server_name+"' "+(game_server && data[i].server_name == game_server?'selected':'')+">"+data[i].server_name+"</option>"
}
})
});
$("#server_name").empty();
$("#server_name").append(str);
$("#server_name").select2();
}
})
});
$("#game_name").change(function(){
$("#sdk_version").change();
});
$("#game_name").change();
$("#game_name").change(function(){
$("#sdk_version").change();
});
$("#game_name").change();
/**
* 初始化select2单选默认带搜索功能。

@ -1,43 +1,43 @@
<extend name="Public/base"/>
<block name="body">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<style>
.select2-container--default .select2-selection--single {
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
</style>
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
</style>
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">平台币充值</h3>
<p class="description_text">说明:玩家充值平台币到账户的记录,不包含消费平台币的记录,如需查询平台币使用,请到游戏充值中查询</p>
</div>
<div class="cf top_nav_list">
<!-- 高级搜索 -->
<div class="jssearch fl cf search_list">
<div class="input-list search-title-box">
<label>搜索:</label>
<div class="input-list search-title-box">
<label>搜索:</label>
</div>
<div class="input-list">
<input type="text" id="search-input" name="user_account" class="" value="{:I('user_account')}"
@ -77,7 +77,7 @@
<option value="0">下单未付款</option>
</select>
</div>
<input type="hidden" name="" value="" class="sortBy">
<div class="input-list">
@ -96,56 +96,73 @@
<!-- 表头 -->
<thead>
<tr>
<th>订单号</th>
<th>玩家账号</th>
<th>所属推广员</th>
<th>
<a class="paixu" data-order='pay_amount'>
充值平台币
</a>
</th>
<th>充值方式</th>
<th>充值ip</th>
<th>
<a class="paixu" data-order='create_time'>
充值时间
</a>
</th>
<th>订单状态</th>
<th>订单号</th>
<th>玩家账号</th>
<th>所属推广员</th>
<th>
<a class="paixu" data-order='pay_amount'>
充值平台币
</a>
</th>
<th>充值方式</th>
<th>充值ip</th>
<th>
<a class="paixu" data-order='create_time'>
充值时间
</a>
</th>
<th>订单状态</th>
</tr>
</thead>
<!-- 列表 -->
<tbody>
<empty name ="list_data">
<td colspan="11" class="text-center">aOh! 暂时还没有内容!</td>
<else />
<volist name="list_data" id="data">
<tr>
<td>{:$data['pay_order_number']}</td>
<td>{$data.user_account}</td>
<td><if condition="$data['promote_account'] eq '自然注册'">官方渠道<else/>{$data.promote_account}</if></td>
<td><span>{$data.pay_amount}</span></td>
<td>{:get_pay_way($data['pay_way'])}</td>
<td>{$data.pay_ip}</td>
<td>{:set_show_time($data['create_time'],'','pay')}</td>
<td>
<if condition="$data['pay_status'] eq 1">
<span class="order_status_color">{:get_info_status($data['pay_status'],9)}</span>
<else/>
{:get_info_status($data['pay_status'],9)}
</if>
</td>
</tr>
</volist>
<td colspan="11" class="text-center">aOh! 暂时还没有内容!</td>
<else />
<volist name="list_data" id="data">
<tr>
<td>{:$data['pay_order_number']}</td>
<td>
<if condition="$is_admin eq true ">
{$data.user_account}
<else />
{$data.user_account|encryptStr}
</if>
</td>
<td>
<if condition="$data['promote_account'] eq '自然注册'">
官方渠道
<else/>
<if condition="$is_admin eq true ">
{$data.promote_account}
<else />
{$data.promote_account|encryptStr}
</if>
</if>
</td>
<td><span>{$data.pay_amount}</span></td>
<td>{:get_pay_way($data['pay_way'])}</td>
<td>{$data.pay_ip}</td>
<td>{:set_show_time($data['create_time'],'','pay')}</td>
<td>
<if condition="$data['pay_status'] eq 1">
<span class="order_status_color">{:get_info_status($data['pay_status'],9)}</span>
<else/>
{:get_info_status($data['pay_status'],9)}
</if>
</td>
</tr>
</volist>
</empty>
<tr class="data_summary">
<td>汇总</td>
<td colspan="7">
当页充值:{:array_sum(array_column(array_status2value('pay_status','',$list_data),'pay_amount'))}
今日充值:{$ttotal}
昨日充值:{$ytotal}
累计充值:{$total}元(此处只汇总充值成功的订单)
<td>汇总</td>
<td colspan="7">
当页充值:{:array_sum(array_column(array_status2value('pay_status','',$list_data),'pay_amount'))}
今日充值:{$ttotal}
昨日充值:{$ytotal}
累计充值:{$total}元(此处只汇总充值成功的订单)
</td>
</tr>
</tbody>
@ -153,19 +170,19 @@
</div>
</div>
<div class="page">
<a class="sch-btn" href="{:U('Export/expUser',array_merge(array('id'=>8,'xlsname'=>'平台币订单_平台币充值'),I('get.')))}">导出</a>
<a class="sch-btn" href="{:U('Export/expUser',array_merge(array('id'=>8,'xlsname'=>'平台币订单_平台币充值'),I('get.')))}">导出</a>
{$_page|default=''}
</div>
<div class="common_settings">
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
<form class="addShortcutIcon">
<input type="hidden" name="title" value="{$m_title}">
<input type="hidden" name="url" value="Deposit/lists">
</form>
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='commonset'>已添加<else />添加至常用设置</notempty></span></a>
</div>
<div class="common_settings">
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
<form class="addShortcutIcon">
<input type="hidden" name="title" value="{$m_title}">
<input type="hidden" name="url" value="Deposit/lists">
</form>
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='commonset'>已添加<else />添加至常用设置</notempty></span></a>
</div>
</block>
<block name="script">
@ -180,10 +197,10 @@
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js"
charset="UTF-8"></script>
<script>
<volist name=":I('get.')" id="vo">
Think.setValue('{$key}',"{$vo}");
</volist>
$(".select_gallery").select2();
<volist name=":I('get.')" id="vo">
Think.setValue('{$key}',"{$vo}");
</volist>
$(".select_gallery").select2();
</script>
<script type="text/javascript">
//导航高亮
@ -312,29 +329,29 @@
})
});
})
/**
* 初始化select2单选默认带搜索功能。
*/
//初始化页面加载
$(document).ready(function () {
//初始化select2单选
initSelect2WithSearch();
});
function initSelect2WithSearch() {
// $("#sel_order").select2({
// tags: true,
// placeholder: '订单状态',
// allowClear: false, //清空
// minimumResultsForSearch: Infinity, // 永久隐藏搜索框
// });
}
/**
* 初始化select2单选默认带搜索功能。
*/
//初始化页面加载
$(document).ready(function () {
//初始化select2单选
initSelect2WithSearch();
});
function initSelect2WithSearch() {
// $("#sel_order").select2({
// tags: true,
// placeholder: '订单状态',
// allowClear: false, //清空
// minimumResultsForSearch: Infinity, // 永久隐藏搜索框
// });
}
</script>
</block>

@ -25,10 +25,6 @@
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
.select2-dropdown {
z-index: 1;
}
</style>
<!-- 标题栏 -->
<div class="cf main-place top_nav_list navtab_list">

@ -99,19 +99,21 @@
<case value="3">未成年</case>
<default />意外数据
</switch>
</span>
<span class="notice-text">需玩家认证真实姓名和身份证号码</span>
</td>
</span><span class="notice-text">需玩家认证真实姓名和身份证号码</span></td>
</tr>
<tr>
<td class="l">真实姓名</td>
<td class="r">
<if condition="$data['real_name'] eq null">
<input type="text" class="txt" name="real_name" value="">
<input type="text" class="txt" value="" readonly>
<else/>
<input type="text" class="txt" name="real_name" value="{$data['real_name']}">
<if condition="$is_admin eq true ">
<input type="text" class="txt" value="{$data['real_name']}" readonly>
<else />
<input type="text" class="txt" value="{$data['real_name']|encryptRealName}" readonly>
</if>
</if>
<span id="relname" class="table_click"><span class="table_click_text inner-click-text">点击修改</span></span>
</td>
</tr>
<tr>
@ -366,6 +368,41 @@
});
});
$("#relname").click(function () {
layer.prompt({
formType: 3,
title: "请输入真实姓名",
value: ''
}, function (real_name) {
var jsid = $('#selfid').val();
var realName = /^[\u4E00-\u9FA5]{2,4}$/;
if(!realName.test(real_name)){
layer.msg("真实姓名填写有误");
return false;
}
$.ajax({
url: '{:U("changeprelname")}',
type: 'post',
dataType: 'json',
data: {real_name:real_name,id:jsid},
success: function (data) {
if (data.status > 0) {
layer.msg(data.msg);
setTimeout(function(){
self.location.reload(true);
},1500);
} else {
layer.msg(data.msg)
}
},
error: function () {
alert("服务器故障!");
}
});
});
});
$("#idcard").click(function () {
layer.prompt({
formType: 3,

@ -154,7 +154,12 @@
<td>{$data.register_time|date='Y-m-d H:i:s',###}</td>
<td>{$data.register_ip}</td>
<td>
{:get_promote_parent_acc($data['promote_id'])}
<if condition="$is_admin eq true ">
{:get_promote_parent_acc($data['promote_id'])}
<else />
{:encryptStr(get_promote_parent_acc($data['promote_id']))}
</if>
</td>
<td>
{:get_business_affairs_account($data['ba_id'])}

@ -224,14 +224,22 @@
<td>{:set_show_time($data['create_time'])}</td>
<td>{:set_show_time($data['last_login_time'])}</td>
<td>{:get_promote_levels($data['id'])}</td>
<td>{:getTopPromote($data['id'])['account']}</td>
<td>
<if condition="$is_admin eq true ">
{:getTopPromote($data['id'])['account']}
<else />
{:encryptStr(getTopPromote($data['id'])['account'])}
</if>
</td>
<td>{:get_business_affairs_account($data['ba_id'])}</td>
<td><if condition="$data['status'] eq 0">
<span class="preview_status">{:get_info_status($data['status'],3)}</span>
<td>
<?php $status_str = get_info_status($data['status'],3); $status_str = $status_str ?: '待审核';?>
<if condition="$data['status'] eq 0">
<span class="preview_status">{$status_str}</span>
<elseif condition="$data['status'] eq 2 " />
<span class="disabled_status">{:get_info_status($data['status'],3)}</span>
<span class="disabled_status">{$status_str}</span>
<else/>
{:get_info_status($data['status'],3)}
{$status_str}
</if>
</td>
<td>
@ -599,7 +607,8 @@
jsgameid();
}else{
alert('请求失败');
var tip_msg = res.info ? res.info : '操作失败';
layer.msg(tip_msg);
}
});
});

@ -186,7 +186,13 @@
{$data.promote_account|encryptStr}
</if>
</td>
<td>{:get_promote_parent_acc($data['promote_id'])}</td>
<td>
<if condition="$is_admin eq true ">
{:get_promote_parent_acc($data['promote_id'])}
<else />
{:encryptStr(get_promote_parent_acc($data['promote_id']))}
</if>
</td>
<td>
<if condition="$is_admin eq true ">
{$data.user_account}

@ -10,7 +10,7 @@
<link rel="stylesheet" type="text/css" href="__CSS__/style.css" media="all">
<block name="css"></block>
<link rel="stylesheet" type="text/css" href="__CSS__/{$Think.config.COLOR_STYLE}.css" media="all">
<!--[if lt IE 9]>
<script type="text/javascript" src="__STATIC__/jquery-1.10.2.min.js"></script>
<![endif]--><!--[if gte IE 9]><!-->
@ -77,7 +77,7 @@
</div>
</div>
</div>
<!--下拉样式-->
<script type="text/javascript">
$(function(){
@ -89,23 +89,23 @@ $(function(){
}else{
ul.slideUp();
}
});
});
$('.jscbtn').click(function() {
$(this).siblings().slideToggle(200);
$(this).siblings().slideToggle(200);
return false;
});
$('.jssetcolor').click(function() {
var that = $(this),value=that.attr('data-value');
var par = that.closest('.jssubjectlist');
if (that.hasClass('disabled')) {return false;}
$('.jssetcolor').addClass('disabled');
$.post('{:U("Admin/set_color_style")}',{value:value},function(data) {
if (data.status==1) {
updateAlert(data.info,'tip_right');
@ -113,7 +113,7 @@ $(function(){
$('#tip').find('.tipclose').click();
setTimeout(function(){location.reload();},300);
},1500);
} else {
updateAlert(data.info,'tip_error');
setTimeout(function(){
@ -123,13 +123,13 @@ $(function(){
$('.jssetcolor').removeClass('disabled');
}
},'json');
return false;
});
})
</script>
<div id="tip" class="tip"><a class="tipclose hidden" ></a><div class="tipmain"><div class="tipicon"></div><div class="tipinfo">这是内容</div></div></div>
@ -138,7 +138,7 @@ $(function(){
var content = $('#main');
var top_alert = $('#tip');
//$('body').append('<div class="notice"><div><i></i>成功</div></div>');
top_alert.find('.tipclose').on('click', function () {
top_alert.removeClass('block').slideUp(200);
// content.animate({paddingTop:'-=55'},200);
@ -155,7 +155,7 @@ $(function(){
}
});
})
$('.new li:eq(1)').click(function(){
$.ajax({
type: 'POST',
@ -204,7 +204,7 @@ $(function(){
</div>
<div class="fgx">功能菜单</div>
<!-- 子导航 -->
<block name="sidebar">
<div id="subnav" class="subnav">
@ -255,7 +255,7 @@ $(function(){
<!-- nav -->
</block>
<if condition="CONTROLLER_NAME neq 'Index' ">
</if>
<block name="body"> </block>
</div>
@ -315,11 +315,11 @@ $(function(){
$this.next().slideToggle("fast").siblings(".side-sub-menu:visible").
prev("h3").addClass('no').find("i").addClass("icon-fold").end().end().hide();
});*/
$("#subnav").on("click", "h3", function(event){
var e = event || window.event;
var target = $(e.target);
var $this = $(this);
var $this = $(this);
if ($this.index() == target.index())
$this.find(".icon").toggleClass("icon-fold");
else
@ -327,7 +327,7 @@ $(function(){
$this.next().slideToggle("fast").siblings(".side-sub-menu:visible").
prev("h3").find("i").addClass("icon-fold").end().end().hide();
});
$("#subnav h3 a").click(function(e){e.stopPropagation()});

@ -1,79 +1,79 @@
<extend name="Public/base" />
<meta http-equiv="Content-Type" content="text/html; charset=utf8" />
<block name="body">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<script type="text/javascript" src="__STATIC__/layer3/layer.js"></script>
<style>
.select2-container--default .select2-selection--single {
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<script type="text/javascript" src="__STATIC__/layer3/layer.js"></script>
<style>
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
.badge {
position: relative;
display: inline-block;
padding: 0 6px;
font-size: 12px;
text-align: center;
background-color: #1E9FFF;
color: #fff;
border-radius: 2px;
height: 18px;
line-height: 18px;
margin-right: 10px;
}
</style>
<!-- 标题栏 -->
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
.badge {
position: relative;
display: inline-block;
padding: 0 6px;
font-size: 12px;
text-align: center;
background-color: #1E9FFF;
color: #fff;
border-radius: 2px;
height: 18px;
line-height: 18px;
margin-right: 10px;
}
</style>
<!-- 标题栏 -->
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">角色查询</h3>
<p class="description_text">说明:角色查询仅作为玩家角色查询的辅助工具,使用此功能需先保证游戏对接已经获取相关参数</p>
</div>
<div class="cf top_nav_list">
<div class="cf top_nav_list">
<!-- 高级搜索 -->
<div class="jssearch fl cf search_list">
<div class="input-list search-title-box">
<label>搜索:</label>
<div class="jssearch fl cf search_list">
<div class="input-list search-title-box">
<label>搜索:</label>
</div>
<div class="input-list">
<div class="input-list">
<input type="text" name="user_account" class="" value="{:I('user_account')}" placeholder="玩家账号">&nbsp;&nbsp;&nbsp;
</div>
<div class="input-list">
<input type="text" name="role_name" class="" value="{:I('role_name')}" placeholder="角色名称">&nbsp;&nbsp;&nbsp;
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="game_name" name="game_name" class="select_gallery" >
<option value="">游戏名称</option>
<volist name=":getAllGame()" id="vo">
<option value="{$vo.game_name}" <?php echo $vo.relation_game_name == I('game_name') ? 'selected':''; ?> >{$vo.game_name}</option>
</volist>
</select>
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="game_type" name="game_type" class="select_gallery" >
<option value="">设备类型</option>
<option value="1" <?php echo I('game_type') == 1 ? "selected" : ''?>>安卓</option>
<option value="2" <?php echo I('game_type') == 2 ? "selected" : ''?>>苹果</option>
</select>
</div>
<input type="text" name="role_name" class="" value="{:I('role_name')}" placeholder="角色名称">&nbsp;&nbsp;&nbsp;
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="game_name" name="game_name" class="select_gallery" >
<option value="">游戏名称</option>
<volist name=":getAllGame()" id="vo">
<option value="{$vo.game_name}" <?php echo $vo.relation_game_name == I('game_name') ? 'selected':''; ?> >{$vo.game_name}</option>
</volist>
</select>
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="game_type" name="game_type" class="select_gallery" >
<option value="">设备类型</option>
<option value="1" <?php echo I('game_type') == 1 ? "selected" : ''?>>安卓</option>
<option value="2" <?php echo I('game_type') == 2 ? "selected" : ''?>>苹果</option>
</select>
</div>
<div class="input-list input-list-server search_label_rehab">
<select id="server_id" name="server_id" class="select_gallery" style="width:120px;">
<option value="">区服名称</option>
@ -101,63 +101,75 @@
<input type="text" readonly id="time_start" name="time_start" class="" value="{:I('time_start')}" placeholder="创角开始时间" />
&nbsp;-&nbsp;
<div class="input-append date" id="datetimepicker" style="display:inline-block">
<input type="text" readonly id="time_end" name="time_end" class="" value="{:I('time_end')}" placeholder="创角结束时间" />
<span class="add-on"><i class="icon-th"></i></span>
<input type="text" readonly id="time_end" name="time_end" class="" value="{:I('time_end')}" placeholder="创角结束时间" />
<span class="add-on"><i class="icon-th"></i></span>
</div>
</div>
<div class="input-list">
<div class="input-list">
<a class="sch-btn" href="javascript:;" id="search" url="{:U('rolelist',array('row'=>I('row')))}">搜索</a>
</div>
</div>
</div>
</div>
<!-- 数据列表 -->
<div class="data_list">
<table class="">
<thead>
<tr>
<th class="">创角时间</th>
<th class="">玩家账号</th>
<th class="">游戏名称</th>
<th class="">游戏区服ID</th>
<th class="">游戏区服</th>
<th class="">角色ID</th>
<th class="">角色名</th>
<th class="">游戏等级</th>
<th class="">所属推广员</th>
<th class="">最后登录时间</th>
<th class="">最后登录IP</th>
<!-- <th class="">操作</th> -->
</tr>
</thead>
<tbody>
<notempty name="list">
<volist name="list" id="data">
<tr>
<td>{$data.create_time|date='Y-m-d H:i:s',###}</td>
<td>{$data.user_account} </td>
<?php $gamename = trim($data['game_name']);
$servername = trim($data['server_name']);
$rolename = trim($data['role_name']);?>
<td><notempty name="gamename">{$gamename}<else /></notempty></td>
<td><span class="badge">{$data['server_id']}</span></td>
<td><notempty name="servername">{$servername}<else /></notempty></td>
<td><span class="badge">{$data['role_id']}</span></td>
<td><notempty name="rolename">{$rolename}<else /></notempty></td>
<td>{$data.role_level}</td>
<td>{$data.promote_account}</td>
<td><?= date('Y-m-d H:i:s', $data['play_time']) ?></td>
<td>{$data.play_ip}</td>
<!-- <td><a class="ajax-get" href="{:U('user_update',['ids'=>$data['id']])}">更新</a></td> -->
</tr>
</volist>
<else/>
<td colspan="9" class="text-center">aOh! 暂时还没有内容!</td>
</notempty>
</tbody>
</table>
</div>
<table class="">
<thead>
<tr>
<th class="">创角时间</th>
<th class="">玩家账号</th>
<th class="">游戏名称</th>
<th class="">游戏区服ID</th>
<th class="">游戏区服</th>
<th class="">角色ID</th>
<th class="">角色名</th>
<th class="">游戏等级</th>
<th class="">所属推广员</th>
<th class="">最后登录时间</th>
<th class="">最后登录IP</th>
<!-- <th class="">操作</th> -->
</tr>
</thead>
<tbody>
<notempty name="list">
<volist name="list" id="data">
<tr>
<td>{$data.create_time|date='Y-m-d H:i:s',###}</td>
<td>
<if condition="$is_admin eq true ">
{$data.user_account}
<else />
{$data.user_account|encryptStr}
</if>
</td>
<?php $gamename = trim($data['game_name']);
$servername = trim($data['server_name']);
$rolename = trim($data['role_name']);?>
<td><notempty name="gamename">{$gamename}<else /></notempty></td>
<td><span class="badge">{$data['server_id']}</span></td>
<td><notempty name="servername">{$servername}<else /></notempty></td>
<td><span class="badge">{$data['role_id']}</span></td>
<td><notempty name="rolename">{$rolename}<else /></notempty></td>
<td>{$data.role_level}</td>
<td>
<if condition="$is_admin eq true ">
{$data.promote_account}
<else />
{$data.promote_account|encryptStr}
</if>
</td>
<td><?= date('Y-m-d H:i:s', $data['play_time']) ?></td>
<td>{$data.play_ip}</td>
<!-- <td><a class="ajax-get" href="{:U('user_update',['ids'=>$data['id']])}">更新</a></td> -->
</tr>
</volist>
<else/>
<td colspan="9" class="text-center">aOh! 暂时还没有内容!</td>
</notempty>
</tbody>
</table>
</div>
<div class="page">
<a class="sch-btn" href="{:U('Export/expUser',array(
<a class="sch-btn" href="{:U('Export/expUser',array(
'id'=>1,
'user_account'=>I('user_account'),
'game_name'=>I('game_name'),
@ -172,25 +184,25 @@
))}">导出</a>
{$_page}
</div>
<div class="common_settings">
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
<form class="addShortcutIcon">
<input type="hidden" name="title" value="{$m_title}">
<input type="hidden" name="url" value="User/rolelist">
</form>
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='commonset'>已添加<else />添加至常用设置</notempty></span></a>
</div>
<div class="common_settings">
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
<form class="addShortcutIcon">
<input type="hidden" name="title" value="{$m_title}">
<input type="hidden" name="url" value="User/rolelist">
</form>
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='commonset'>已添加<else />添加至常用设置</notempty></span></a>
</div>
</block>
<block name="script">
<script>
<volist name=":I('get.')" id="vo">
Think.setValue('{$key}',"{$vo}");
</volist>
$(".select_gallery").select2();
</script>
<script>
<volist name=":I('get.')" id="vo">
Think.setValue('{$key}',"{$vo}");
</volist>
$(".select_gallery").select2();
</script>
<script src="__STATIC__/thinkbox/jquery.thinkbox.js"></script>
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
@ -198,159 +210,159 @@ $(".select_gallery").select2();
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
<script type="text/javascript">
//搜索功能
$("#search").click(function(){
var url = $(this).attr('url');
var query = $('.jssearch').find('input').serialize();
query += "&" + $('.jssearch').find('select').serialize();
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g,'');
query = query.replace(/^&/g,'');
if( url.indexOf('?')>0 ){
url += '&' + query;
}else{
url += '?' + query;
}
var start = $("#time_start").val();
var end = $("#time_end").val();
if(start !='' && end != ''){
if (Date.parse(start) > Date.parse(end)){
layer.msg('开始时间必须小于等于结束时间');
<script type="text/javascript">
//搜索功能
$("#search").click(function(){
var url = $(this).attr('url');
var query = $('.jssearch').find('input').serialize();
query += "&" + $('.jssearch').find('select').serialize();
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g,'');
query = query.replace(/^&/g,'');
if( url.indexOf('?')>0 ){
url += '&' + query;
}else{
url += '?' + query;
}
var start = $("#time_start").val();
var end = $("#time_end").val();
if(start !='' && end != ''){
if (Date.parse(start) > Date.parse(end)){
layer.msg('开始时间必须小于等于结束时间');
return false;
}
}
window.location.href = url;
});
//回车搜索
$(".search-input").keyup(function(e){
if(e.keyCode === 13){
$("#search").click();
return false;
}
});
//导航高亮
highlight_subnav('{:U('User/rolelist')}');
if('{$Think.get.game_name}'!=''){
$('#select2-game_id-container').text('{$Think.get.game_name}');
}
window.location.href = url;
});
//回车搜索
$(".search-input").keyup(function(e){
if(e.keyCode === 13){
$("#search").click();
return false;
}
});
//导航高亮
highlight_subnav('{:U('User/rolelist')}');
if('{$Think.get.game_name}'!=''){
$('#select2-game_id-container').text('{$Think.get.game_name}');
}
if('{$Think.get.server_id}'!=''){
$('#select2-server_id-container').text('{:get_server_name(I("server_id"))}');
}
$(".jssearch").find(".drop-down1").hover(function(){
$("#sub-sch-menu").removeClass("hidden");
},function(){
$("#sub-sch-menu").addClass("hidden");
});
if('{$Think.get.server_id}'!=''){
$('#select2-server_id-container').text('{:get_server_name(I("server_id"))}');
}
get_sever($("#game_id").find("option:selected").attr('game-id'));
$(".jssearch").find(".drop-down1").hover(function(){
$("#sub-sch-menu").removeClass("hidden");
},function(){
$("#sub-sch-menu").addClass("hidden");
});
$("#game_id").change(function(){
get_sever($(this).find("option:selected").attr('game-id'));
})
//时间
$('#time_start').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true
});
get_sever($("#game_id").find("option:selected").attr('game-id'));
$('#datetimepicker').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true,
pickerPosition:'bottom-left'
})
function get_sever(game_id){
//var game_id = game_id;//$("this").find("option:selected").attr('game-id');
if(!game_id) {return;}
$.ajax({
url:"{:U('User/get_server_lists')}",
type:"post",
dataType:"json",
data:{game_id:game_id},
success:function(result){
//$("#server_id").append("<option value='0'>请选择</option>");
if(result.status == 1){
var data = result.data;
$("#server_id").html("");
$("#server_id").append("<option value=''>请选择</option>");
for ( var i = 0; i < data.length; i++) {
var server_id = data[i].id;
var server_name = data[i].server_name;
$("#server_id").append("<option value="+server_id+">" + server_name + "</option>");
}
}else{
$("#server_id").html("");
$("#server_id").append("<option value=''>请选择</option>");
}
},
error:function(){
alert("??");
}
$("#game_id").change(function(){
get_sever($(this).find("option:selected").attr('game-id'));
})
}
var promote_id = "{:I('promote_id')}";
$("#promote_level").change(function(){
$.ajax({
url:"{:U('Ajax/getPromotersByLevelOther')}",
type:"get",
data:{level:$("#promote_level option:selected").val()},
dataType:'json',
success:function(response){
str = '<option value="">请选择推广员</option>' +
// '<option value="0"'+(promote_id && 0 == promote_id?'selected':'')+'>官方渠道</option>' +
// '<option value="UC"'+(promote_id && 'UC' == promote_id?'selected':'')+'>UC渠道</option>' +
'';
// $.each(response.data, function(index, item){
// console.log(item.id);
// str += '<option value="'+item.id+' '+(promote_id && item.id == promote_id?'selected':'')+'">'+item.nickname+'</option>';
// });
data = response.data;
for (var i in data){
str += "<option value='"+data[i].id+"' "+(promote_id && data[i].id == promote_id?'selected':'')+">"+data[i].nickname+"</option>"
}
$("#promote_id").empty();
$("#promote_id").append(str);
$("#promote_id").select2();
}
})
});
$("#promote_level").change();
var game_id = "{:I('server_id')}";
$("#game_type").change(function(){
var game_name = $("#game_name option:selected").val();
if(game_name != ''){
$.ajax({
url:"{:U('Ajax/getGmeServer')}",
type:"post",
data:{sdk_version:$("#game_type option:selected").val(), game_name:$("#game_name option:selected").val()},
dataType:'json',
success:function(data){
str = "<option value=''>请选择区服</option>";
for (var i in data){
str += "<option value='"+data[i].server_id+"' "+(game_id && data[i].server_id == game_id?'selected':'')+">"+data[i].server_name+"</option>"
}
$("#server_id").empty();
$("#server_id").append(str);
$("#server_id").select2();
//时间
$('#time_start').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true
});
$('#datetimepicker').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true,
pickerPosition:'bottom-left'
})
function get_sever(game_id){
//var game_id = game_id;//$("this").find("option:selected").attr('game-id');
if(!game_id) {return;}
$.ajax({
url:"{:U('User/get_server_lists')}",
type:"post",
dataType:"json",
data:{game_id:game_id},
success:function(result){
//$("#server_id").append("<option value='0'>请选择</option>");
if(result.status == 1){
var data = result.data;
$("#server_id").html("");
$("#server_id").append("<option value=''>请选择</option>");
for ( var i = 0; i < data.length; i++) {
var server_id = data[i].id;
var server_name = data[i].server_name;
$("#server_id").append("<option value="+server_id+">" + server_name + "</option>");
}
})
}else{
$("#server_id").html("");
$("#server_id").append("<option value=''>请选择</option>");
}else{
$("#server_id").html("");
$("#server_id").append("<option value=''>请选择</option>");
}
},
error:function(){
alert("??");
}
});
})
}
var promote_id = "{:I('promote_id')}";
$("#promote_level").change(function(){
$.ajax({
url:"{:U('Ajax/getPromotersByLevelOther')}",
type:"get",
data:{level:$("#promote_level option:selected").val()},
dataType:'json',
success:function(response){
str = '<option value="">请选择推广员</option>' +
// '<option value="0"'+(promote_id && 0 == promote_id?'selected':'')+'>官方渠道</option>' +
// '<option value="UC"'+(promote_id && 'UC' == promote_id?'selected':'')+'>UC渠道</option>' +
'';
// $.each(response.data, function(index, item){
// console.log(item.id);
// str += '<option value="'+item.id+' '+(promote_id && item.id == promote_id?'selected':'')+'">'+item.nickname+'</option>';
// });
data = response.data;
for (var i in data){
str += "<option value='"+data[i].id+"' "+(promote_id && data[i].id == promote_id?'selected':'')+">"+data[i].nickname+"</option>"
}
$("#promote_id").empty();
$("#promote_id").append(str);
$("#promote_id").select2();
}
})
});
$("#promote_level").change();
var game_id = "{:I('server_id')}";
$("#game_type").change(function(){
var game_name = $("#game_name option:selected").val();
if(game_name != ''){
$.ajax({
url:"{:U('Ajax/getGmeServer')}",
type:"post",
data:{sdk_version:$("#game_type option:selected").val(), game_name:$("#game_name option:selected").val()},
dataType:'json',
success:function(data){
str = "<option value=''>请选择区服</option>";
for (var i in data){
str += "<option value='"+data[i].server_id+"' "+(game_id && data[i].server_id == game_id?'selected':'')+">"+data[i].server_name+"</option>"
}
$("#server_id").empty();
$("#server_id").append(str);
$("#server_id").select2();
}
})
}else{
$("#server_id").html("");
$("#server_id").append("<option value=''>请选择</option>");
}
});
$("#game_name").change(function(){
$("#game_type").change();
});
$("#game_name").change();
</script>
$("#game_name").change(function(){
$("#game_type").change();
});
$("#game_name").change();
</script>
</block>

@ -934,7 +934,6 @@ class PromoteService {
'mobile_phone' => $params['mobile_phone'],
'bank_name' => $params['bank_name'] ?? '',
'bank_card' => $params['bank_card'],
// 'status' => 1,
'parent_id' => $parent ? $parent['id'] : 0,
'parent_name' => $parent ? $parent['account'] : '官方渠道',
'admin_id' => $params['admin_id'] ?? 0,

@ -18,7 +18,7 @@
position: absolute;
top: 100%;
left: 0;
z-index: 1000;
z-index: 10;
display: none;
float: left;
min-width: 160px;

@ -7,7 +7,7 @@
.select2-container .select2-search--inline{float:left;}
.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;margin-top:5px;border:none;font-size:100%;}
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none;}
.select2-dropdown{position:absolute;left:-100000px;z-index:1051;display:block;box-sizing:border-box;width:100%;border:1px solid #aaa;border-radius:4px;background-color:#fff;}
.select2-dropdown{position:absolute;left:-100000px;z-index:10;display:block;box-sizing:border-box;width:100%;border:1px solid #aaa;border-radius:4px;background-color:#fff;}
.select2-results{display:block;}
.select2-results__options{margin:0;padding:0;list-style:none;}
.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none;}

@ -17,7 +17,7 @@ body{
position: fixed;
top: 0;
left: 0;
z-index: 1000;
z-index: 9999;
width: 100%;
/* height: 50px;
line-height: 50px; */

Loading…
Cancel
Save