From 5b81f89308c057665e6a72c46bc860854b9588d5 Mon Sep 17 00:00:00 2001 From: zhanglingsheng Date: Thu, 26 Dec 2019 19:00:37 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E6=B8=B8=E6=88=8F=E7=BC=96=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Application/Admin/View/Game/edit.html | 2332 +++++++++++++++++++++++-- 1 file changed, 2184 insertions(+), 148 deletions(-) diff --git a/Application/Admin/View/Game/edit.html b/Application/Admin/View/Game/edit.html index 19a44ca51..f35767f1f 100644 --- a/Application/Admin/View/Game/edit.html +++ b/Application/Admin/View/Game/edit.html @@ -1,172 +1,2208 @@ - + + + + + + + + + -namespace Admin\Controller; + + -class SuperStatisticalController extends ThinkController -{ + +
+ - private $ticketList_url = 'https://app.ipa365.com/Kirin/OpenApi/TicketList'; - private $pay_way = [ - 0 => '未知', - 1 => '支付宝', - 2 => '微信', - ]; +
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + - public function index() { - $params = I('get.'); - $startDate = empty($params['timestart']) ? '': $params['timestart']; - $endDate = empty($params['timeend']) ? '' : $params['timeend']; - $startTime = strtotime($startDate); - $endTime = strtotime($endDate) + 86399; - if(!empty($startDate)) { + + + + - $where['pay_time'] = array('BETWEEN', [$startTime, $endTime]); - $map['pay_time'] = array('BETWEEN', [$startTime, $endTime]); - } - if(isset($params['game_id'])) { - $where['game_id'] = $params['game_id']; - $map['game_id'] = $params['game_id']; - } - $map['supersign_token'] = ['NEQ','']; - $supersign_game = M('game', 'tab_')->field('id,game_name,supersign_token')->where(['supersign_token' => ['NEQ','']])->select(); - $supersign_token = array_column($supersign_game, 'supersign_token'); - $authorization_all_num = 0; - foreach($supersign_token as $k => $v) { - $authorization_all_num += count($this->game_supersign_num($v)); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
游戏名称: + + +
游戏类型: + + +
运营平台 + + + + + + + 显示该游戏所适用的平台,一般为安卓平台和苹果平台 +
混服设置 + + + + +
开放类型 + + + + + 显示当前游戏的开放状态,一般为公测,删档内测,不删档内测等。主要APP上显示 +
显示状态 + + + + 设置该游戏是否在各个站点显示 +
显示站点 + + + + + 控制游戏在不同平台上是否进行展示,可多选,默认为全部站点显示。取消选择后,对应站点上不显示该游戏的所有数据(含礼包与开服信息) +
推荐状态 + + + + + + 设置游戏的推荐类型,更改此游戏在网站所属的推荐板块; +
游戏排序: + +
游戏下载数: + + 点击修改 +
游戏评分: + +
游戏首字母: + +
一句话简介: + +
一句话简介: + +
游戏开发商: + +
合作方: + +
游戏简介: + +
游戏资料中心: + + {:hook('adminArticleEdit', array('name'=>'content','value'=>$field['value']))} +
游戏ICON + + + +
+
+
+
上传图标
+
+
+ +
+ +
+
+
+ 尺寸不得小于125*125px,大小不得超过50K +
游戏素材包 + +
+
+
上传素材包
+
+ +
+ + + +
+

{$name}删除

+
+
+
+
+ +
+ 此处可上传该游戏的素材包,必须为压缩包形式,用于渠道后台下载推广 +
游戏推荐图 + + + + + +
+
+
+
上传图片
+
+
+ +
+ +
+
+
+ +
+ 470*350px(用于官网首屏推荐游戏位展示) +
游戏截图 + + + +
+
+
+
上传图片
+
+
+ +
+ +
+
+
+ 建议尺寸:750*1334,图片大小不超过3M +
落地页图片 + + +
+
+
上传图片
+
+ +
+ +
+
+
+ 横版游戏建议尺寸:16:9,1280*720px及以上;竖版游戏建议尺寸:9:16,720*1280px及以上,用于游戏详情页内展示 +
落地页视频 + +
+
+
上传视频
+
+ +
+ + + +
+

{$name}删除

+ +
+
+
+
+ +
+ 视频大小不能超过20M,支持格式:mp4,3gp,wmv,asf,asx,mov,m4v,avi,flv,qlv +
落地页视频封面 + + +
+
+
+
上传封面
+
+
+ +
+
+
+
+ 安卓视频封面 图片大小不得超过1M 图片比例:610 * 343 +
ios视频是否置顶: + + + + + + + +
Beta版本链接: + +
Beta版本是否开启 + + + + + +
知识产权 + +
+
+ +
+
+
+
+
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
游戏名称: + +
运营平台: + + + + + + +
下载状态: + + + + + + + +
下载端口: + + + + + 选择“第三方链接”后推广员后台-游戏列表-申请游戏页面将不显示该游戏,推广员无法进行申请。 +
* + 第三方下载地址(安卓) + + + + +
* + 第三方原包大小 +
超级签Token: + +
超级签URL: + +
超级签状态: + + + + + + + +
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
推广充值CPS比例 + % + 此处比例为推广结算时CPS模式的分成比例 +
推广注册CPA单价 + + 此处数值为推广结算时CPA模式的注册单价 +
开发者分成比例 + % + 此处比例为开发者结算时的分成比例 +
扶持额度 + +   设置游戏扶持额度 +
扶持比例 + % + 设置游戏扶持比例 +
ios版支付方式 + + + + iOS上架版游戏内支付方式的配置开关,二选一,默认是第三方支付;非上架版在系统-扩展工具-支付设置内进行配置(同Android版) + +
支付宝 + + + +
微信 + + + +
快捷支付 + + + +
是否开启强更 + + + + 开启强更后,若后台原包更新,则用户必须重新下载才可以进入游戏 +
游戏标示 + + 苹果游戏分包时需填写的游戏标示,格式无特别要求 +
游戏key + + 游戏支付通知时的加密key,可自由设置,长度不得超过32位字符串,设置完必须提供给CP方进行同步 +
游戏支付通知地址 + + 此处功能为平台用户游戏充值时,通知CP方所用,该地址由CP方提供 +
访问秘钥 + + SDK访问服务器时加密key,可自由设置,长度不得超过20位字符串 +
威富通商户号 + + 威富通申请成功以后,威富通方提供的商户号,在此处添加(需要删除,在支付配置里设置即可) + +
威富通秘钥 + + 威富通申请成功以后,威富通方提供的秘钥,在此处添加(需要删除,在支付配置里设置即可) + +
游戏支付appid + + 使用微信支付时需要的appid,需要到微信开放平台申请创建,包括官方微信支付和威富通里的微信支付(需要删除,在支付配置里设置即可) +
游戏合作id + + 游戏对接时需要的合作id,此id由CP方提供(此功能根据不同游戏CP确定是否需要使用) +
游戏包名 + + 在微信开放平台申请创建的应用包名(app.webchat.payment.agree),若无此项可不填写(待定) + +
游戏签名 + + 在微信开放平台申请创建的应用签名(fd0e6a444fd988bf23ce8a1818623b58),若无此项可不填写(待定) + + +
客服QQ + + 在游戏里遇到问题点击联系QQ + +
+
+ +
+
+

功能说明:H5分享页面,每个游戏按需如下要求进行配置;推广员申请渠道包时,自动生成对应的H5下载页面,便于推广员进行快速推广。

+

例如:{$_SERVER['HTTP_HOST']}{:str_ireplace(_PHP_FILE_,'/Index.php',U('Home/Index/game_view'))}

+
+ + + + + + + + + + + + + + + + + + + + + +
页面标题: + +
+ 分享游戏图标 + + + + +
+ +
+
+
+
+ 512*512px +
+ 分享背景图片 + + + + +
+ +
+
+
+
+ 720*1280px及以上 +
+
+
+ + + + + + + + + + + + + + + + + + + +
游戏名称: + {$data['relation_game_name']} +
等级档位一: + 第一个框输入等级名称,如:用户一级;第二个框输入玩家达到该等级所需达到的游戏账号级别数,如:10 +
等级档位二: + 第一个框输入等级名称,如:用户二级;第二个框输入玩家达到该等级所需达到的游戏账号级别数,如:20 +
等级档位三: + 第一个框输入等级名称,如:用户三级;第二个框输入玩家达到该等级所需达到的游戏账号级别数,如:30 +
+
+ +
+ + + + + + 返回 + +
+ +
+
+
+ + + +
+ + + + + + + + + + From 13f5128dd840156fb09ae970a9636116ecdc63d7 Mon Sep 17 00:00:00 2001 From: zhengyongxing Date: Thu, 26 Dec 2019 20:00:56 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E6=94=AF=E4=BB=98=E6=B8=A0=E9=81=93?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E5=AF=BC=E5=87=BAbug=E4=BF=AE=E6=AD=A3,?= =?UTF-8?q?=E6=B8=B8=E6=88=8F=E5=85=85=E5=80=BC=E5=85=85=E5=80=BC=E6=96=B9?= =?UTF-8?q?=E5=BC=8F=E6=A3=80=E7=B4=A2=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Application/Admin/Common/extend.php | 23 +++++++++++++++++++ .../Controller/PayChannelController.class.php | 2 +- Application/Admin/View/Spend/lists.html | 2 +- 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/Application/Admin/Common/extend.php b/Application/Admin/Common/extend.php index aa9ee0cc8..a6bf48085 100644 --- a/Application/Admin/Common/extend.php +++ b/Application/Admin/Common/extend.php @@ -1770,4 +1770,27 @@ function data2csv(&$data,$title,$fields){ fclose($fp); //每生成一个文件关闭 die(); } + +//所有支付方式 +function all_pay_way_other($type=false) +{ + + if($type){ + $pay_way[0]=array('key'=>0,'value'=>"平台币"); + } + $pay_way[1]=array('key'=>-1,'value'=>"绑币"); + $pay_way[2]=array('key'=>1,'value'=>"支付宝"); + $pay_way[3]=array('key'=>2,'value'=>"微信"); + $pay_way[7]=array('key'=>7,'value'=>'金猪'); + $pay_way[9]=array('key'=>9,'value'=>"双乾支付-支付宝"); + $pay_way[10]=array('key'=>10,'value'=>"双乾支付-银联"); +// $pay_way[3]=array('key'=>3,'value'=>'微信APP'); +// $pay_way[4]=array('key'=>4,'value'=>'威富通'); + /* $pay_way[4]=array('key'=>5,'value'=>'聚宝云'); */ +// $pay_way[5]=array('key'=>6,'value'=>'汇付宝'); + /* $pay_way[6]=array('key'=>7,'value'=>"苹果支付"); + */ + $pay_way[15]=array('key'=>15,'value'=>'双乾支付-快捷'); + return $pay_way; +} ?> diff --git a/Application/Admin/Controller/PayChannelController.class.php b/Application/Admin/Controller/PayChannelController.class.php index effe09071..5137e6ebe 100644 --- a/Application/Admin/Controller/PayChannelController.class.php +++ b/Application/Admin/Controller/PayChannelController.class.php @@ -284,7 +284,7 @@ class PayChannelController extends ThinkController } } $payTypeDataExport['pay_amount'] .= "平台币直充总金额(2019.12.18号以前的不显示在列表中,此项也不计入充值方式统计):". - ($coinSum + $offcialData['pay_amount'] + $spreadData['pay_amount']+$offcialTestCost); + ($coinSum); $channelDataExport['game_name'] = '支付渠道'; foreach($channelData as $key => $value) { diff --git a/Application/Admin/View/Spend/lists.html b/Application/Admin/View/Spend/lists.html index 79a45ad5a..39ac2ed7b 100644 --- a/Application/Admin/View/Spend/lists.html +++ b/Application/Admin/View/Spend/lists.html @@ -83,7 +83,7 @@
From fd23b640eabb8cce4cac27ae15e0ae20e1a1339f Mon Sep 17 00:00:00 2001 From: chenzhi Date: Thu, 26 Dec 2019 20:04:12 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=8E=A8=E5=B9=BF?= =?UTF-8?q?=E5=91=98=E5=85=85=E5=80=BC=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controller/PlatformController.class.php | 268 +++++++++--------- .../View/Platform/promotepay_statistics.html | 184 +++++++----- 2 files changed, 255 insertions(+), 197 deletions(-) diff --git a/Application/Admin/Controller/PlatformController.class.php b/Application/Admin/Controller/PlatformController.class.php index f31938318..3928991ad 100644 --- a/Application/Admin/Controller/PlatformController.class.php +++ b/Application/Admin/Controller/PlatformController.class.php @@ -56,7 +56,6 @@ class PlatformController extends ThinkController ->group('fgame_id') ->order('count desc,register_time') ->select(); -// dd($data); $map2 = array(); $map2['fgame_id'] = array('egt', 0); $map2['puid'] = 0; @@ -69,7 +68,6 @@ class PlatformController extends ThinkController ->group('fgame_id') ->select(); $data2 = array_column($data2, null, 'fgame_id'); -// dd($data2); $count = count($data); foreach ($data as $key => $value) { static $i = 0; @@ -612,19 +610,6 @@ class PlatformController extends ThinkController $week = total(2); $mounth = total(3); unset( $map['create_time']); - - //获取所有会长 - $promote_map = "`chain` = '/'"; - if (isset($_REQUEST['promote_id'])) { - $promote_map = "`chain` = '%/{$_REQUEST['promote_id']}/%' OR id = {$_REQUEST['promote_id']}"; - } - //为数据权限添加 - setPowerPromoteIds($map); - $promote_map2 = array(); - setPowerPromoteIds($promote_map2, 'id'); - $promote = M("promote","tab_")->field("id,account")->page($page,$row)->where($promote_map)->where($promote_map2)->select(); - $pcount = M("promote","tab_")->field("count(*) acount")->where($promote_map)->where($promote_map2)->find()['acount']; - // var_dump( $promote); $tweek = total(2,false); $tmonth = total(3,false); @@ -635,50 +620,68 @@ class PlatformController extends ThinkController }else{ $tmin = $tmonth[1][0]; } + + //为数据权限添加 + setPowerPromoteIds($map, 'tp1.id'); + if (isset($_REQUEST['promote_id'])) { + $map['tp1.id'] = $_REQUEST['promote_id']; + } else { + $map['tp1.chain'] = '/'; + } - $data =array(); - for ($i=0; $i < count($promote); $i++) { - # code... - $proid = M("promote","tab_")->field("id")->where("`chain` like '%/{$promote[$i]['id']}/%'")->select(); - $str = ''; - for($k=0; $kfield('floor(sum(IF(pay_time ' . $pay_time . ',pay_amount,0))*100) as count') - ->where($map) - ->find(); - $tmap = $map; - if(isset($map['pay_time'])){ - $tmap['pay_time'] = ['between', array($tmin,$tmonth[1][1])]; + + if (isset($_REQUEST['game_name'])) { + $map['s.game_name'] = $_REQUEST['game_name']; + if (isset($_REQUEST['server_id'])) { + $map['s.server_name'] = $_REQUEST['server_id']; + unset($_REQUEST['server_id']); } - $tdbdata = $spend - ->field(' - floor(sum(IF(pay_time ' . $today . ',pay_amount,0))*100) as today, - floor(sum(IF(pay_time ' . $week . ',pay_amount,0))*100) as week, - floor(sum(IF(pay_time ' . $mounth . ',pay_amount,0))*100) as mounth') - ->where($tmap) - ->find(); - $dbdata['today']= $tdbdata['today']; - $dbdata['week']= $tdbdata['week']; - $dbdata['mounth']= $tdbdata['mounth']; - - $dbdata['promote_account'] = $promote[$i]['account']; - $dbdata['promote_id'] = $promote[$i]['id']; + } + $data = M('promote', 'tab_')->alias('tp1') + ->field('tp1.account as promote_account,tp1.id, + floor(sum(pay_amount)*100) as count') + ->join("tab_promote AS tp2 ON tp2.`chain` LIKE CONCAT('%/', tp1.id, '/%') OR tp2.id = tp1.id", 'left') + ->join("tab_spend as s on tp2.id = s.promote_id", 'left') + ->where($map) + ->group('tp1.id') + ->order('count desc') + ->select(); + //今日/本周/本月不变 + $tmap = $map; + if(isset($map['pay_time'])){ + $tmap['pay_time'] = ['between', array($tmin,$tmonth[1][1])]; + } + $tdata = M('promote', 'tab_')->alias('tp1') + ->field('tp1.account as promote_account,tp1.id, + floor(sum(IF(s.pay_time ' . $today . ',pay_amount,0))*100) as today, + floor(sum(IF(s.pay_time ' . $week . ',pay_amount,0))*100) as week, + floor(sum(IF(s.pay_time ' . $mounth . ',pay_amount,0))*100) as mounth') + ->join("tab_promote AS tp2 ON tp2.`chain` LIKE CONCAT('%/', tp1.id, '/%') OR tp2.id = tp1.id", 'left') + ->join("tab_spend as s on tp2.id = s.promote_id", 'left') + ->where($tmap) + ->group('tp1.id') + ->select(); + $tmdata = []; + foreach($data as $k=>$v){ + $v['today'] = 0; + $v['week'] = 0; + $v['mounth'] = 0; + $tmdata[$v['id']] = $v; + } + foreach ($tdata as $k => $v) { + + $tmdata[$v['id']]['today'] = $v['today']; + $tmdata[$v['id']]['week'] = $v['week']; + $tmdata[$v['id']]['mounth'] = $v['mounth']; - $data[] = $dbdata; } + $data = []; + foreach($tmdata as $k => $v){ + $data[] = $v; + } + // dd($data); + $count = count($data); foreach ($data as $key => $value) { $value['count'] ?: 0; @@ -703,7 +706,7 @@ class PlatformController extends ThinkController $this->assign('userarpu_order_type', $data_order_type); } - $page = set_pagination($pcount, $row); + $page = set_pagination($count, $row); if ($page) { $this->assign('_page', $page); } @@ -712,13 +715,14 @@ class PlatformController extends ThinkController $size = $row;//每页显示的记录数 $pnum = ceil(count($data) / $size); //总页数,ceil()函数用于求大于数字的最小整数 + $data = array_slice($data, ($arraypage - 1) * $size, $size); $this->meta_title = '渠道充值统计列表'; $this->assign('list_data', $data); $this->assign("is_admin",is_administrator()); $this->display(); } - function promotepay_statistics_1($p = 0) + public function promotepay_statistics1($p = 0) { $page = intval($p); $page = $page ? $page : 1; //默认显示第一页数据 @@ -731,84 +735,97 @@ class PlatformController extends ThinkController $map1['promote_id'] = $map['promote_id'] = array('egt', 0); $spend = M('Spend', 'tab_'); if (!empty($_REQUEST['timestart']) && !empty($_REQUEST['timeend'])) { - $map['create_time'] = ['between', array(strtotime($_REQUEST['timestart']), strtotime($_REQUEST['timeend']) + 86399)]; - $pay_time = " between " . strtotime($_REQUEST['timestart']) . " and " . (strtotime($_REQUEST['timeend']) + 86399) . " "; + $map['pay_time'] = ['between', array(strtotime($_REQUEST['timestart']), strtotime($_REQUEST['timeend']) + 86399)]; unset($_REQUEST['timestart']); unset($_REQUEST['timeend']); } elseif (!empty($_REQUEST['timestart']) && empty($_REQUEST['timeend'])) { - $map['create_time'] = ['between', array(strtotime($_REQUEST['timestart']), time())]; - $pay_time = " between " . strtotime($_REQUEST['timestart']) . " and " . time() . " "; + $map['pay_time'] = ['between', array(strtotime($_REQUEST['timestart']), time())]; unset($_REQUEST['timestart']); } elseif (empty($_REQUEST['timestart']) && !empty($_REQUEST['timeend'])) { - $map['create_time'] = ['elt', strtotime($_REQUEST['timeend']) + 86399]; - $pay_time = " between 0 and " . (strtotime($_REQUEST['timeend']) + 86399) . " "; + $map['pay_time'] = ['elt', strtotime($_REQUEST['timeend']) + 86399]; unset($_REQUEST['timeend']); } else { - $pay_time = " between 0 and " . time(); + $map['pay_time'] = ['between', array(0, time())]; + // $pay_time = " between 0 and " . time(); } $map1['pay_status'] = $map['pay_status'] = 1; $today = total(1); $week = total(2); $mounth = total(3); - // $map1['pay_way'] = $map['pay_way'] = array('gt', 0); - - $bindrecharge_data = M('bind_recharge', 'tab_') - ->field('max(id) as id,promote_account,promote_id,create_time as ordertime,date_format(FROM_UNIXTIME(create_time),"%Y-%m-%d") AS time, - floor(sum(IF(create_time ' . $pay_time . ',real_amount,0))*100) as scount, - floor(sum(IF(create_time ' . $today . ',real_amount,0))*100) as today, - floor(sum(IF(create_time ' . $week . ',real_amount,0))*100) as week, - floor(sum(IF(create_time ' . $mounth . ',real_amount,0))*100) as mounth') - ->where($map1) - ->group('promote_id') - ->select(false); - - $deposit_data = M('deposit', 'tab_') - ->field('max(id) as id,promote_account,promote_id,create_time as ordertime,date_format(FROM_UNIXTIME(create_time),"%Y-%m-%d") AS time, - floor(sum(IF(create_time ' . $pay_time . ',pay_amount,0))*100) as scount, - floor(sum(IF(create_time ' . $today . ',pay_amount,0))*100) as today, - floor(sum(IF(create_time ' . $week . ',pay_amount,0))*100) as week, - floor(sum(IF(create_time ' . $mounth . ',pay_amount,0))*100) as mounth') - ->where($map1) - ->group('promote_id') - ->select(false); - if (isset($_REQUEST['game_name'])) { - $map['game_name'] = $_REQUEST['game_name']; - if (isset($_REQUEST['server_id'])) { - $map['server_name'] = $_REQUEST['server_id']; - unset($_REQUEST['server_id']); + unset( $map['create_time']); + + //获取所有会长 + $promote_map = "`chain` = '/'"; + if (isset($_REQUEST['promote_id'])) { + $promote_map = "`chain` = '%/{$_REQUEST['promote_id']}/%' OR id = {$_REQUEST['promote_id']}"; + } + //为数据权限添加 + setPowerPromoteIds($map); + $promote_map2 = array(); + setPowerPromoteIds($promote_map2, 'id'); + $promote = M("promote","tab_")->field("id,account")->page($page,$row)->where($promote_map)->where($promote_map2)->select(); + $pcount = M("promote","tab_")->field("count(*) acount")->where($promote_map)->where($promote_map2)->find()['acount']; + + // var_dump( $promote); + $tweek = total(2,false); + $tmonth = total(3,false); + //获取最小 + $tmin = 0; + if($tweek[1][0] < $tmonth[1][0]){ + $tmin = $tweek[1][0]; + }else{ + $tmin = $tmonth[1][0]; + } + + + $data =array(); + for ($i=0; $i < count($promote); $i++) { + # code... + $proid = M("promote","tab_")->field("id")->where("`chain` like '%/{$promote[$i]['id']}/%'")->select(); + $str = ''; + for($k=0; $kfield('max(id) as id,promote_account,promote_id,pay_time as ordertime,date_format(FROM_UNIXTIME(pay_time),"%Y-%m-%d") AS time, - floor(sum(IF(pay_time ' . $pay_time . ',pay_amount,0))*100) as scount, - floor(sum(IF(pay_time ' . $today . ',pay_amount,0))*100) as today, - floor(sum(IF(pay_time ' . $week . ',pay_amount,0))*100) as week, - floor(sum(IF(pay_time ' . $mounth . ',pay_amount,0))*100) as mounth') - ->where($map) - ->group('promote_id') - ->select(false); - } else { - $data = $spend - ->field('max(id) as id,promote_account,promote_id,pay_time as ordertime,date_format(FROM_UNIXTIME(pay_time),"%Y-%m-%d") AS time, - floor(sum(IF(pay_time ' . $pay_time . ',pay_amount,0))*100) as scount, - floor(sum(IF(pay_time ' . $today . ',pay_amount,0))*100) as today, - floor(sum(IF(pay_time ' . $week . ',pay_amount,0))*100) as week, - floor(sum(IF(pay_time ' . $mounth . ',pay_amount,0))*100) as mounth') + $str .= "{$promote[$i]['id']}"; + $map['promote_id'] = array("in",$str); + if (isset($_REQUEST['game_name'])) { + $map['game_name'] = $_REQUEST['game_name']; + if (isset($_REQUEST['server_id'])) { + $map['server_name'] = $_REQUEST['server_id']; + unset($_REQUEST['server_id']); + } + } + $dbdata = $spend + ->field('floor(sum(IF(pay_time ' . $pay_time . ',pay_amount,0))*100) as count') ->where($map) - // ->union(' (' . $bindrecharge_data . ') ') - // ->union(' (' . $deposit_data . ') ') - ->group('promote_id') - ->select(false); - } - $promote_map = "tp1.`chain` = '/'"; - if (isset($_REQUEST['promote_id'])) { - $promote_map = "tp1.`id` = {$_REQUEST['promote_id']}"; - unset($_REQUEST['promote_id']); + ->find(); + $tmap = $map; + if(isset($map['pay_time'])){ + $tmap['pay_time'] = ['between', array($tmin,$tmonth[1][1])]; + } + $tdbdata = $spend + ->field(' + floor(sum(IF(pay_time ' . $today . ',pay_amount,0))*100) as today, + floor(sum(IF(pay_time ' . $week . ',pay_amount,0))*100) as week, + floor(sum(IF(pay_time ' . $mounth . ',pay_amount,0))*100) as mounth') + ->where($tmap) + ->find(); + $dbdata['today']= $tdbdata['today']; + $dbdata['week']= $tdbdata['week']; + $dbdata['mounth']= $tdbdata['mounth']; + + $dbdata['promote_account'] = $promote[$i]['account']; + $dbdata['promote_id'] = $promote[$i]['id']; + + $data[] = $dbdata; } - $data = $spend->field('t.pid as promote_id,t.promote_account,sum(a.scount) AS count,sum(a.today) AS today,sum(a. WEEK) AS WEEK,sum(a.mounth) AS mounth') - ->join("inner JOIN (SELECT tp2.*, tp1.id AS pid, tp1.account as promote_account FROM tab_promote tp1 LEFT JOIN tab_promote tp2 ON tp2.`chain` LIKE CONCAT('%/', tp1.id, '/%') where $promote_map ) AS t ON promote_id = t.id or promote_id = t.pid") - ->where($condition)->table('(' . $data . ') as a')->group('t.pid')->order('count desc,a.ordertime')->select(); $count = count($data); foreach ($data as $key => $value) { + $value['count'] ?: 0; + $value['today'] ?: 0; + $value['week'] ?: 0; + $value['mounth'] ?: 0; static $i = 0; $i++; $data[$key]['rand'] = $i; @@ -816,14 +833,8 @@ class PlatformController extends ThinkController $data[$key]['today'] = $value['today'] / 100; $data[$key]['week'] = $value['week'] / 100; $data[$key]['mounth'] = $value['mounth'] / 100; - /* $adata=$this->day_data('Spend',array('promote_id'=>$value['promote_id'])); - $data[$key]['today']=$adata['today']==''?0:$adata['today']; - $data[$key]['week']=$adata['week']==''?0:$adata['week']; - $data[$key]['mounth']=$adata['mounth']==''?0:$adata['mounth']; */ - // if ($data[$key]['promote_id'] == '0') { - // unset($data[$key]); - // } - } + } + $total = $this->data_total($data); $this->assign('total', $total); if ($_REQUEST['data_order'] != '') { @@ -833,19 +844,20 @@ class PlatformController extends ThinkController $this->assign('userarpu_order_type', $data_order_type); } - $page = set_pagination($count, $row); + $page = set_pagination($pcount, $row); if ($page) { $this->assign('_page', $page); } $data = my_sort($data, $data_order_type, (int)$data_order); + $size = $row;//每页显示的记录数 $pnum = ceil(count($data) / $size); //总页数,ceil()函数用于求大于数字的最小整数 - //用array_slice(array,offset,length) 函数在数组中根据条件取出一段值;array(数组),offset(元素的开始位置),length(组的长度) - $data = array_slice($data, ($arraypage - 1) * $size, $size); $this->meta_title = '渠道充值统计列表'; $this->assign('list_data', $data); + $this->assign("is_admin",is_administrator()); $this->display(); + } public function data_total($data) diff --git a/Application/Admin/View/Platform/promotepay_statistics.html b/Application/Admin/View/Platform/promotepay_statistics.html index d951b5063..e9fbdd1a8 100644 --- a/Application/Admin/View/Platform/promotepay_statistics.html +++ b/Application/Admin/View/Platform/promotepay_statistics.html @@ -88,21 +88,51 @@ - - + + + --> + + + + + + + + + + + + @@ -121,7 +151,7 @@ - + @@ -131,7 +161,7 @@ - + @@ -209,69 +239,85 @@ // }); // }); $(".paixu").click(function(){ - $ddd=$(this).attr('date-url'); - $lzhuce="{:I('lzhuce')}"; - $phb = "{:I('phb')}"; - $dzhuce = "{:I('dzhuce')}"; - $wzhuce = "{:I('wzhuce')}"; - $mzhuce = "{:I('mzhuce')}"; - // $sss="{:I('group')}"; - if($ddd=='lzhuce'){ - if($lzhuce==1){ - $(".sortBy").attr('name','lzhuce'); - $(".sortBy").attr('value',2); - $("#search").click(); - }else{ - $(".sortBy").attr('name','lzhuce'); - $(".sortBy").attr('value',1); - $("#search").click(); - } - } - if($ddd=='phb'){ - if($phb==1){ - $(".sortBy").attr('name','phb'); - $(".sortBy").attr('value',2); - $("#search").click(); - }else{ - $(".sortBy").attr('name','phb'); - $(".sortBy").attr('value',1); - $("#search").click(); - } - } - if($ddd=='dzhuce'){ - if($dzhuce==1){ - $(".sortBy").attr('name','dzhuce'); - $(".sortBy").attr('value',2); - $("#search").click(); - }else{ - $(".sortBy").attr('name','dzhuce'); - $(".sortBy").attr('value',1); - $("#search").click(); - } - } - if($ddd=='wzhuce'){ - if($wzhuce==1){ - $(".sortBy").attr('name','wzhuce'); - $(".sortBy").attr('value',2); - $("#search").click(); - }else{ - $(".sortBy").attr('name','wzhuce'); - $(".sortBy").attr('value',1); - $("#search").click(); - } - } - if($ddd=='mzhuce'){ - if($mzhuce==1){ - $(".sortBy").attr('name','mzhuce'); - $(".sortBy").attr('value',2); - $("#search").click(); - }else{ - $(".sortBy").attr('name','mzhuce'); - $(".sortBy").attr('value',1); - $("#search").click(); - } + var that=$(this); + $data_order=that.attr('data-order'); + $order_type='{$userarpu_order}'; + if($order_type==''||$order_type=='4'){ + $(".sortBy").attr('name','data_order'); + val='3,'+$data_order; + $(".sortBy").attr('value',val); + $("#search").click(); + }else if($order_type=='3'){ + $(".sortBy").attr('name','data_order'); + val='4,'+$data_order; + $(".sortBy").attr('value',val); + $("#search").click(); } - }) + }); + // $(".paixu").click(function(){ + // $ddd=$(this).attr('date-url'); + // $lzhuce="{:I('lzhuce')}"; + // $phb = "{:I('phb')}"; + // $dzhuce = "{:I('dzhuce')}"; + // $wzhuce = "{:I('wzhuce')}"; + // $mzhuce = "{:I('mzhuce')}"; + // // $sss="{:I('group')}"; + // if($ddd=='lzhuce'){ + // if($lzhuce==1){ + // $(".sortBy").attr('name','lzhuce'); + // $(".sortBy").attr('value',2); + // $("#search").click(); + // }else{ + // $(".sortBy").attr('name','lzhuce'); + // $(".sortBy").attr('value',1); + // $("#search").click(); + // } + // } + // if($ddd=='phb'){ + // if($phb==1){ + // $(".sortBy").attr('name','phb'); + // $(".sortBy").attr('value',2); + // $("#search").click(); + // }else{ + // $(".sortBy").attr('name','phb'); + // $(".sortBy").attr('value',1); + // $("#search").click(); + // } + // } + // if($ddd=='dzhuce'){ + // if($dzhuce==1){ + // $(".sortBy").attr('name','dzhuce'); + // $(".sortBy").attr('value',2); + // $("#search").click(); + // }else{ + // $(".sortBy").attr('name','dzhuce'); + // $(".sortBy").attr('value',1); + // $("#search").click(); + // } + // } + // if($ddd=='wzhuce'){ + // if($wzhuce==1){ + // $(".sortBy").attr('name','wzhuce'); + // $(".sortBy").attr('value',2); + // $("#search").click(); + // }else{ + // $(".sortBy").attr('name','wzhuce'); + // $(".sortBy").attr('value',1); + // $("#search").click(); + // } + // } + // if($ddd=='mzhuce'){ + // if($mzhuce==1){ + // $(".sortBy").attr('name','mzhuce'); + // $(".sortBy").attr('value',2); + // $("#search").click(); + // }else{ + // $(".sortBy").attr('name','mzhuce'); + // $(".sortBy").attr('value',1); + // $("#search").click(); + // } + // } + // }) //点击排序 $('.list_sort').click(function(){ var url = $(this).attr('url'); From c590b948ef51324e6c659fbdc67fe4bc684b8a10 Mon Sep 17 00:00:00 2001 From: chenzhi Date: Thu, 26 Dec 2019 20:11:56 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=8E=A8=E5=B9=BF?= =?UTF-8?q?=E5=91=98=E5=85=85=E5=80=BC=E7=BB=9F=E8=AE=A1=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Controller/PlatformController.class.php | 10 ++++++++++ .../Admin/View/Platform/promotepay_statistics.html | 5 ++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Application/Admin/Controller/PlatformController.class.php b/Application/Admin/Controller/PlatformController.class.php index 3928991ad..349a1c216 100644 --- a/Application/Admin/Controller/PlatformController.class.php +++ b/Application/Admin/Controller/PlatformController.class.php @@ -715,6 +715,16 @@ class PlatformController extends ThinkController $size = $row;//每页显示的记录数 $pnum = ceil(count($data) / $size); //总页数,ceil()函数用于求大于数字的最小整数 + if(isset($_REQUEST['export'])){ + data2csv($data,'推广员充值统计',array( + "promote_account"=>"推广员账号", + "count"=>"累计充值", + "rand"=>"排行榜", + "today"=>"今日充值", + "week"=>"本周充值", + "mounth"=>"本月充值", + )); + } $data = array_slice($data, ($arraypage - 1) * $size, $size); $this->meta_title = '渠道充值统计列表'; $this->assign('list_data', $data); diff --git a/Application/Admin/View/Platform/promotepay_statistics.html b/Application/Admin/View/Platform/promotepay_statistics.html index e9fbdd1a8..ef0284de1 100644 --- a/Application/Admin/View/Platform/promotepay_statistics.html +++ b/Application/Admin/View/Platform/promotepay_statistics.html @@ -172,9 +172,8 @@
- 导出 + 导出 {$_page|default=''}
From 47595c81b8205b3fad148e0d90551c38e9adb9ec Mon Sep 17 00:00:00 2001 From: chenzhi Date: Thu, 26 Dec 2019 20:38:44 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=85=AC=E4=BC=9A?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E5=85=AC=E5=8F=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FinancePromoteController.class.php | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/Application/Admin/Controller/FinancePromoteController.class.php b/Application/Admin/Controller/FinancePromoteController.class.php index 9e4cf147a..0ba98edde 100644 --- a/Application/Admin/Controller/FinancePromoteController.class.php +++ b/Application/Admin/Controller/FinancePromoteController.class.php @@ -56,19 +56,19 @@ class FinancePromoteController extends AdminController $senddata[$v['p_id']] = $v; }; } - if(array_key_exists(0,$senddata) || $_REQUEST['promote_id']==0){ - $pmap['status']=1; - if($istimeselect){ - $pmap['create_time'] = $istimeselect; - } - $admininside = M("provide_user p","tab_")->field("sum(amount) amount")->where($pmap)->find(); - if($admininside['amount'] >0){ - $senddata[0]['inside_cash_count']= $admininside['amount']; + if(!empty($senddata)){ + if(array_key_exists(0,$senddata) || $_REQUEST['promote_id']==0){ + $pmap['status']=1; + if($istimeselect){ + $pmap['create_time'] = $istimeselect; + } + $admininside = M("provide_user p","tab_")->field("sum(amount) amount")->where($pmap)->find(); + if($admininside['amount'] >0){ + $senddata[0]['inside_cash_count']= $admininside['amount']; + } + } - } - - $data = []; $count =array( "cash_count"=>0, @@ -132,6 +132,9 @@ class FinancePromoteController extends AdminController } } } + if (isset($_REQUEST['company_id'])) { + $map['promote.company_id'] = $_REQUEST['company_id']; + } if($type == "spend"){ if (isset($_REQUEST['game_name']) || isset($_REQUEST['game_type'])) { $map["s.game_id"] = array("in",implode(',', array_column(getGameByName($_REQUEST['game_name'], $_REQUEST['game_type']), 'id')) ); From f38e007d802a52522b75fbbecddf9c844607ed90 Mon Sep 17 00:00:00 2001 From: chenzhi Date: Thu, 26 Dec 2019 20:42:43 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=B8=A0=E9=81=93?= =?UTF-8?q?=E7=9A=84=E5=85=AC=E5=8F=B8=E6=A3=80=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin/Controller/FinancePromoteController.class.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Application/Admin/Controller/FinancePromoteController.class.php b/Application/Admin/Controller/FinancePromoteController.class.php index 0ba98edde..63409d2dc 100644 --- a/Application/Admin/Controller/FinancePromoteController.class.php +++ b/Application/Admin/Controller/FinancePromoteController.class.php @@ -292,6 +292,9 @@ class FinancePromoteController extends AdminController } } } + if (isset($_REQUEST['company_id'])) { + $map['promote.company_id'] = $_REQUEST['company_id']; + } if ($type == "spend") { if (isset($_REQUEST['game_name']) || isset($_REQUEST['game_type'])) { $map["s.game_id"] = array("in",implode(',', array_column(getGameByName($_REQUEST['game_name'], $_REQUEST['game_type']), 'id')) ); From 1d69c616d61b44a77aedfdbce8389d74c62ff36e Mon Sep 17 00:00:00 2001 From: chenzhi Date: Thu, 26 Dec 2019 20:51:27 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=85=AC=E4=BC=9A?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E9=A1=B5=E9=9D=A2=E8=B7=B3=E8=BD=AC=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Application/Admin/View/FinancePromote/index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Application/Admin/View/FinancePromote/index.html b/Application/Admin/View/FinancePromote/index.html index 836fdadf4..9f60ea626 100644 --- a/Application/Admin/View/FinancePromote/index.html +++ b/Application/Admin/View/FinancePromote/index.html @@ -239,8 +239,8 @@
From b96e65b8fe9b320d7acee2a0e4a706a527c06a9e Mon Sep 17 00:00:00 2001 From: zhengyongxing Date: Thu, 26 Dec 2019 21:05:11 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E6=B8=B8=E6=88=8F=E5=85=85=E5=80=BC?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E6=A3=80=E7=B4=A2=E6=9D=A1=E4=BB=B6=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Application/Admin/Controller/FinanceController.class.php | 2 +- Application/Admin/Controller/PlatformController.class.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Application/Admin/Controller/FinanceController.class.php b/Application/Admin/Controller/FinanceController.class.php index 76b31514d..f3a6da5fb 100644 --- a/Application/Admin/Controller/FinanceController.class.php +++ b/Application/Admin/Controller/FinanceController.class.php @@ -1079,7 +1079,7 @@ class FinanceController extends ThinkController //推广后台 $spreadData = M("coin_pay_order","tab_") - ->field("pay_way,'' as pay_type,sum(real_amount) as pay_amount") + ->field("pay_way,'' as pay_type,sum(pay_amount) as pay_amount") ->where([ 'order_status'=>['egt',1], 'pay_way'=>['egt',1],'pay_time'=>$time diff --git a/Application/Admin/Controller/PlatformController.class.php b/Application/Admin/Controller/PlatformController.class.php index 349a1c216..fa791fe73 100644 --- a/Application/Admin/Controller/PlatformController.class.php +++ b/Application/Admin/Controller/PlatformController.class.php @@ -137,12 +137,12 @@ class PlatformController extends ThinkController //为数据权限添加 setPowerPromoteIds($map); + $map['game_id'] = array('gt', 0); // var_dump($_REQUEST);exit; if (isset($_REQUEST['game_name']) && $_REQUEST['game_name'] != '') { $map['game_id'] = $_REQUEST['game_name']; unset($_REQUEST['game_name']); } - $map['game_id'] = array('gt', 0); $map['pay_status'] = 1; $today = total(1); $week = total(2);
排行榜 今日充值 本周充值 本月充值
推广员账号累计充值▲ + 累计充值▼ + 累计充值 + 排行榜▲ + 排行榜▼ + 排行榜 + + 今日充值▲ + 今日充值▼ + 今日充值 + + 本周充值▲ + 本周充值▼ + 本周充值 + + + 本月充值▲ + 本月充值▼ + 本月充值 +
{$data['promote_account']} {$data.count}{$data.rand}{$data.rand}{$data.rand}{$data.rand} {$data.today} {$data.week} {$data.mounth}
汇总 {$total.sum_count}--- {$total.sum_today} {$total.sum_week} {$total.sum_mounth}{$all_count['all_count']} 游戏查看 - 渠道查看 + href="{:U('FinancePromote/gameStatistics',array_merge(I('get.'),['promote_type'=>1,'p'=>1]))}">游戏查看 + 渠道查看