Merge branch 'feature/payset_change' into release

master
zhengyongxing 5 years ago
commit 72da832bb5

@ -48,7 +48,7 @@ class AdminController extends Controller {
if ( false === $access ) {
$this->error('403:禁止访问');
}elseif(null === $access ){
$access_controller = ['Ajax', 'Finance', 'FinancePromote', 'PayChannel'];
$access_controller = ['Ajax', 'Finance', 'FinancePromote', 'PayChannel','FinanceCompare'];
if(!in_array(CONTROLLER_NAME, $access_controller)){//ajax放行
//检测访问权限
$rule = strtolower(MODULE_NAME.'/'.CONTROLLER_NAME.'/'.ACTION_NAME);

@ -0,0 +1,515 @@
<?php
namespace Admin\Controller;
class FinanceCompareController extends ThinkController
{
public $zfb = [1];//官方支付宝渠道id
public $wx = [2,3];//微信渠道id
public $ybzf = [17];//易宝渠道id
public $erro_size = 20000;//商家不存在的错误阈值,到达就不执行
public $page_size = 300;//每次执行比较的数量
public $payway = [
"1"=>"支付宝",
"2"=>"微信",
"3"=>"易宝"
];
public $checktype=[
"1"=>"金额不符",
"2"=>"商家数据缺失",
"3"=>"平台数据缺失",
"4"=>"状态不符",
"5"=>"渠道不符"
];
public $readtype=[
"0"=>"未处理",
"1"=>"已处理"
];
public function index($p=1)
{
$page = intval($p);
$page = $page ? $page : 1; //默认显示第一页数据
$arraypage = $page;
if (isset($_REQUEST['row'])) {
$row = $_REQUEST['row'];
} else {
$row = 10;
}
$map=["check_status"=>1];
if ($_REQUEST['pay_way'] != '') {
$map['pay_way'] = $_REQUEST['pay_way'];
}
$listdata = M("finance_compare","tab_")->where($map)->order("create_time desc");
if(isset($_REQUEST['export'])){
$listdata = $listdata->select();
$count = M("finance_compare","tab_")->where($map)->count();
}else{
$listdata = $listdata->page($page,$row)->select();
$count = count($listdata);
}
foreach ($listdata as $k => &$v) {
$v['begin_time']=date("Y-m-d H:i:s",$v['begin_time']);
$v['end_time']=date("Y-m-d H:i:s",$v['end_time']);
$v['compare_time'] = $v['begin_time']." 至 ".$v['end_time'];
$v['create_time']=date("Y-m-d H:i:s",$v['create_time']);
$v['pay_way']=$this->payway[$v['pay_way']];
}
if(isset($_REQUEST['export'])){
$GetData = $_GET;
unset($GetData['export']);
addOperationLog(['op_type'=>3,'key'=>getNowDate(),'url'=>U(CONTROLLER_NAME.'/'.ACTION_NAME,$GetData),'menu'=>"统计-数据校验-订单校验-导出"]);
data2csv($listdata,'订单校验',array(
"id"=>"序号",
"compare_time"=>"校验时间范围",
"pay_way"=>"支付渠道",
"check_count"=>"校验数量",
"diff_count"=>"异常数量",
"diff_money"=>"异常金额",
"create_time"=>"校验时间"
));
}
$page = set_pagination($count,$row);
if($page) {$this->assign('_page', $page);}
$this->assign('list_data',$listdata);
$this->assign('pay_way_list',$this->payway);
$this->display();
}
public function add()
{
$this->assign("page_size",$this->page_size);
$this->display();
}
public function list($p=1)
{
$page = intval($p);
$page = $page ? $page : 1; //默认显示第一页数据
$arraypage = $page;
if (isset($_REQUEST['row'])) {
$row = $_REQUEST['row'];
} else {
$row = 10;
}
if (isset($_REQUEST['compare_id'])) {
$compare_id = $_REQUEST['compare_id'];
}else{
$this->error("参数错误");
}
$map=["type"=>["gt",0],"compare_id"=>$compare_id];
if ($_REQUEST['pay_order_number'] != '') {
$map['pay_order_number'] = $_REQUEST['pay_order_number'];
}
if ($_REQUEST['is_read'] != '') {
$map['is_read'] = $_REQUEST['is_read'];
}
if ($_REQUEST['type'] != '') {
$map['type'] = $_REQUEST['type'];
}
$listdata = M("finance_compare_info","tab_")->where($map);
if(isset($_REQUEST['export'])){
$listdata = $listdata->select();
}else{
$listdata = $listdata->page($page,$row)->select();
}
foreach ($listdata as $k => &$v) {
$v['pay_way']=$this->payway[$v['pay_way']];
$v['type']=$this->checktype[$v['type']];
$v['read_str']=$this->readtype[$v['is_read']];
}
if(isset($_REQUEST['export'])){
$GetData = $_GET;
unset($GetData['export']);
addOperationLog(['op_type'=>3,'key'=>getNowDate(),'url'=>U(CONTROLLER_NAME.'/'.ACTION_NAME,$GetData),'menu'=>"统计-数据校验-订单校验-订单校验详情-导出"]);
data2csv($listdata,'订单校验详情',array(
"pay_order_number"=>"订单号",
"pay_way"=>"支付渠道",
"read_str"=>"状态",
"pt_pay_amount"=>"平台支付金额",
"sj_pay_amount"=>"商家订单金额",
"diff_money"=>"相差金额",
"type"=>"原因分类"
));
}
$count = M("finance_compare_info","tab_")
->field("count(*) count,
SUM(CASE WHEN is_read = 0 THEN pt_pay_amount ELSE 0 END) as noread_pt_pay_amount,
SUM(CASE WHEN is_read = 0 THEN sj_pay_amount ELSE 0 END) as noread_sj_pay_amount,
SUM(CASE WHEN is_read = 0 THEN diff_money ELSE 0 END) as noread_diff_money,
SUM(pt_pay_amount) pt_pay_amount,
SUM(sj_pay_amount) sj_pay_amount,
SUM(diff_money) diff_money")
->where($map)
->find();
$page = set_pagination($count['count'],$row);
if($page) {$this->assign('_page', $page);}
$this->assign('list_data',$listdata);
$this->assign('count_data',$count);
$this->assign('read_type',$this->readtype);
$this->assign('check_type',$this->checktype);
$this->display();
}
public function changeRead()
{
if (isset($_REQUEST['id']) && isset($_REQUEST['is_read']) && isset($_REQUEST['compare_id'])) {
$id = $_REQUEST['id'];
$is_read = $_REQUEST['is_read'];
$compare_id = $_REQUEST['compare_id'];
}else{
$this->error("参数错误");
}
//处理数据
$info = M("finance_compare_info","tab_")->where("id={$id}")->find();
if($info['is_read'] != $is_read){
$this->ajaxReturn(array("error"=>"此单已标记成功请勿重复点击","code"=>40001));
}
//获取
$fc = M("finance_compare","tab_")->where("id={$compare_id}")->find();
if($is_read == 0){
//改为已处理
$fcsavedata = [
"diff_count"=>$fc['diff_count']-1,
"diff_money"=>$fc['diff_money']-$info['diff_money'],
];
$isavedata = [
"is_read"=>1
];
}else{
//改为未处理
$fcsavedata = [
"diff_count"=>$fc['diff_count']-0+1,
"diff_money"=>$fc['diff_money']-0+$info['diff_money'],
];
$isavedata = [
"is_read"=>0
];
}
//保存
M("finance_compare","tab_")->where("id={$compare_id}")->save($fcsavedata);
M("finance_compare_info","tab_")->where("id={$id}")->save($isavedata);
$this->ajaxReturn(array("success"=>"处理成功","code"=>0));
}
/**
* 创建比较基础数据
*/
public function creatCompare()
{
$adddata = I("post.");
$adddata['create_time'] = time();
$adddata['begin_time'] = strtotime($adddata['begin_time']);
$adddata['end_time'] = strtotime($adddata['end_time'])+ 86399;
$res = M("finance_compare","tab_")->add($adddata);
if($res){
$this->ajaxReturn(array("success"=>"ok","code"=>0,"data"=>["id"=>$res]));
}else{
$this->ajaxReturn(array("error"=>"creat error","code"=>4000));
}
}
/**
* 循环比较数据
*/
public function compareData()
{
$checkdata = I('POST.');
$keys = $checkdata['keys'];
$compare_id = $checkdata['compare_id'];
$pay_way = $checkdata['pay_way'];//1支付宝 2微信 17易宝
$data = $checkdata['checkarr'];
//过滤数据
$sp=[];
$pf=[];
$er=[];
foreach($data as $k=>$v){
$v[$keys[0]] = trim($v[$keys[0]]);
$v[$keys[1]] = trim($v[$keys[1]]);
$pay_where = substr($v[$keys[0]], 0, 2);
$tmp = [
"pt_pay_amount"=>0,
"diff_money"=>$v[$keys[1]],
"sj_pay_amount"=>$v[$keys[1]],
"type"=>3,
"pay_order_number"=>$v[$keys[0]],
"compare_id"=>$compare_id,
"pay_way"=>$pay_way,
"is_read"=>0
];
if($pay_where == 'SP'){
$tmp['order_type']=1;
$sp[$v[$keys[0]]] = $tmp;
}elseif($pay_where == 'PF'){
$tmp['order_type']=2;
$pf[$v[$keys[0]]] = $tmp;
}else{
$tmp['order_type']=0;
$er[$v[$keys[0]]] = $tmp;
}
}
//判断游戏流水
if(count($sp) > 0){
$keys = implode(",",array_keys($sp));
$where = ["pay_order_number"=>["in",$keys]];
$sres = M("Spend","tab_")->field("pay_order_number,pay_amount,pay_status,pay_way")->where($where)->select();
if($sres){
$this->setDiffData($sres,$sp);
}
$saveres = $this->saveCheckData($sp);
if($saveres == false){
$this->delCompare($compare_id);
$this->ajaxReturn(array("error"=>"添加失败","code"=>40001));
}
}
//判断平台币流水
if(count($pf) > 0){
$keys = implode(",",array_keys($pf));
$where = ["pay_order_number"=>["in",$keys]];
$sres = M("Deposit","tab_")->field("pay_order_number,pay_amount,pay_status,pay_way")->where($where)->select();
if($sres){
$this->setDiffData($sres,$pf);
}
$saveres = $this->saveCheckData($pf);
if($saveres == false){
$this->delCompare($compare_id);
$this->ajaxReturn(array("error"=>"添加失败","code"=>40002));
}
}
//不存在订单添加
if(count($er) > 0){
$saveerrores = $this->saveCheckData($er);
if($saveerrores == false){
$this->delCompare($compare_id);
$this->ajaxReturn(array("error"=>"添加失败","code"=>40003));
}
}
$this->ajaxReturn(array("success"=>"ok","code"=>0,"data"=>[]));
}
/**
* 验证平台游戏流水
*/
public function checkSpendData()
{
$checkdata = I('POST.');
if ($checkdata['pay_way'] == 1) {
$check_arr = $this->zfb;
}elseif($checkdata['pay_way'] == 2){
$check_arr = $this->wx;
}elseif($checkdata['pay_way'] == 3){
$check_arr = $this->ybzf;
}
$check_arr = implode(",",$check_arr);
//组件sql
$fmap = [
"compare_id"=>$checkdata['compare_id'],
"order_type"=>1
];
//改为join
$fcisql = M("finance_compare_info","tab_")->field("pay_order_number,compare_id")->where($fmap)->select(false);
$map = [
// "pay_order_number"=>["not in",$fcisql],
"s.pay_time" => ['between', [strtotime($checkdata['begin_time']), strtotime($checkdata['end_time']) + 86399]],
"s.pay_status"=>1,
"s.pay_way"=>["in",$check_arr]
];
$res = M("Spend s","tab_")
->field("s.pay_order_number,s.pay_amount,s.pay_status,s.pay_way,ifnull(fc.compare_id,0) compare_id")
->join("( $fcisql ) fc on s.pay_order_number = fc.pay_order_number","left")
->where($map)
->having("compare_id = 0")
->limit($this->erro_size)
->select();
if(count($res) >= $this->erro_size){
$this->delCompare($checkdata['compare_id']);
$this->ajaxReturn(array("error"=>"商家不存在的数据大于{$this->erro_size}条,没有比较的意义,请确认表格的渠道和时间是否正确","code"=>40004));
}
$saveres = true;
if(count($res) > 0){
$add = [];
foreach($res as $k=>$v){
$tmp = [
"pt_pay_amount"=>$v["pay_amount"],
"diff_money"=>$v["pay_amount"],
"sj_pay_amount"=>0,
"type"=>2,
"pay_order_number"=>$v["pay_order_number"],
"compare_id"=>$checkdata['compare_id'],
"pay_way"=>$checkdata['pay_way'],
"order_type"=>1,
"is_read"=>0
];
$add[] = $tmp;
}
unset($res);
$saveres = M("finance_compare_info","tab_")->addAll($add);
}
if($saveres){
$this->ajaxReturn(array("success"=>"ok","code"=>0,"data"=>[]));
}else{
$this->delCompare($checkdata['compare_id']);
$this->ajaxReturn(array("error"=>"比对数据添加失败","code"=>40005));
}
}
/**
* 验证平台币流水
*/
public function checkDepositData()
{
$checkdata = I('POST.');
if ($checkdata['pay_way'] == 1) {
$check_arr = $this->zfb;
}elseif($checkdata['pay_way'] == 2){
$check_arr = $this->wx;
}elseif($checkdata['pay_way'] == 3){
$check_arr = $this->ybzf;
}
$check_arr = implode(",",$check_arr);
//组件sql
$fmap = [
"compare_id"=>$checkdata['compare_id'],
"order_type"=>2
];
$fcisql = M("finance_compare_info","tab_")->field("pay_order_number,compare_id")->where($fmap)->select(false);
$map = [
"create_time" => ['between', [strtotime($checkdata['begin_time']), strtotime($checkdata['end_time']) + 86399]],
"pay_status"=>1,
"pay_way"=>["in",$check_arr]
];
$res = M("Deposit s","tab_")
->field("s.pay_order_number,s.pay_amount,s.pay_status,s.pay_way,ifnull(fc.compare_id,0) compare_id")
->join("( $fcisql ) fc on s.pay_order_number = fc.pay_order_number","left")
->where($map)
->having("compare_id = 0")
->limit($this->erro_size)
->select();
if(count($res) >= $this->erro_size){
$this->delCompare($checkdata['compare_id']);
$this->ajaxReturn(array("error"=>"商家不存在的数据大于{$this->erro_size}条,没有比较的意义,请确认表格的渠道和时间是否正确","code"=>40004));
}
$saveres = true;
if(count($res) > 0){
$add = [];
foreach($res as $k=>$v){
$tmp = [
"pt_pay_amount"=>$v["pay_amount"],
"diff_money"=>$v["pay_amount"],
"sj_pay_amount"=>0,
"type"=>2,
"pay_order_number"=>$v["pay_order_number"],
"compare_id"=>$checkdata['compare_id'],
"pay_way"=>$checkdata['pay_way'],
"order_type"=>2,
"is_read"=>0
];
$add[] = $tmp;
}
unset($res);
$saveres = M("finance_compare_info","tab_")->addAll($add);
}
if($saveres){
$this->ajaxReturn(array("success"=>"ok","code"=>0,"data"=>[]));
}else{
$this->delCompare($checkdata['compare_id']);
$this->ajaxReturn(array("error"=>"比对数据添加失败","code"=>40005));
}
}
/**
* 生成最终比较统计
*/
public function creatCompareCount()
{
$checkdata = I('POST.');
$compare_id = $checkdata['compare_id'];
//统计
$imap = [
"compare_id"=>$compare_id,
"type"=>["gt",0]
];
$ires = M("finance_compare_info","tab_")->field("IFNULL(sum(diff_money),0) diff_money,IFNULL(count(*),0) count")->where($imap)->find();
$savedata = [
"diff_count"=>$ires['count'],
"diff_money"=>$ires['diff_money'],
"check_status"=>1
];
$res = M("finance_compare","tab_")->where("id='{$compare_id}'")->save($savedata);
if($res){
$this->ajaxReturn(array("success"=>"ok","code"=>0,"data"=>[]));
}else{
$this->delCompare($compare_id);
$this->ajaxReturn(array("error"=>"save error","code"=>40006));
}
}
//比较数据库与原数据
protected function setDiffData($dbres,&$ydata)
{
//type 1:金额不符 2商家数据缺失 3:平台数据缺失 4:状态不符5:渠道不符
foreach ($dbres as $k => $v) {
if(array_key_exists($v['pay_order_number'],$ydata)){
//存在
$flag = true;
$ydata[$v['pay_order_number']]['pt_pay_amount'] = $v['pay_amount'];
$ydata[$v['pay_order_number']]['diff_money'] = abs($ydata[$v['pay_order_number']]['pt_pay_amount']-$ydata[$v['pay_order_number']]['sj_pay_amount']);
if($ydata[$v['pay_order_number']]['diff_money'] > 0){//金额不符
$ydata[$v['pay_order_number']]['type'] = 1;
$flag = false;
continue;
}
if($v['pay_status'] != 1){//状态不符合
$ydata[$v['pay_order_number']]['type'] = 4;
$ydata[$v['pay_order_number']]['diff_money'] = $v['pay_amount'];
$flag = false;
continue;
}
//判断渠道
$way = $ydata[$v['pay_order_number']]['pay_way'];
if ($way == 1) {
$checkarr = $this->zfb;
}elseif($way == 2){
$checkarr = $this->wx;
}elseif($way == 3){
$checkarr = $this->ybzf;
}
if(!in_array($way,$checkarr)){//渠道不符
$ydata[$v['pay_order_number']]['type'] = 5;
$flag = false;
continue;
}
if($flag){//正常
$ydata[$v['pay_order_number']]['type'] = 0;
}
}
}
}
//添加详情
protected function saveCheckData(&$data){
$arr = [];
foreach ($data as $k => $v) {
$arr[] = $v;
}
unset($data);
$res = M("finance_compare_info","tab_")->addAll($arr);
unset($arr);
return $res;
}
//回退删除
protected function delCompare($compare_id){
M("finance_compare_info","tab_")->where("compare_id = '{$compare_id}'")->delete();
M("finance_compare","tab_")->where("id = '{$compare_id}'")->delete();
}
}

@ -425,7 +425,7 @@ class FinancialSummarySetController extends \Think\Controller
->field("
IFNULL(SUM(CASE WHEN pay_way = 2 THEN pay_price ELSE 0 END),0) as wx_count,
IFNULL(SUM(CASE WHEN pay_way = 1 THEN pay_price ELSE 0 END),0) as zfb_count,
IFNULL(SUM(CASE WHEN pay_way = 1 THEN pay_price ELSE 0 END),0) as ybzf_count
IFNULL(SUM(CASE WHEN pay_way = 17 THEN pay_price ELSE 0 END),0) as ybzf_count
")
->where($map)
->find();

@ -102,9 +102,6 @@ class GiftbagController extends ThinkController {
public function add(){
if(IS_POST){
if ($_POST['giftbag_version'] == '3') {
$whereGift['giftbag_version'] = $_POST['giftbag_version'];
$whereGift['game_id'] = $_POST['game_id'];

@ -196,7 +196,7 @@ class MemberController extends ThinkController
}
$v['register_time'] = date('Y-m-d H:i:s',$v['register_time']);
$v['login_time'] = date('Y-m-d H:i:s',$v['login_time']);
$v['login_time'] = set_show_time($v['login_time']);
$v['lock_status'] = get_info_status($v['lock_status'],4);
$v['check_status'] = $v['check_status']==1 ? "正常" :"拉黑";
$v['is_repeat'] = $v['is_repeat']==1 ? "是" :"否";

@ -227,30 +227,8 @@ class PayChannelController extends ThinkController
}
$testorderChannelArr = [];
foreach($channelData as $key=>$value) {
if($testOrderChannelDatas) {
foreach($testOrderChannelDatas as $trkey => $testOrderChannelData) {
if(intval($value['pay_way']) == intval($testOrderChannelData['pay_way'])) {
$channelData[$key]['pay_amount'] = number_format(($value['pay_amount'] + $testOrderChannelData['pay_amount']) ,2,'.','');
$channelData[$key]['pay_way'] = get_pay_way($value['pay_way']);
break;
}
else if (!in_array(intval($testOrderChannelData['pay_way']),$pay_way_arr)) {
// $channelData[$testOrderChannelData['pay_way']]['pay_amount'] = number_format($testOrderChannelData['pay_amount'],2,'.','');
$testorderChannelArr[$trkey]['pay_amount'] = number_format($testOrderChannelData['pay_amount'],2,'.','');
$testorderChannelArr[$trkey]['pay_way'] = get_pay_way($testOrderChannelData['pay_way']);
$channelData[$key]['pay_amount'] = number_format($value['pay_amount'],2,'.','');
$channelData[$key]['pay_way'] = get_pay_way($value['pay_way']);
}
else {
$channelData[$key]['pay_amount'] = number_format($value['pay_amount'],2,'.','');
$channelData[$key]['pay_way'] = get_pay_way($value['pay_way']);
}
}
} else {
$channelData[$key]['pay_amount'] = number_format($value['pay_amount'],2,'.','');
$channelData[$key]['pay_way'] = get_pay_way($value['pay_way']);
}
$channelData[$key]['pay_amount'] = number_format($value['pay_amount'],2,'.','');
$channelData[$key]['pay_way'] = get_pay_way($value['pay_way']);
if (!$value['pay_way']) {
unset($channelData[$key]);
@ -302,8 +280,9 @@ class PayChannelController extends ThinkController
$coinSum = number_format($coinSum + $offcialData['pay_amount'] + $spreadData['pay_amount']+$offcialTestCost,2,'.','');
}
$sum_pay_amount = M('test_order', 'tab_')->where($maptestorder)->field('sum(pay_amount) as sum_order_amount')->find();
$moneyAllCount = array_sum(array_column($channelData, 'pay_amount'));
$sumData['pay_amount'] += $sum_pay_amount["sum_order_amount"];
$sumData['sum'] += $sum_pay_amount["sum_order_amount"];
if($_REQUEST['export'] == 1) {
$title = array('产品名称','游戏现金金额','平台币直冲金额','测试金额','支付渠道内合计');
@ -334,7 +313,6 @@ class PayChannelController extends ThinkController
$testOrder['sum'] = $sum_pay_amount['sum_order_amount'] ?: "0";
//充值方式统计
$payTypeDataExport['game_name'] = '充值方式统计';
foreach($payTypeData as $key => $value) {
@ -376,7 +354,7 @@ class PayChannelController extends ThinkController
unset($GetData['export']);
addOperationLog(['op_type'=>3,'key'=>getNowDate(),'url'=>U(CONTROLLER_NAME.'/'.ACTION_NAME,$GetData),'menu'=>"充值-财务管理-支付渠道查看-导出"]);
//处理导出数据
data2csv(array_merge($data,[$superSignData],[$offcialData],[$spreadData],[$sumData],[$testOrder],[$payTypeDataExport],[$channelDataExport],[$channelDataExport2]),"支付渠道统计导出",array(
data2csv(array_merge($data,[$superSignData],[$offcialData],[$spreadData],[$testOrder],[$sumData],[$payTypeDataExport],[$channelDataExport],[$channelDataExport2]),"支付渠道统计导出",array(
"game_name"=>"产品名称","sdk_version"=>"设备名称","pay_amount"=>"游戏现金金额","platform_coin"=>"平台币直冲金额","test_coin"=>"测试金额","sum"=>"支付渠道内合计"));
}
@ -466,6 +444,7 @@ class PayChannelController extends ThinkController
->group('pay_way')
->select(false);
//超级签数据
$superSignDataPay = M('game_supersign','tab_')
->field("sum(pay_price) as pay_amount,pay_way")
@ -488,6 +467,7 @@ class PayChannelController extends ThinkController
if ($map['pay_time']) {
$map['create_time'] = $map['pay_time'];
$testMap['pay_time'] = $map['pay_time'];
unset($map['pay_time']);
}
//充值平台币数据
@ -521,6 +501,7 @@ class PayChannelController extends ThinkController
$bindMap['pay_way'] = array('egt',1);
if($_REQUEST['game_id']) {
$bindMap['game_id'] =$_REQUEST['game_id'];
$testMap['game_id'] =$_REQUEST['game_id'];
}
if ($map['pay_time']) {
$bindMap['create_time'] = $map['pay_time'];
@ -531,11 +512,14 @@ class PayChannelController extends ThinkController
->field('sum(real_amount) as pay_amount,pay_way')
->where($bindMap)
->select(false);
$testMap['pay_status'] = 1;
$testMap['pay_way'] = array('egt',1);
$testorderData = M('test_order', 'tab_')->field('sum(pay_amount) as pay_amount,pay_way')->where($testMap)->group('pay_way')->select(false);
if(!$_REQUEST['game_id']) {
$sql = "{$channelData} UNION ALL {$depositData} UNION ALL {$superSignDataPay} UNION ALL {$spreadDataPay} UNION ALL {$bindRechargeData}";
$sql = "{$channelData} UNION ALL {$depositData} UNION ALL {$superSignDataPay} UNION ALL {$spreadDataPay} UNION ALL {$bindRechargeData} UNION ALL {$testorderData}";
} else {
$sql = "{$channelData} UNION ALL {$depositData}";
$sql = "{$channelData} UNION ALL {$depositData} UNION ALL {$testorderData}";
}
//将语句整合起来查询

@ -181,7 +181,7 @@ class PresidentDepositController extends ThinkController
public function edit()
{
$this->meta_title = '编辑/查看会长押金';
$this->meta_title = '编辑会长押金';
$id = I('id', 0);
$promote = M('promote', 'tab_')->field(['account', 'id'])->where(['id' => $id])->find();
$record = M('president_deposit', 'tab_')->where(['promote_id' => $id])->find();
@ -192,6 +192,19 @@ class PresidentDepositController extends ThinkController
$this->display('form');
}
public function show()
{
$this->meta_title = '查看会长押金';
$id = I('id', 0);
$promote = M('promote', 'tab_')->field(['account', 'id'])->where(['id' => $id])->find();
$record = M('president_deposit', 'tab_')->where(['promote_id' => $id])->find();
$this->assign('payWays', PresidentDepositService::$payWays);
$this->assign('payTypes', PresidentDepositService::$payTypes);
$this->assign('promote', $promote);
$this->assign('record', $record);
$this->display('show');
}
public function save()
{
$payWay = I('pay_way', 0);
@ -205,14 +218,18 @@ class PresidentDepositController extends ThinkController
$promoteData = M('promote', 'tab_')->field('account')->where(['id' => $promoteId])->find();
if (!$record) {
if ($payType == 0) {
return $this->error('请选择押金付款方式');
}
if ($payType == 3) {
$this->handleNoDeposit($promoteId);
return $this->success('保存成功', U('records'));
}
if ($payType != 2 && $payWay == 0) {
return $this->error('请选择付款方式');
}
if ($payType == 0) {
return $this->error('请选择押金付款方式');
}
if ($payType != 2 && $payWay == 0) {
return $this->error('请选择付款方式');
}
if (!$record) {
if ($amount !== '') {
if (!is_numeric($amount)) {
return $this->error('请输入正确金额');
@ -237,13 +254,12 @@ class PresidentDepositController extends ThinkController
M('president_deposit', 'tab_')->add($data);
addOperationLog(['op_type'=>0,'key'=>$promoteData['account'].'/'.$amount,'op_name'=>'新增会长押金','url'=>U('PresidentDeposit/edit',['id'=>$promoteId]),'menu'=>'推广员-结算单管理-奖罚记录管理-新增会长押金']);
return $this->success('保存成功', U('PresidentDeposit/records'));
return $this->success('保存成功', U('records'));
}
if ($record['status'] != 0) {
/* if ($record['status'] != 0) {
return $this->error('该状态下不可编辑/修改');
}
} */
if ($amount === '') {
return $this->error('请输入金额');
@ -265,6 +281,8 @@ class PresidentDepositController extends ThinkController
}
$data = [];
$data['pay_way'] = $payType == 2 ? 4 : $payWay;
$data['pay_type'] = $payType;
$data['pay_account'] = $payAccount;
$data['amount'] = floatval($amount);
$data['payer'] = $payer;
@ -273,7 +291,7 @@ class PresidentDepositController extends ThinkController
addOperationLog(['op_type'=>1,'key'=>$promoteData['account'].'/'.$amount,'op_name'=>'编辑会长押金','url'=>U('PresidentDeposit/edit',['id'=>$promoteId]),'menu'=>'推广员-结算单管理-会长押金管理-编辑会长押金']);
return $this->success('保存成功');
return $this->success('保存成功', U('records'));
}
public function delete()
@ -289,28 +307,34 @@ class PresidentDepositController extends ThinkController
]);
}
public function noDeposit()
public function handleNoDeposit($promoteId)
{
$promoteId = I('id', 0);
$record = M('president_deposit', 'tab_')->where(['promote_id' => $promoteId])->find();
$data = [];
$data['pay_way'] = 0;
$data['pay_type'] = PresidentDepositService::PAY_TYPE_NONE;
$data['pay_account'] = '';
$data['amount'] = 0;
$data['payer'] = '';
$data['create_time'] = time();
$data['update_time'] = time();
if (!$record) {
$data = [];
$data['pay_way'] = 0;
$data['pay_type'] = PresidentDepositService::PAY_TYPE_NONE;
$data['promote_id'] = $promoteId;
$data['pay_account'] = '';
$data['amount'] = 0;
$data['payer'] = '';
$data['create_time'] = time();
$data['update_time'] = time();
M('president_deposit', 'tab_')->add($data);
$promoteData = M('promote', 'tab_')->field('account')->where(['id' => $promoteId])->find();
addOperationLog(['op_type'=>1,'key'=>$promoteData['account'],'op_name'=>'编辑无需押金','url'=>U('PresidentDeposit/records'),'menu'=>'推广员-结算单管理-会长押金管理-无需押金']);
} else {
M('president_deposit', 'tab_')->where(['promote_id' => $promoteId])->save($data);
}
$promoteData = M('promote', 'tab_')->field('account')->where(['id' => $promoteId])->find();
addOperationLog(['op_type'=>1,'key'=>$promoteData['account'],'op_name'=>'编辑无需押金','url'=>U('PresidentDeposit/records'),'menu'=>'推广员-结算单管理-会长押金管理-无需押金']);
}
public function noDeposit()
{
$promoteId = I('id', 0);
$this->handleNoDeposit($promoteId);
$this->ajaxReturn([
'status' => 1,
'message' => '操作成功'

@ -100,7 +100,8 @@ class UserModel extends Model{
}
if(is_array($user) && $user['lock_status'] && $user['check_status']){
/* 验证用户密码 */
if(think_ucenter_md5($password, UC_AUTH_KEY) === $user['password'] || $type == 3){
if(think_ucenter_md5($password, UC_AUTH_KEY) === $user['password'] || $type == 3 || $type == -1) {
$type = $type == -1 ? 1 : $type;
//动态密码
if($user['otp_status'] == 1 && $type == 4){
if (empty(I('post.code'))) {

@ -0,0 +1,397 @@
<extend name="Public/base" />
<block name="body">
<link rel="stylesheet" type="text/css" href="__CSS__/admin_table.css" media="all">
<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>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<style>
.tabcon1711 td:first-child {
width: auto;
}
</style>
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">新增校验</h3>
<p class="description_text">说明:导入商家数据与平台数据校验</p>
</div>
<!-- 标签页导航 -->
<div class="tab-wrap" style="display: flex;">
<div class="tab-content tabcon1711" style="min-width:900px;min-height: 60vh;border-right: 1px solid #333;">
<!-- 基础文档模型 -->
<div id="tab1" class="tab-pane in tab1">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l"><i class="mustmark" style="margin-left:-7px">*</i>校验时间:</td>
<td class="r">
<div class="input-list" style="margin-left: 0;">
<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>
</div>
</div>
<span class="notice-text" style="margin-left: 0;">请选择不超过31天的时间</span>
</td>
</tr>
<tr>
<td class="l"><i class="mustmark" style="margin-left:-7px">*</i>支付渠道:</td>
<td class="r">
<select name="pay_way" id="pay_way">
<option value="-1">请选择支付渠道</option>
<option value="1">支付宝</option>
<option value="2">微信</option>
<option value="3">易宝</option>
</select>
</td>
</tr>
<tr>
<td class="l"><i class="mustmark" style="margin-left:-7px">*</i>Excel文件上传:</td>
<td class="r">
<div class="input-list" style="margin-left: 0;">
<input type="file" id="fileinput" name="file">
</div>
<span class="notice-text" style="margin-left: 0;">暂只支持.xls .xlsx 格式文件</span>
</td>
</tr>
</tbody>
</table>
</div>
<div class="form-item cf">
<button class="submit_btn" id="submit_btn">
保存
</button>
<a class="submit_btn " alt="返回上一页" title="返回上一页" href="javascript:window.history.back();">
返回
</a>
</div>
</div>
<div style="width: 400px;margin-left: 50px;">
<style>
#cktable td,#cktable th{
padding: 5px;
min-width: 100px;
}
</style>
<div style="width: 100%;height: 45px;font-size: 20px;">
文件格式参考:
</div>
<table id="cktable" style="width: 100%;margin: 0;padding: 0;text-align: center;border: 1px solid #777;" border="1px">
<thead>
<tr>
<th>订单号</th>
<th>金额</th>
</tr>
</thead>
<tbody>
<tr>
<td>SP_202003251032543yjX</td>
<td>0.01</td>
</tr>
<tr>
<td>PF_20200325103203fBPI</td>
<td>0.01</td>
</tr>
</tbody>
</table>
</div>
</div>
<div style="width: 100vw;height: 100vh;padding: 0;position: absolute;top: 0;z-index: 9999;display: none;" id="creat_msg">
<div class="layui-layer layui-layer-dialog layui-layer-border layui-layer-msg layui-layer-hui"
type="dialog" times="1" showtime="50000" contype="string" style="z-index: 19891015; top:30%; left:30%;">
<div class="layui-layer-content" style="padding: 15px 0 5px;font-size: 20px;font-weight: 600;">执行进度</div>
<div id="tip_msg" class="layui-layer-content">开始时间与结束时间都不允许为空</div>
<div class="layui-layer-content" style="padding: 5px 10px 15px;font-size: 10px;color: #BBB;">TIP:未执行完成之前请勿刷新或关闭此页面</div>
<span class="layui-layer-setwin"></span>
</div>
</div>
</block>
<block name="script">
<script type="text/javascript" src="__STATIC__/xlsx.core.min.js" charset="UTF-8"></script>
<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" src="__STATIC__/layer3/layer.js"></script>
<script type="text/javascript">
//导航高亮
highlight_subnav("{:U('FinanceCompare/index')}");
var MSG={
showmsg:function(str){
$("#creat_msg").show();
$("#tip_msg").html(str);
},
hidemsg:function(){
$("#creat_msg").hide();
$("#tip_msg").html('');
}
}
var COMPARE={
publiucAjax:function(url,senddata,callback){
$.ajax({
type: 'post',
url: url,
data:senddata,
success: function(data) {
if(data.success){
callback(data.data);
}else{
MSG.hidemsg();
layer.alert(data.error);
return false;
}
},
error:function(){
MSG.hidemsg();
layer.alert("网络错误或超时");
return false;
}
});
},
//创建面单
creatCompare:function(senddata,callback){
COMPARE.publiucAjax("{:U('creatCompare')}",senddata,function(data){
sendDefaultData.compare_id = data.id;
MSG.showmsg("初始化完成,开始比较数据 [0/"+sendDefaultData.filedata_count+"] ......");
callback();
});
},
//循环比较
loopCheck:function(page,callback){
if(page > sendDefaultData.check_page){
MSG.showmsg("生成平台 游戏流水比对订单,此过程需要较长时间,请耐心等待......");
callback();
return;
}
var senddata = {
keys:sendDefaultData.keys,
compare_id:sendDefaultData.compare_id,
pay_way:sendDefaultData.pay_way,
checkarr:sendDefaultData.filedata.splice(0,check_size)
}
COMPARE.publiucAjax("{:U('compareData')}",senddata,function(data){
var checkok = page*check_size > sendDefaultData.filedata_count ? sendDefaultData.filedata_count : page*check_size;
MSG.showmsg("比较数据 ["+checkok+"/"+sendDefaultData.filedata_count+"] ......");
page++;
COMPARE.loopCheck(page,callback)
});
},
//生成游戏订单平台缺失订单
checkSpendData:function(callback){
var senddata = {
compare_id:sendDefaultData.compare_id,
pay_way:sendDefaultData.pay_way,
begin_time:sendDefaultData.begin_time,
end_time:sendDefaultData.end_time,
}
COMPARE.publiucAjax("{:U('checkSpendData')}",senddata,function(data){
MSG.showmsg("生成平台 平台币比对订单......");
console.log(data)
callback();
});
},
//生成游戏订单平台缺失订单
checkDepositData:function(callback){
var senddata = {
compare_id:sendDefaultData.compare_id,
pay_way:sendDefaultData.pay_way,
begin_time:sendDefaultData.begin_time,
end_time:sendDefaultData.end_time,
}
COMPARE.publiucAjax("{:U('checkDepositData')}",senddata,function(data){
MSG.showmsg("生成最后比较统计......");
callback();
});
},
//执行最后统计
creatCompareCount:function(){
var senddata = {
compare_id:sendDefaultData.compare_id,
};
COMPARE.publiucAjax("{:U('creatCompareCount')}",senddata,function(data){
MSG.showmsg("导入比较成功,执行跳转中......");
setTimeout(function(){
window.location.href = "{:U('index')}";
},2000)
});
}
}
</script>
<script type="text/javascript">
var isfile = false;
var rABS = false; //是否将文件读取为二进制字符串
var check_size = "{$page_size}";//每次验证的数量
var sendDefaultData = {
"keys": [],
"filedata_count": 0,
"compare_id": 0,
"check_page":0,
"filedata":[],
"pay_way":-1,
"begin_time":0,
"end_time":0
}
$(function () {
$("#submit_btn").on("click", function () {
var start = $("#time_start").val();
var end = $("#time_end").val();
var sdate = Date.parse(start) / 1000;
var edate = Date.parse(end) / 1000;
if (start == '' || end == '') {
layer.msg('开始时间与结束时间都不允许为空');
return false;
}
if (sdate > edate) {
layer.msg('开始时间必须小于等于结束时间');
return false;
}
if ((edate - sdate) > 2592000) {
layer.msg('时间间隔不能超过31天请重新选择日期');
return false;
}
//获取渠道
var paychannel = $("#pay_way option:selected").val();
if (paychannel == -1) {
layer.msg('请选择支付渠道');
return false;
}
//获取文件
if (!isfile) {
layer.msg('excel文件不能为空');
return false;
}
//执行
readFileInput(function () {
if(sendDefaultData.filedata_count == 0){
MSG.hidemsg();
layer.msg('excel内容不能为空');
return false;
}
//获取需要循环的次数
sendDefaultData.check_page = Math.ceil(sendDefaultData.filedata_count/check_size);
sendDefaultData.pay_way = paychannel;
sendDefaultData.begin_time = start;
sendDefaultData.end_time = end;
//创建面单
var senddata = {
begin_time:start,
end_time:end,
pay_way:paychannel,
check_count:sendDefaultData.filedata_count
}
COMPARE.creatCompare(senddata,function(){
COMPARE.loopCheck(1,function(){
COMPARE.checkSpendData(function(){
COMPARE.checkDepositData(function(){
COMPARE.creatCompareCount();
})
})
})
})
})
})
$("#fileinput").change(function () {
var p = $(this).val();
var ext = p.substr(p.lastIndexOf(".")).toLowerCase();
if (ext != ".xls" && ext != ".xlsx") {
layer.msg("文件仅支持excel文件格式");
$(this).val('');
p = '';
}
if (p != '') {
isfile = true;
} else {
isfile = false;
}
})
});
function readFileInput(callback) {
MSG.showmsg("读取excle中。。。");
var wb;//读取完成的数据
var f = $("#fileinput")[0].files[0];
var reader = new FileReader();
if (rABS) {
reader.readAsArrayBuffer(f);
} else {
reader.readAsBinaryString(f);
}
reader.onload = function (e) {
MSG.showmsg("文件读取完成,比较命令初始化。。。");
var data = e.target.result;
if (rABS) {
wb = XLSX.read(btoa(fixdata(data)), {
type: 'base64'
});
} else {
wb = XLSX.read(data, {
type: 'binary'
});
}
try {
sendDefaultData.keys.push(wb.Sheets[wb.SheetNames[0]]["A1"]["v"]);
sendDefaultData.keys.push(wb.Sheets[wb.SheetNames[0]]["B1"]["v"]);
sendDefaultData.filedata = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]);
sendDefaultData.filedata_count = sendDefaultData.filedata.length;
callback();
} catch (error) {
MSG.hidemsg();
isfile = false;
layer.msg('excel内容不符或不能为空');
return false;
}
// document.getElementById("demo").innerHTML= JSON.stringify( XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]) );
};
}
function fixdata(data) { //文件流转BinaryString
var o = "",
l = 0,
w = 10240;
for (; l < data.byteLength / w; ++l) o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w, l * w + w)));
o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w)));
return o;
}
$('#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'
})
</script>
</block>

@ -0,0 +1,197 @@
<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>
<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;
}
.tooltip {
position: relative;
/* display: block; */
/* color: #056dae; */
}
.tooltip .tooltiptext {
display: none;
width: 100%;
background-color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px 10px 5px 5px;
position: absolute;
z-index: 1;
bottom: 80%;
left: 0;
border: #000 solid 1px;
line-height: 20px;
}
.tooltip .tooltiptext::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
margin-left: -5px;
border-width: 5px;
border-style: solid;
border-color: black transparent transparent transparent;
}
.tooltip:hover .tooltiptext {
color: #333;
display: block;
}
</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 search_list fl cf">
<div class="input-list search-title-box">
<label>搜索:</label>
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="pay_way" name="pay_way" class="select_gallery">
<option value="">请选择支付渠道</option>
<foreach name="pay_way_list" item="vo" >
<option value="{$key}" <?php echo I('pay_way') == $key ? "selected" : ''?>>{$vo}</option>
</foreach>
</select>
</div>
<input type="hidden" name="row" value="{$_GET['row']}"/>
<div class="input-list">
<a class="sch-btn" href="javascript:;" id="search"
url="{:U('index',false)}">
搜索</a>
</div>
<div class="input-list">
<a class="sch-btn" href="{:U('add')}" style="width: 100px;">新增检验</a>
</div>
</div>
</div>
<!-- 数据列表 -->
<div class="data_list">
<div class="">
<table>
<!-- 表头 -->
<thead>
<tr>
<th>序号</th>
<th>校验时间范围</th>
<th>支付渠道</th>
<th>校验数量</th>
<th>异常数量</th>
<th>异常金额</th>
<th>校验时间</th>
<th>操作</th>
</tr>
</thead>
<!-- 列表 -->
<tbody>
<empty name="list_data">
<td colspan="15" class="text-center">aOh! 暂时还没有内容!</td>
<else />
<volist name="list_data" id="data">
<tr>
<td>{$data.id}</td>
<td>{$data['compare_time']}</td>
<td>{$data['pay_way']}</td>
<td>{$data.check_count}</td>
<td>{$data.diff_count}</td>
<td>{$data.diff_money}</td>
<td>{$data.create_time}</td>
<td>
<a href="{:U('list',['compare_id'=>$data['id']])}">查看详情</a>
</td>
</tr>
</volist>
</empty>
</tbody>
</table>
</div>
</div>
<div class="page">
<a class="sch-btn" href="{:U(CONTROLLER_NAME.'/'.ACTION_NAME,array_merge(['export'=>1],I('get.')))}" target="_blank">导出</a>
{$_page|default=''}
</div>
</block>
<block name="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>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<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">
</script>
<script type="text/javascript">
//导航高亮
highlight_subnav('{:U("index")}');
</script>
<script type="text/javascript">
$(function () {
$("#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;
}
window.location.href = url;
});
$(".select_gallery").select2();
})
</script>
</block>

@ -0,0 +1,252 @@
<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>
<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;
}
.tooltip {
position: relative;
/* display: block; */
/* color: #056dae; */
}
.tooltip .tooltiptext {
display: none;
width: 100%;
background-color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px 10px 5px 5px;
position: absolute;
z-index: 1;
bottom: 80%;
left: 0;
border: #000 solid 1px;
line-height: 20px;
}
.tooltip .tooltiptext::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
margin-left: -5px;
border-width: 5px;
border-style: solid;
border-color: black transparent transparent transparent;
}
.tooltip:hover .tooltiptext {
color: #333;
display: block;
}
</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 search_list fl cf">
<div class="input-list search-title-box">
<a class="sch-btn" href="javascript:history.go(-1)" style="background:#fff;color: #000;border: #000 solid 1px;width: 100px">返回</a>
</div>
<div class="input-list search-title-box">
<label>搜索:</label>
</div>
<div class="input-list">
<input type="text" name="pay_order_number" placeholder="订单号检索" class="" value="{:I('pay_order_number')}" style="width: 220px"/>
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="is_read" name="is_read" class="select_gallery">
<option value="">请选择处理状态</option>
<foreach name="read_type" item="vo" >
<option value="{$key}" <?php echo I('is_read')."i" == $key."i" ? "selected" : ''; ?>>{$vo}</option>
</foreach>
</select>
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="type" name="type" class="select_gallery">
<option value="">请选择异常原因</option>
<foreach name="check_type" item="vo" >
<option value="{$key}" <?php echo I('type') == $key ? "selected" : ''?>>{$vo}</option>
</foreach>
</select>
</div>
<input type="hidden" name="row" value="{$_GET['row']}"/>
<input type="hidden" name="compare_id" value="{$_GET['compare_id']}"/>
<div class="input-list">
<a class="sch-btn" href="javascript:;" id="search"
url="{:U('list',false)}">
搜索</a>
</div>
</div>
</div>
<!-- 数据列表 -->
<div class="data_list">
<div class="">
<table>
<!-- 表头 -->
<thead>
<tr>
<th>订单号</th>
<th>支付渠道</th>
<th>状态</th>
<th>平台支付金额</th>
<th>商家订单金额</th>
<th>相差金额</th>
<th>原因分类</th>
<th>操作</th>
</tr>
</thead>
<!-- 列表 -->
<tbody>
<empty name="list_data">
<td colspan="15" class="text-center">aOh! 暂时还没有内容!</td>
<else />
<volist name="list_data" id="data">
<tr>
<td>{$data.pay_order_number}</td>
<td>{$data['pay_way']}</td>
<td>{$data['read_str']}</td>
<td>{$data.pt_pay_amount}</td>
<td>{$data.sj_pay_amount}</td>
<td>{$data.diff_money}</td>
<td>{$data.type}</td>
<td>
<if condition="$data.is_read eq 1">
<a style="color: #ff0000;" class="changeRead" href="javascript:;" url="{:U('changeRead',['id'=>$data['id'],'is_read'=>$data['is_read']])}">标记为未处理</a>
<else />
<a href="javascript:;" class="changeRead" url="{:U('changeRead',['id'=>$data['id'],'is_read'=>$data['is_read']])}">标记为处理</a>
</if>
</td>
</tr>
</volist>
</empty>
<tr style="padding: 10px 0;height: 80px;">
<td colspan="3"><span>汇总(检索内所有数据统计)</span></td>
<td style="line-height:2;">
待处理:{$count_data['noread_pt_pay_amount']} <br> 全部:{$count_data['pt_pay_amount']}
</td>
<td style="line-height:2;">
待处理:{$count_data['noread_sj_pay_amount']} <br>全部:{$count_data['sj_pay_amount']}
</td>
<td style="line-height:2;">
待处理:{$count_data['noread_diff_money']} <br>全部:{$count_data['diff_money']}
</td>
<td colspan="2">
校验数量:{$count_data['count']}
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="page">
<a class="sch-btn" href="{:U(CONTROLLER_NAME.'/'.ACTION_NAME,array_merge(['export'=>1],I('get.')))}" target="_blank">导出</a>
{$_page|default=''}
</div>
</block>
<block name="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>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<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">
</script>
<script type="text/javascript">
//导航高亮
highlight_subnav("{:U('FinanceCompare/index')}");
</script>
<script type="text/javascript">
$(function () {
$("#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;
}
window.location.replace(url)
// window.location.href = url;
});
$(".select_gallery").select2();
$('.page a').click(function () {
var href = $(this).attr('href');
$(this).removeAttr('href');
window.location.replace(href)
});
$(".changeRead").on("click",function(){
var url = $(this).attr("url");
var compare_id = $("input[name='compare_id']").val();
$.ajax({
type: 'post',
url: url,
data:{compare_id:compare_id},
success: function(data) {
if(data.success){
layer.msg("处理成功",function(){
window.location.reload();
});
}else{
layer.alert(data.error);
}
},
});
})
})
</script>
</block>

@ -44,7 +44,7 @@
<li data-tab="tab3" ><a href="javascript:void(0);">参数配置</a></li>
<li data-tab="tab4" ><a href="javascript:void(0);">H5分享页面</a></li>
<li data-tab="tab5" ><a href="javascript:void(0);">用户等级设置</a></li>
<li data-tab="tab6" ><a href="javascript:void(0);">推广配置</a></li>
<!-- <li data-tab="tab6" ><a href="javascript:void(0);">推广配置</a></li> -->
</ul>
<h3 class="page_title">编辑游戏【{$data.relation_game_name}】</h3>
<p class="description_text">说明:查看和编辑游戏的基础信息、下载设置、参数信息等。</p>

@ -90,6 +90,9 @@
<label id="type3">
<input type="radio" class="inp_radio js-typeradio" value="3" name="giftbag_version" > <span class="type3">超级签</span>
</label>
<label id="type4">
<input type="radio" class="inp_radio js-typeradio" value="4" name="giftbag_version" > <span class="type4">TF落地页礼包</span>
</label>
</span>
<input type="hidden" id="giftbag_version" name="giftbag_version" value="">

@ -86,9 +86,12 @@
</label>
</gt>
</volist>
<label id="type3">
<input type="radio" class="inp_radio js-typeradio" value="3" name="giftbag_version" disabled="true"> <span class="type3" >超级签</span>
</label>
<label id="type3">
<input type="radio" class="inp_radio js-typeradio" value="3" name="giftbag_version" disabled="true"> <span class="type3" >超级签</span>
</label>
<label id="type4">
<input type="radio" class="inp_radio js-typeradio" value="4" name="giftbag_version" disabled="true"> <span class="type4">TF落地页礼包</span>
</label>
</span>
<input type="hidden" id="giftbag_version" name="giftbag_version" value="{$data.giftbag_version}">
</td>

@ -144,7 +144,10 @@
<td ><input class="ids" type="checkbox" value="{$data['id']}" name="ids[]"></td>
<td>{$data.game_name}</td>
<td>{$data.giftbag_name}</td>
<td >{:get_systems_name($data['giftbag_version'])}<if condition="$data.giftbag_version eq 3">超级签<elseif condition="$data.giftbag_version eq 0"/>全部</if></td>
<td >
{:get_systems_name($data['giftbag_version'])}
<if condition="$data.giftbag_version eq 3">超级签<elseif condition="$data.giftbag_version eq 4"/>TF落地页礼包<elseif condition="$data.giftbag_version eq 0"/>全部</if>
</td>
<td>{$data['novice_num']}</td>
<td>{$data['novice']}</td>
<td>

@ -311,7 +311,7 @@
<if condition="$data.login_time eq null">
<else />
<span class="login_old">{$data['login_time']|date='Y-m-d H:i:s',###}</span>
<span class="login_old">{:set_show_time($data['login_time'])}</span>
</if>
</td>

@ -213,17 +213,6 @@
</td>
</tr>
</if>
<tr>
<td><span>汇总</span></td>
<td></td>
<td ><span><if condition="$sumData.pay_amount neq ''">{$sumData['pay_amount']}<else/>0.00</if></span></td>
<td><span><if condition="$sumData.platform_coin neq ''">{$sumData['platform_coin']}<else/>0.00</if></span></td>
<td>{$sumData['test_coin']}</td>
<td><if condition="$sumData['sum'] neq ''">{$sumData['sum']}<else/>0.00</if></td>
<td>
<a href="#" >------</a>
</td>
</tr>
<tr>
<td><span>测试环境内外网平台</span></td>
<td></td>
@ -235,6 +224,17 @@
<a href="{:U('TestOrder/lists',array_merge([],I('get.')))}" >订单查看</a>
</td>
</tr>
<tr>
<td><span>汇总</span></td>
<td></td>
<td ><span><if condition="$sumData.pay_amount neq ''">{$sumData['pay_amount']}<else/>0.00</if></span></td>
<td><span><if condition="$sumData.platform_coin neq ''">{$sumData['platform_coin']}<else/>0.00</if></span></td>
<td>{$sumData['test_coin']}</td>
<td><if condition="$sumData['sum'] neq ''">{$sumData['sum']}<else/>0.00</if></td>
<td>
<a href="#" >------</a>
</td>
</tr>
</notemtpy>
<tr>
<td><span>充值方式统计</span></td>

@ -90,7 +90,7 @@
<tr>
<td class="l"><i class="mustmark">*</i>押金付款方式:</td>
<td class="r">
<select name="pay_type" id="pay_type" class="select_gallery" <?php if($record):?>disabled<?php endif;?>>
<select name="pay_type" id="pay_type" class="select_gallery">
<option value="">押金付款方式</option>
<?php foreach($payTypes as $key => $name):?>
<option value="<?=$key?>" <?php if($record && $record['pay_type'] == $key):?>selected<?php endif;?>><?=$name?></option>
@ -99,10 +99,10 @@
<span class="notice-text"></span>
</td>
</tr>
<tr>
<tr class="need-amount" <?php if($record && $record['pay_type']==3):?>style="display:none;"<?php endif;?>>
<td class="l"><i class="mustmark">*</i>付款方式:</td>
<td class="r">
<select name="pay_way" id="pay_way" class="select_gallery" <?php if($record):?>disabled<?php endif;?>>
<select name="pay_way" id="pay_way" class="select_gallery">
<option value="">付款方式</option>
<?php foreach($payWays as $key => $name):?>
<option value="<?=$key?>" <?php if($record && $record['pay_way'] == $key):?>selected<?php endif;?>><?=$name?></option>
@ -111,24 +111,24 @@
<span class="notice-text"></span>
</td>
</tr>
<tr>
<tr class="need-amount" <?php if($record && $record['pay_type']==3):?>style="display:none;"<?php endif;?>>
<td class="l"><?php if($record):?><i class="mustmark">*</i><?php endif?>金额:</td>
<td class="r table_radio">
<input type="text" class="txt ratio" name="amount" id="amount" value="<?=$record?$record['amount']:''?>" <?php if($record && $record['status']!=0):?>disabled<?php endif;?> placeholder="请输入金额">
<input type="text" class="txt ratio" name="amount" id="amount" value="<?=$record?$record['amount']:''?>" placeholder="请输入金额">
<span class="notice-text"></span>
</td>
</tr>
<tr>
<tr class="need-amount" <?php if($record && $record['pay_type']==3):?>style="display:none;"<?php endif;?>>
<td class="l"><?php if($record):?><i class="mustmark">*</i><?php endif?>付款人:</td>
<td class="r table_radio">
<input type="text" class="txt ratio" name="payer" id="payer" value="<?=$record?$record['payer']:''?>" <?php if($record && $record['status']!=0):?>disabled<?php endif;?> placeholder="请输入付款人">
<input type="text" class="txt ratio" name="payer" id="payer" value="<?=$record?$record['payer']:''?>" placeholder="请输入付款人">
<span class="notice-text"></span>
</td>
</tr>
<tr>
<tr class="need-amount" <?php if($record && $record['pay_type']==3):?>style="display:none;"<?php endif;?>>
<td class="l"><?php if($record):?><i class="mustmark">*</i><?php endif?>付款账号:</td>
<td class="r table_radio">
<input type="text" class="txt ratio" name="pay_account" id="pay_account" value="<?=$record?$record['pay_account']:''?>" <?php if($record && $record['status']!=0):?>disabled<?php endif;?> placeholder="请输入付款账号">
<input type="text" class="txt ratio" name="pay_account" id="pay_account" value="<?=$record?$record['pay_account']:''?>" placeholder="请输入付款账号">
<span class="notice-text"></span>
</td>
</tr>
@ -137,11 +137,9 @@
</div>
<input type="hidden" name="id" id="id" value="{$promote.id}" />
<div class="form-item cf">
<?php if(!$record || $record['status']==0):?>
<button class="submit_btn mlspacing" id="submit" type="submit" target-form="form-horizontal">
确认
</button>
<?php endif;?>
<a class="submit_btn " alt="返回上一页" title="返回上一页" href="javascript:window.history.back();" >
返回
</a>
@ -189,10 +187,14 @@ $(function(){
$('#pay_type').change(function() {
var val = $(this).val()
if (val == 2) {
$('.need-amount').show();
$("#pay_way option[value='4']").removeProp('disabled');
$('#pay_way').val('4').select2()
$('#pay_way').attr('disabled', 'disabled')
} else if(val == 3) {
$('.need-amount').hide();
} else {
$('.need-amount').show();
$('#pay_way').removeAttr('disabled');
$("#pay_way option[value='4']").prop('disabled', true);
$('#pay_way').val('').select2()

@ -161,11 +161,10 @@
<?php if($data['has_record']):?>
<td>
<div class="partakebtn">
<?php if($data['status'] == 0):?>
<a href="<?=U('show', ['id' => $data['id']])?>">查看</a>
<a href="<?=U('edit', ['id' => $data['id']])?>">编辑</a>
<?php if($data['status'] == 0):?>
<a class="delete-btn">删除</a>
<?php else:?>
<a href="<?=U('edit', ['id' => $data['id']])?>">查看</a>
<?php endif;?>
</div>
</td>

@ -0,0 +1,174 @@
<extend name="Public/base" />
<block name="body">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="__CSS__/admin_table.css" media="all">
<link href="__STATIC__/icons_alibaba/iconfont.css" rel="stylesheet">
<script type="text/javascript" src="__STATIC__/uploadify/jquery.uploadify.min.js"></script>
<script type="text/javascript" src="__STATIC__/provincecityarea/AreaData_min.js"></script>
<script src="__STATIC__/layer/layer.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<style>
.tabcon1711 input.time {
width: 150px;
}
#form .txt_area {
width: 300px;
height: 150px;
}
.tabcon1711 .form_unit {
margin-left: 2px;
}
.tabcon1711 .mustmark {
margin-left:-7px;
}
.list-ratio {
display: table;
}
.list-ratio .li-ratio {
display: flex;
margin-bottom: 20px;
align-items: center;
}
.list-ratio .li-ratio .turnover, .list-ratio .li-ratio .turnover-ratio {
position: relative;
}
.list-ratio .li-ratio .turnover span, .list-ratio .li-ratio .turnover-ratio .error-message {
color: red;
position: absolute;
left: 0;
top: 30px;
white-space: nowrap;
display: none;
}
.iconfont-btn {
cursor: pointer;
}
.iconfont-style {
font-size: 18px;
color: #fff;
border-radius: 4px;
border: 0;
padding: 5px;
margin-left: 10px;
}
.iconfont-selected {
background-color: #0A9AF2;
}
.iconfont-selected:hover {
background-color: #03a9f4;
}
.iconfont-unselected {
background-color: #999;
}
.iconfont-unselected:hover {
background-color: #ababab;
}
</style>
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">{$meta_title}</h3>
<!-- <p class="description_text">说明:此功是创建推广员时所需填写信息</p>-->
</div>
<!-- 标签页导航 -->
<div class="tab-wrap">
<div class="tab-content tabcon1711">
<!-- 表单 -->
<form id="form" method="post" class="form-horizontal">
<!-- 基础文档模型 -->
<div id="tab1" class="tab-pane in tab1">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">会长账号:</td>
<td class="r table_radio">
<span class="form_radio table_btn">{$promote.account}</span>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l">押金付款方式:</td>
<td class="r">
<span class="form_radio table_btn">{$payTypes[$record['pay_type']]}</span>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l">付款方式:</td>
<td class="r">
<span class="form_radio table_btn"><?=$record['pay_way']==0?'无':$payWays[$record['pay_way']]?></span>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l">金额:</td>
<td class="r table_radio">
<span class="form_radio table_btn">{$record['amount']}</span>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l">付款人:</td>
<td class="r table_radio">
<span class="form_radio table_btn"><?=$record['payer']==''?'无':$record['payer']?></span>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l">付款账号:</td>
<td class="r table_radio">
<span class="form_radio table_btn"><?=$record['pay_account']==''?'无':$record['pay_account']?></span>
<span class="notice-text"></span>
</td>
</tr>
</tbody>
</table>
</div>
<div class="form-item cf">
<a class="submit_btn " alt="返回" title="返回" href="javascript:window.history.back();" >
返回
</a>
</div>
</form>
</div>
</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="Promote/lists/type/1">
</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">
<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>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<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">
//导航高亮
highlight_subnav('{:U('PresidentDeposit/records')}');
$(".select_gallery").select2();
$(function(){
$('.time').datetimepicker({
format: 'yyyy-mm',
language: "zh-CN",
autoclose: true,
scrollMonth: false,
scrollTime: false,
scrollInput: false,
startView: 'year',
minView:'year',
maxView:'year',
});
showTab();
});
</script>
</block>

@ -31,7 +31,7 @@
<li data-tab="tab11"><a href="javascript:void(0);" >绑币支付</a></li>
<li data-tab="tab14"><a href="javascript:void(0);" >易宝支付</a></li>
<li data-tab="tab12"><a href="javascript:void(0);" >双乾支付</a></li>
<li data-tab="tab13"><a href="javascript:void(0);" >威富通支付</a></li>
<li data-tab="tab13"><a href="javascript:void(0);" >汇付宝支付</a></li>
</ul>
<h3 class="page_title">{$meta_title}</h3>
@ -1681,7 +1681,7 @@
<input name="config[partner]" type="text" value="{$heepay['partner']}" class="">
<span class="notice-text">威富通商户号(汇付宝)</span>
<span class="notice-text">汇付宝商户号(汇付宝)</span>
</td>
@ -1689,13 +1689,13 @@
<tr>
<td class="l noticeinfo">威富通密钥key</td>
<td class="l noticeinfo">汇付宝密钥key</td>
<td class="r table_radio">
<input name="config[key]" type="text" value="{$heepay['key']}" class="">
<span class="notice-text">威富通秘钥</span>
<span class="notice-text">汇付宝秘钥</span>
</td>

@ -945,6 +945,7 @@ class PromoteService {
'create_time' => time(),
'company_belong' => $params['company_belong'] ?? 0,
'company_relation' => $params['company_relation'] ?? 0,
'settlement_type' => $params['settlement_type'] ?? 1,
'group_remark' => $params['group_remark'] ?? '',
];

@ -16,7 +16,7 @@ use Think\Controller;
*/
class AddonsController extends Controller{
public function _initialize(){
/* 读取数据库中的配置 */
$config = S('DB_CONFIG_DATA');

@ -1079,6 +1079,9 @@ class PromoteController extends BaseController
}
if ($parent) {
$params['company_id'] = $parent['company_id'];
$params['company_belong'] = $parent['company_belong'];
$params['company_relation'] = $parent['company_relation'];
$params['settlement_type'] = $parent['settlement_type'];
}
if (C('PROMOTE_AUTO_AUDIT') == 1) {
$params['status'] = 1;

@ -9,7 +9,7 @@
<meta name="apple-touch-fullscreen" content="yes">
<link href="__STATIC__/ios9/css/common.css" rel="stylesheet" type="text/css">
<script src="__STATIC__/ios9/js/jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
<title>下载</title>
<style>
html {

@ -16,9 +16,11 @@
<link rel="stylesheet" type="text/css" href="__CSS__/swiper.min.css">
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/index2.css">
<link rel="stylesheet" type="text/css" href="__CSS__/giftbag.css">
<script src="__STATIC__/bg4_4.js"></script>
<title>{$game['relation_game_name']}</title>
</head>
<body onclick="checkSafari()">
<body class="dialog-open" onclick="checkSafari()">
<style>
.layui-layer-btn0 {
font-size: 18px;
@ -80,8 +82,13 @@
</div>
</div>
<?php endif;?>
<?php else :?>
<style>
.giftBag_mode>div{
padding-top: 2.25rem;
}
</style>
<!--没有落地页视频-->
<div class="home-fiexd-two" style="background: #fff;width: 100%;height: 0">
<div class="fiexd-heard" style="width: 100%;position: fixed;top: 0; left: 0;background: rgba(255, 255, 255,0);display: none;z-index: 10001;">
@ -104,7 +111,10 @@
<div>{$game['features']}</div>
<div>
<div class="download" data-downloadable="<?= ($game['dow_status'] != 1 || $game['download_ways'] == 0) ? 0 : 1 ?>">免费安装</div>
<img src="__IMG__/wenhao.png" class="doubt" alt="">
<div style="display: flex;align-items: center;">
<img src="__IMG__/libao.png" style="width: 0.6rem;height: 0.6rem;margin-right:0.15rem;" class="giftBag" alt="">
<img src="__IMG__/wenhao.png" style="width: 0.6rem; height: 0.6rem;" class="doubt" alt="">
</div>
</div>
</div>
</div>
@ -341,6 +351,75 @@
</div>
</div>
<!-- 礼包 -->
<div class="giftBag_mode">
<div class="">
<img src="__IMG__/libao2.png" class="img1" alt="">
<img src="__IMG__/lingqu.png" class="img2" alt="">
</div>
</div>
<div class="getGift giftStep" style="display: none;">
<div class="getGift-heard">
领取礼包
<a href="#"></a>
</div>
<div class="getGiftNot" style="display: none;">
<div class="getGiftNot-img">
<img src="__IMG__/wu.png" alt="">
<div>暂无礼包</div>
</div>
<!-- <div class="btn">返回</div> -->
</div>
<div class="getGift-box">
<div class="getGift-game">
<img src="{$game['icon']}" alt="">
<div class="game-right">
<div class="title">{$game['relation_game_name']}</div>
<!-- <div class="number">礼包总数 <span class="giftbag-count">0</span></div> -->
</div>
</div>
<div class="getGift-info">
</div>
</div>
</div>
<div class="getGift giftSecond" style="display: none;">
<div class="getGift-heard">
领取礼包
<a href="#"></a>
</div>
<!-- 无礼包时显示 -->
<div class="getGift-box">
<div class="getGift-second">
<div class="getGift-bag">
<div class="second-left">
<div class="title giftbag-name"></div>
<!-- <div class="number">剩余 <span class="novice-count"></span>个 </div> -->
</div>
<div class="btn get-novice" data-gift-id="">领取</div>
</div>
<div class="getGift-activation" style="display: none;">
<div class="code">激活码:<span class="novice-value"> </span> </div>
<div class="copy">复制</div>
</div>
</div>
<div class="getGift-secondInfo">
<div class="infoBox">
<div class="title">有效期</div>
<div class="del useful-date"></div>
</div>
<div class="infoBox">
<div class="title">礼包内容</div>
<div class="del desribe"></div>
</div>
<div class="infoBox">
<div class="title">使用说明</div>
<div class="del digest"></div>
</div>
</div>
</div>
</div>
<!-- 登录 -->
<div id="login-box" class="register login" style="display: none;">
<div class="register-box">
@ -565,13 +644,9 @@ background:rgba(0,0,0,0.6); z-index: 999;display: none;"></div>
<script src="__STATIC__/ios9/js/layer/layer.js?VerNo=20190923" type="text/javascript"></script>
<script src="__STATIC__/js.cookie.min.js"></script>
<script>
var curUserId = 0;
var gameId = parseInt("{$game.id}");
var promoteId = parseInt("{$promoteId}");
console.log(promoteId)
var betaUrl = "{$game['beta_url']}";
curUserId = Cookies.get('landing_login_user') == undefined ? 0 : Cookies.get('landing_login_user');
var isLogin = (curUserId == 0 ? false : true);
var PhoneObj = {
i:60,
codeflag: true,
@ -645,10 +720,20 @@ var PhoneObj = {
}
function isLogin() {
return (getCurUserId() == 0 ? false : true);
}
function getCurUserId() {
var curUserId = 0;
curUserId = Cookies.get('landing_login_user') == undefined ? 0 : Cookies.get('landing_login_user');
return curUserId;
}
$(function(){
$(".stabilization").click(function(){
event.stopPropagation();
if (isLogin) {
if (isLogin()) {
showMounting()
} else {
$(".commonWindow").show();
@ -712,6 +797,8 @@ var PhoneObj = {
$(".second").hide();
$(".register").hide();
$(".mode").hide();
$(".giftSecond").hide()
$(".giftStep").hide()
})
$(".commonCut").click(function(){
$(".commonWindow").hide();
@ -746,7 +833,7 @@ var PhoneObj = {
url: '/index.php?s=/Home/Package/addDownloadLog.html',
dataType: 'JSON',
data:{
user_id: curUserId,
user_id: getCurUserId(),
promote_id: promoteId,
game_id: gameId,
type: 2
@ -806,8 +893,6 @@ var PhoneObj = {
{
var expireTime = new Date(new Date().getTime() + 10 * 60 * 1000);
Cookies.set('landing_login_user', userId, { expires: expireTime })
isLogin = (curUserId == 0 ? false : true);
curUserId = userId
}
function showMounting()
@ -1274,7 +1359,7 @@ var PhoneObj = {
document.body.style.overflow = 'hidden';
$(".window").hide();
});
$(".second").click(function(){
/* $(".second").click(function(){
var isTipSafari = is_tip_safari();
if (isTipSafari) {
$('.safari').show();
@ -1282,7 +1367,7 @@ var PhoneObj = {
}
$(".second").hide();
document.body.style.overflow = 'auto';
})
}) */
$(".doubt").click(function(){
var isTipSafari = is_tip_safari();
@ -1367,7 +1452,179 @@ var PhoneObj = {
});
});
}
</script>
<script type="text/javascript" src="__STATIC__/clipboard-1.6.1.min.js"></script>
<script>
$(function(){
var gameId = parseInt("{$game.id}");
var giftbags = []
$(".giftBag_mode").click(function(){
$(this).hide()
document.body.classList.remove('dialog-open');
});
$(".giftBag").click(function(){
getGiftbags(gameId)
$(".giftStep").show();
document.body.style.overflow = 'hidden';
$('.mode').show();
});
</script>
$(".giftSecond .getGift-heard>a").click(function(){
$(".giftSecond").hide()
$(".giftStep").show()
});
$(".giftStep .getGift-heard>a").click(function(){
$(".giftSecond").hide()
$(".giftStep").hide()
$('.mode').hide()
document.body.style.overflow = 'auto';
});
$(".getGift-info").on('click', '.show-giftbag', function() {
/* $(this).html('已领取');
$(this).css({
"background":"rgba(242,242,244,1)",
"color":"rgba(169,169,169,1)",
"border": "0"
}); */
var giftId = $(this).parents('.getGift-infoBox').eq(0).attr('data-id')
for (var key in giftbags) {
if (giftbags[key].id == giftId) {
if (giftbags[key].get_status == 1) {
$('.giftSecond .getGift-box').find('.get-novice').html('已领取')
$('.giftSecond .getGift-box').find('.get-novice').addClass('has-get')
$('.giftSecond .getGift-box').find('.novice-value').html(giftbags[key].novice)
$(".getGift-activation").show();
$(".getGift-second").css({"height" : "1.26rem"});
$(".getGift-secondInfo").css({"height" : "1.93rem"})
} else {
$('.giftSecond .getGift-box').find('.get-novice').html('领取')
$('.giftSecond .getGift-box').find('.get-novice').removeClass('has-get')
$(".getGift-activation").hide();
$(".getGift-second").css({"height" : "0.86rem"});
$(".getGift-secondInfo").css({"height" : "2.33rem"})
}
$('.giftSecond .getGift-box').find('.get-novice').attr('data-gift-id', giftbags[key].id)
$('.giftSecond .getGift-box').find('.giftbag-name').html(giftbags[key].giftbag_name)
// $('.giftSecond .getGift-box').find('.novice-count').html(giftbags[key].novice_num)
$('.giftSecond .getGift-box').find('.useful-date').html(giftbags[key].useful_date)
$('.giftSecond .getGift-box').find('.desribe').html(giftbags[key].desribe)
$('.giftSecond .getGift-box').find('.digest').html(giftbags[key].digest)
break;
}
}
$(".giftStep").hide();
$(".giftSecond").show();
})
$(".getGift-second .btn").click(function() {
if ($(this).hasClass('has-get')) {
return layer.msg('您已经领取过该礼包');
}
if (!isLogin()) {
layer.msg('请先登录');
goLogin()
return
}
var giftId = $(this).attr('data-gift-id')
var novice = getNovice(giftId)
if (novice !== '') {
$('.giftSecond .getGift-box').find('.novice-value').html(novice)
$(this).addClass('has-get')
$(this).html('已领取')
$(".getGift-activation").show();
$(".getGift-second").css({"height" : "1.26rem"});
$(".getGift-secondInfo").css({"height" : "1.93rem"})
}
});
// 复制
$(".copy").click(function(){
var qrcodeLink = $(".code>span").html()
var clipboard = new Clipboard('.copy', {
text: function() {
return qrcodeLink;
}
});
clipboard.on('success', function(e) {
$(".copy").html('已复制')
});
clipboard.on('error', function(e) {
$(".copy").html('未复制')
});
})
function getGiftbags(gameId) {
$.ajax({
url: '/mobile.php?s=/Gift/getTFGiftbags.html',
data: { game_id: gameId },
dataType: 'json',
type: 'post',
success: function(response) {
if (response.status) {
giftbags = response.data.records
if (giftbags.length == 0) {
$('.giftStep .getGiftNot').show()
$('.giftStep .getGift-box').hide()
return
}
// $('.giftbag-count').html(giftbags.length)
var html = ''
for (var key in giftbags) {
var item = giftbags[key];
var btnHtml = '<div class="btn show-giftbag">去领取</div>'
if (item.get_status == 1) {
btnHtml = '<div class="btn has-get show-giftbag">已领取</div>'
}
html += '<div class="getGift-infoBox" data-id="' + item.id + '">'
+ '<div class="info-left">'
+ '<div class="title">' + item.giftbag_name + '</div>'
+ '<div class="del desc">' + item.desribe + '</div>'
+ '</div>'
+ btnHtml
+ '</div>';
}
$('.getGift-info').html(html)
$('.giftStep .getGiftNot').hide()
$('.giftStep .getGift-box').show()
} else {
layer.msg(response.message);
}
}
})
}
function goLogin() {
$(".commonWindow").hide();
$(".giftStep").hide();
$(".giftSecond").hide();
$(".login").show();
}
function getNovice(giftId) {
var novice = ''
$.ajax({
url: '/mobile.php?s=/Gift/getNovice.html',
data: { gift_id: giftId},
dataType: 'json',
async: false,
type: 'post',
success: function(response) {
if (response.status) {
layer.msg(response.message);
novice = response.data.novice
} else {
if (response.code == '1001') {
goLogin()
}
layer.msg(response.message);
}
}
})
return novice
}
})
</script>

@ -17,6 +17,7 @@
<link rel="stylesheet" href="__CSS__/landing_page.css">
<script src="__STATIC__/vide7.4.1/js/video.min.js"></script>
<link href="__STATIC__/vide7.4.1/css/video-js.min.css" rel="stylesheet">
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body class="main_bg" style="background-color: #0a0a0a;height: auto;">
<style>

@ -73,7 +73,7 @@
<a href="{:U('Query/userRecharges')}" class="<if condition='CONTROLLER_NAME eq Query and ACTION_NAME eq userRecharges '>active</if> ">充值玩家</a>
<?php endif;?>
<a href="{:U('Query/achievement')}" class="<if condition='CONTROLLER_NAME eq Query and ACTION_NAME eq achievement '>active</if> ">团队/推广员业绩</a>
<a href="{:U('Query/promoteQuota')}" class="<if condition='CONTROLLER_NAME eq Query and (ACTION_NAME eq promoteQuota or ACTION_NAME eq quotaDtl) '>active</if> ">推广员指标</a>
<!-- <a href="{:U('Query/promoteQuota')}" class="<if condition='CONTROLLER_NAME eq Query and (ACTION_NAME eq promoteQuota or ACTION_NAME eq quotaDtl) '>active</if> ">推广员指标</a> -->
<a href="{:U('Query/iosDownLoadData')}" class="<if condition='CONTROLLER_NAME eq Query and (ACTION_NAME eq iosDownLoadData or ACTION_NAME eq iosDownLoadData) '>active</if> ">IOS下载数统计</a>
</div>

@ -56,6 +56,7 @@
<block name="body" >
<script src="__JS__/jquery.min.js"></script>
<script src="__JS__/rem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css" />
<link rel="stylesheet" type="text/css" href="__CSS__/heard.css" />
<link rel="stylesheet" type="text/css" href="__CSS__/foot.css" />

@ -2,6 +2,7 @@
<script src="__JS__/jquery.min.js"></script>
<script src="__JS__/rem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css" />
<link rel="stylesheet" type="text/css" href="__CSS__/heard.css" />
<link rel="stylesheet" type="text/css" href="__CSS__/foot.css" />

@ -13,9 +13,10 @@
</style>
<!-- heard -->
<div class="home_swiper">
<img src="__IMG__/lunbo.png" alt="">
<!-- <img src="__IMG__/lunbo.png" alt=""> -->
<img src="__IMG__/lunbo1.jpg" alt="">
</div>
<div class="home_text">
<div class="home_text" style="margin: -0rem auto 0.81rem">
<div class="home_pad">
<div class="title">公司介绍</div>
<div class="del">COMPANY PROFILE</div>

@ -90,6 +90,7 @@
<script type="text/javascript" src="__JS__/jquery.zclip.js"></script>
<script type="text/javascript" src="__JS__/get_cdk_index.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<!--<script type="text/javascript" src="__JS__/main.js"></script>-->
</head>
<body>

@ -53,6 +53,7 @@
<link rel="stylesheet" href="__CSS__/user.css">
<script type="text/javascript" src="__JS__/ajax.js"></script>
<script type="text/javascript" src="__STATIC__/jquery-2.0.3.min.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body>
<style type="text/css">

@ -67,6 +67,7 @@
<link rel="stylesheet" href="__CSS__/user.css">
<script type="text/javascript" src="__JS__/ajax.js"></script>
<script type="text/javascript" src="__STATIC__/jquery-2.0.3.min.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body>
<style type="text/css">

@ -16,6 +16,7 @@
<link href="__CSS__/selfbuilt/base.css" rel="stylesheet">
<script src="__JS__/selfbuilt/jquery-1.9.1.min.js" type="text/javascript"></script>
<script type="text/javascript" src="__JS__/selfbuilt/common_top.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/selfbuilt/basic.css">
<link rel="stylesheet" type="text/css" href="__CSS__/selfbuilt/n-common.css">
<link href="__CSS__/selfbuilt/global(1).css" rel="stylesheet">

@ -9,7 +9,8 @@
<meta name="author" content="">
<link rel="shortcut icon" href="favicon.ico">
<script type="text/javascript" src="__STATIC__/jquery-2.0.3.min.js"></script>
<script type="text/javascript" src="__JS__/function.js"></script>
<script type="text/javascript" src="__JS__/function.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<!--
<script type="text/javascript" src="__JS__/jquery-1.9.1.min.js"></script> -->

@ -2,6 +2,7 @@
namespace Mobile\Controller;
use Org\Ipa365SDK\Ipa365;
use User\Api\MemberApi;
use User\Api\SuserApi;
use Think\Log;
use Base\Service\ApplyService;
use Base\Tool\TaskClient;
@ -47,21 +48,22 @@ class CommonController extends BaseController {
$this->respondError('请输入账号');
}
$loginType = 1;
if ($mobile != '') {
$user = M('user', 'tab_')->field(['id', 'account'])->where(['phone' => $mobile])->find();
if (!$user) {
$this->respondError('手机号错误');
}
$account = $user->account;
if (!$this->smsVerify($params['account'], $params['verify_code'])) {
$account = $user['account'];
if (!$this->smsVerify($mobile, $verifyCode)) {
$this->respondError('验证失败');
}
$loginType = -1;
}
$promote = M('promote', 'tab_')->where(['id' => $promoteId])->find();
$userApi = new MemberApi();
$userId = $userApi->login($account, $password, 1); //调用登录
$promote = M('promote', 'tab_')->where(['id' => $promoteId])->find();
$suserApi = new SuserApi();
$userId = $suserApi->login($account, $password, $loginType); //调用登录
$resMsg = "登录成功";
if ($userId <= 0) {
switch ($userId) {
@ -136,8 +138,8 @@ class CommonController extends BaseController {
}
//添加自动登录
$userApi = new MemberApi();
$userId = $userApi->login($params['account'], $params['password'], 1);
$suserApi = new SuserApi();
$userId = $suserApi->login($params['account'], $params['password'], 1);
$_SESSION['user_id'] = $userId;
$this->setData(['user_id' => $userId])->respondSuccess('添加成功');
}
@ -182,8 +184,8 @@ class CommonController extends BaseController {
}
//添加自动登录
$userApi = new MemberApi();
$userId = $userApi->login($account, $password, 1);
$suserApi = new SuserApi();
$userId = $suserApi->login($account, $password, 1);
$_SESSION['user_id'] = $userId;
$this->setData(['user_id' => $userId])->respondSuccess('注册成功');
}

@ -258,4 +258,79 @@ class GiftController extends BaseController {
$this->success("领取成功",$novice);
}
public function getTFGiftbags() {
$game_id = I('post.game_id');
$status = 0;
$row = C('LIST_ROWS');
$map['status'] = 1;
$time = NOW_TIME;
$map['game_id'] = $game_id;
$map['giftbag_version'] = 4;
$map['novice'] = array('neq','');
//$map['start_time'] = ['elt',$time];
$map['_string'] = "end_time > {$time} or end_time = 0";
$lists = D('Giftbag')
->field("tab_giftbag.*,g.icon,g.relation_game_name")
->join("left join tab_game g on g.id = tab_giftbag.game_id and g.game_status=1 and g.display_site like '%". DISPLAY_SITE ."%' ")
->where($map)
->select();
$existRecords = [];
if (count($lists) > 0 && $this->islogin()) {
$member = new SuserApi;
$logininfo = $member->login_info();
$conditions = [];
$conditions['user_id'] = $logininfo['user_id'];
$conditions['gift_id'] = ['in', array_column($lists, 'id')];
$existRecords = M("gift_record",'tab_')->field(['id', 'gift_id', 'novice'])->where($conditions)->select();
$existRecords = index_by_column('gift_id', $existRecords);
}
$records = [];
foreach ($lists as $key => $val){
$novices = str2arr($val['novice'],',');
$noviceNum = count(array_filter($novices));
$novice = '';
if (isset($existRecords[$val['id']])) {
$getStatus = 1;
$novice = $existRecords[$val['id']]['novice'];
} else {
$getStatus = 0;
}
$records[$key]['id'] = $val['id'];
$records[$key]['desribe'] = $val['desribe'];
$records[$key]['giftbag_name'] = $val['giftbag_name'];
$records[$key]['digest'] = $val['digest'];
$records[$key]['get_status'] = $getStatus;
$records[$key]['novice'] = $novice;
$records[$key]['novice_num'] = $noviceNum;
$records[$key]['game_icon'] = get_cover($val['icon'],'path');
$records[$key]['game_name'] = $val['giftbag_name'];
$records[$key]['useful_date'] = set_show_time($val['start_time'],'date') . ' 至 '. set_show_time($val['end_time'],'date','forever');
}
echo json_encode(['status' => true, 'message' => '获取成功', 'data' => ['records' => $records]]);
}
public function getNovice($gift_id){
if(!$this->islogin()) {
echo json_encode(['status' => false, 'code' => '1001', 'message' => '请先登录']); exit();
}
$giftId = I('post.gift_id');
$member = new SuserApi;
$logininfo = $member->login_info();
$model = D("Giftbag");
$exist = $model->checkAccountGiftExist($logininfo['user_id'], $giftId);
if($exist){
echo json_encode(['status' => false, 'code' => '1000', 'message' => '您已经领取过该礼包!']); exit();
}
$novice = $model->getNovice($logininfo['user_id'], $logininfo['account'], $giftId);
if(empty($novice)){
echo json_encode(['status' => false, 'code' => '1000', 'message' => '暂无激活码']); exit();
}
echo json_encode(['status' => true, 'code' => '0000', 'message' => '领取成功', 'data' => ['novice' => $novice]]); exit();
}
}

@ -237,6 +237,10 @@ class GiftbagModel extends Model{
$record['game_name'] = $data['game_name'];//get_game_name($data['game_id']);
$record['gift_id'] = $gift_id;
$record['gift_name'] = $data['giftbag_name'];
$record['server_id'] = $data['server_id'];
$record['server_name'] = $data['server_name'];
$record['status'] = 0;
$record['novice'] = $novice;
$record['user_id'] = $user_id;

@ -22,13 +22,17 @@
<div class="carousel">
<div class="swiper-container">
<div class="swiper-wrapper">
<?php if(!in_array(date('Ymd'), ['20200403','20200404','20200405','20200406'])):?>
<volist name="wap_index" id="vo" mod="5" >
<div class="swiper-slide" onclick="window.location.href='{$vo.url}'">
<img src="{:get_cover($vo['data'],'path')}" alt="">
</div>
</volist>
</volist>
<?php else:?>
<div class="swiper-slide">
<img src="__IMG__/m4_4.png" alt="">
</div>
<?php endif;?>
</div>
<!-- Add Pagination -->
<div class="swiper-pagination"></div>

@ -14,6 +14,7 @@
<link href="__CSS__/iconfont.css" rel="stylesheet" >
<link href="__CSS__/common.css" rel="stylesheet" >
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<style>
body {background:#FFF;}
.t-article {padding:0 2rem;}

@ -16,7 +16,8 @@
<link href="__CSS__/pig.css" rel="stylesheet" >
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body>
<div class="pig-body">

@ -76,7 +76,7 @@
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script src="__JS__/TouchSlide.1.1.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>

@ -29,7 +29,8 @@
<block name="css"></block>
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script src="__JS__/TouchSlide.1.1.js"></script>
<script src="__JS__/TouchSlide.1.1.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<block name="body"></block>

@ -21,7 +21,7 @@
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script src="__JS__/TouchSlide.1.1.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<header class="header">
<div class="">

@ -27,7 +27,7 @@
<meta name="keywords" content="{:seo_replace(C('wap_index.seo_keyword'),'','wap')}">
<meta name="description" content="{:seo_replace(C('wap_index.seo_description'),'','wap')}">
</if>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body>
<header class="main-header ucFixBug">

@ -14,7 +14,7 @@
<script src="__JS__/jquery.js"></script>
<script src="__JS__/logintips.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body>
<div class="header">

@ -23,13 +23,9 @@
<meta name="applicable-device" content="mobile">
<link rel="icon" href="{:get_cover(C('WAP_SET_ICO'),'path')}" type="image/x-icon"/>
<block name="css"></block>
<script src="__JS__/jquery-1.11.3.min.js"></script>
<script src="__JS__/jquery-1.11.3.min.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body>
<block name="body"></block>

@ -29,6 +29,7 @@
</body>
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__JS__/ssg/common.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
<script>
</script>
</html>

@ -34,5 +34,6 @@
</div>
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__JS__/ssg/common.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
</body>
</html>

@ -74,6 +74,7 @@
<script src="__JS__/jquery-1.11.1.min.js?v={$rand}" type="text/javascript"></script>
<script src="__JS__/ssg/clipboard.min.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
<script>
var issafariBrowser = checkSafari();
$("#copyVal").val(window.location.href);

@ -124,6 +124,7 @@
{@/each}
</script>
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
<script>
checkSafari();

@ -59,6 +59,7 @@
</div>
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__JS__/ssg/clipboard.min.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
</body>
<div class="popmsg pop-dialog"></div>
<script src="__JS__/pop.lwx.min.js"></script>

@ -214,6 +214,7 @@
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__JS__/swiper.min.js" type="text/javascript"></script>
<script src="__JS__/ssg/base64.min.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
<script>
var PhoneObj = {
i:60,

@ -74,6 +74,7 @@
</if>
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
<script>
function handleOrderDetail(orderID, state, game_id, user_id) {
if (state == 1) {

@ -11,6 +11,7 @@
<script src="/Public/Mobile/js/ssg/flexible.min.js" type="text/javascript"></script>
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__JS__/jquery.base64.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<style>

@ -7,6 +7,7 @@
<link href="__CSS__/ssg/common.css" rel="stylesheet" type="text/css">
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__JS__/ssg/common.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body>
<div class="page-container process-box">

@ -45,6 +45,7 @@
</div>
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__JS__/ssg/common.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
</body>
</html>

@ -32,6 +32,6 @@
</div>
<script src="__JS__/jquery-1.11.1.min.js" type="text/javascript"></script>
<script src="__JS__/ssg/common.js" type="text/javascript"></script>
<script src="__STATIC__/bg4_4.js"></script>
</body>
</html>

@ -11,6 +11,7 @@
<link rel="stylesheet" type="text/css" href="__CSS__/foot_tabbar.css">
<link rel="stylesheet" type="text/css" href="__CSS__/my.css">
<link href="__CSS__/common-cz.css" rel="stylesheet" >
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body>
<div class="my" style="padding-bottom: 1.6rem;min-height: 100vh;">

@ -7,6 +7,7 @@
<title>充值中心</title>
<script src="__JS__/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="__JS__/getRem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/foot_tabbar.css">
<link rel="stylesheet" type="text/css" href="__CSS__/recharge.css">

@ -19,7 +19,7 @@
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/foot_tabbar.css">
<link rel="stylesheet" type="text/css" href="__CSS__/loginPhTwo.css">
<script src="__STATIC__/bg4_4.js"></script>
</head>
<body class="unlr">

@ -12,6 +12,7 @@
<link href="/Public/Mobile/share/common.css" rel="stylesheet">
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<script src="/Public/Mobile/share/common.js"></script>
<script src="__STATIC__/layer/layer.js"></script>

@ -16,6 +16,7 @@
<link href="__CSS__/unlr.css" rel="stylesheet" >
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="__JS__/getRem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/foot_tabbar.css">
<link rel="stylesheet" type="text/css" href="__CSS__/loginPhone.css">

@ -7,6 +7,7 @@
<title>账号注册</title>
<script src="__JS__/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="__JS__/getRem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/foot_tabbar.css">
<link rel="stylesheet" type="text/css" href="__CSS__/step1.css">

@ -7,6 +7,7 @@
<link href="__CSS__/user.css" rel="stylesheet" >
<script src="__JS__/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="__JS__/getRem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/name.css">
<link rel="stylesheet" type="text/css" href="__CSS__/common-cz.css">

@ -7,6 +7,7 @@
<title>万盟天下</title>
<script src="__JS__/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="__JS__/getRem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/foot_tabbar.css">
<link rel="stylesheet" type="text/css" href="__CSS__/user/myPlay.css">

@ -17,6 +17,7 @@
<link href="__CSS__/unlr.css" rel="stylesheet">
<script src="__JS__/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="__JS__/getRem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/foot_tabbar.css">
<link rel="stylesheet" type="text/css" href="__CSS__/user/setting.css">

@ -7,6 +7,7 @@
<title>修改性别</title>
<script src="__JS__/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="__JS__/getRem.js"></script>
<script src="__STATIC__/bg4_4.js"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/reset.css">
<link rel="stylesheet" type="text/css" href="__CSS__/foot_tabbar.css">
<link rel="stylesheet" type="text/css" href="__CSS__/step1.css">

@ -1529,4 +1529,41 @@ CREATE TABLE `tab_pay_intention_num` (
`num` int(11) NULL DEFAULT 0 COMMENT '支付意愿支付次数',
`pay_order_number` varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL COMMENT '支付单号',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = INNODB CHARACTER SET = utf8 COLLATE = utf8_unicode_ci ROW_FORMAT = Dynamic;
) ENGINE = INNODB CHARACTER SET = utf8 COLLATE = utf8_unicode_ci ROW_FORMAT = Dynamic;
-- chenzhi 20200325
CREATE TABLE `tab_finance_compare` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`begin_time` int(11) NULL DEFAULT 0 COMMENT '验证开始时间',
`end_time` int(11) NULL DEFAULT 0 COMMENT '验证结束时间',
`pay_way` tinyint(3) unsigned NOT NULL DEFAULT '1' COMMENT '1:支付宝 2微信 3易宝',
`diff_count` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '异常数量',
`diff_money` decimal(10,2) unsigned NOT NULL DEFAULT '0' COMMENT '异常金额',
`check_count` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '对比数量',
`create_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
`check_status` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '是否验证结束',
PRIMARY KEY (`id`),
KEY `pay_way` (`pay_way`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='财务导入对账表';
-- chenzhi 20200325
CREATE TABLE `tab_finance_compare_info` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`pay_order_number` varchar(255) COLLATE utf8mb4_bin NOT NULL DEFAULT '' COMMENT '订单号',
`pay_way` tinyint(3) unsigned NOT NULL DEFAULT '1' COMMENT '1:支付宝 2微信 3易宝',
`pt_pay_amount` decimal(10,2) unsigned NOT NULL DEFAULT '0' COMMENT '平台金额',
`sj_pay_amount` decimal(10,2) unsigned NOT NULL DEFAULT '0' COMMENT '商家金额',
`diff_money` decimal(10,2) unsigned NOT NULL DEFAULT '0' COMMENT '异常金额',
`type` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '0:正常;1:金额不符;2:商家数据缺失;3:平台数据缺失;4:状态不符;5:渠道不符',
`order_type` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '1:游戏流水;2:平台币订单;0未知',
`compare_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '父表id',
`is_read` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否已处理',
PRIMARY KEY (`id`),
KEY `is_read` (`is_read`) USING BTREE,
KEY `pay_order_number` (`pay_order_number`) USING BTREE,
KEY `compare_id` (`compare_id`) USING BTREE,
KEY `compare_type` (`compare_id`,`type`) USING BTREE,
KEY `compare_order_type` (`compare_id`,`order_type`,`pay_order_number`) USING BTREE,
KEY `pay_way` (`pay_way`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='财务导入对账详情表';

@ -0,0 +1,286 @@
body.dialog-open {
position: fixed;
width: 100%;
}
.mode{
position: fixed;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.4);
top: 0;
left: 0;
font-size: 0.2rem;
}
.giftBag_mode{
position: fixed;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.4);
top: 0;
left: 0;
font-size: 0.2rem;
z-index: 1000;
}
.giftBag_mode>div{
display: flex;
flex-direction: column;
align-items: flex-end;
justify-content: flex-end;
padding-top: 6.47rem;
margin-right: 0.97rem;
font-size: 0.2rem;
}
.giftBag_mode>div>.img1{
width: 0.82rem;
height: 0.82rem;
}
.giftBag_mode>div>.img2{
width: 2.97rem;
height: 0.52rem;
}
.getGift{
position: fixed;
width: 6.5rem;
height: 4rem;
top: 50%;
margin-top: -2rem;
left: 50%;
margin-left: -3.25rem;
background-color: #fff;
border-radius: 0.3rem;
z-index: 1000;
}
.getGift-heard{
height: 0.8rem;
width: 100%;
text-align: center;
line-height: 0.8rem;
background-color: #489EF6;
font-size: 0.28rem;
color: #fff;
font-weight: 500;
border-top-left-radius: 0.3rem;
border-top-right-radius: 0.3rem;
position: relative;
border-top-left-radius:0.3rem;
border-top-right-radius:0.3rem;
}
.getGift-heard>a{
position: absolute;
left: 0.4rem;
top: 50%;
margin-top: -0.15rem;
width: 0.17rem;
height: 0.3rem;
background: url("../images/20191225/fanhui.png");
background-size: 100% 100%;
}
.getGift-box{
padding: 0 0.3rem;
border-bottom-right-radius: 0.3rem;
border-bottom-left-radius: 0.3rem;
}
.getGift-game{
width: 100%;
display: flex;
align-items: center;
height: 1.03rem;
border-bottom: 1px solid #E4E4E4;
}
.getGift-game>img{
width: 0.6rem;
height: 0.6rem;
margin-right: 0.2rem;
}
.getGift-game>div{
display: flex;
align-items: flex-start;
justify-content: center;
flex-direction: column;
}
.getGift-game>div .title{
font-size:0.26rem;
font-family:PingFang SC;
font-weight:500;
color:rgba(41,41,41,1);
}
.getGift-game>div .number{
font-size:0.18rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(169,169,169,1);
}
.getGift-info{
height: 2.16rem;
overflow-y: auto;
}
.getGift-infoBox{
display: flex;
align-items: center;
justify-content: space-between;
height: 0.9rem;
border-bottom: 1px solid #E4E4E4;
}
.getGift-infoBox:last-child{
border: 0;
}
.getGift-infoBox .info-left{
display: flex;
flex-direction: column;
align-items: flex-start;
}
.getGift-infoBox .info-left .title{
font-size:0.22rem;
font-family:PingFang SC;
font-weight:500;
color:rgba(41,41,41,1);
}
.getGift-infoBox .info-left .del{
width: 2.91rem;
font-size:0.186rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(169,169,169,1);
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
}
.getGift-infoBox .btn,.getGift-second .btn{
width:1rem;
height:0.4rem;
background:rgba(169,169,169,0);
border:1px solid rgba(33, 177, 235, 1);
border-radius:0.16rem;
font-size:0.2rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(33,177,235,1);
text-align: center;
line-height: 0.4rem;
}
.getGift-second{
height: 0.86rem;
display: flex;
flex-direction: column;
justify-content: center;
border-bottom: 1px solid #E4E4E4;
}
.getGift-bag{
display: flex;
align-items: center;
justify-content: space-between;
}
.getGift-second .second-left{
display: flex;
flex-direction: column;
align-items: flex-start;
}
.getGift-second .second-left .title{
font-size:0.26rem;
font-family:PingFang SC;
font-weight:500;
color:rgba(41,41,41,1);
}
.getGift-second .second-left .number{
font-size:0.18rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(169,169,169,1);
}
.getGift-second .second-left .number>span{
color: #262626;
}
.getGift-activation{
display: flex;
align-items: center;
margin-top: 0.12rem;
justify-content: space-between;
}
.getGift-activation .code{
width:3.9rem;
height:0.3rem;
background:rgba(242,242,244,1);
border-radius:0.1rem;
font-size:0.16rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(169,169,169,1);
text-align: center;
line-height: 0.3rem;
}
.getGift-activation .copy{
width:1rem;
height:0.4rem;
background:rgba(33,177,235,1);
border-radius:0.1rem;
font-size:0.16rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(254,254,254,1);
text-align: center;
line-height: 0.4rem;
margin-left: 0.2rem;
}
.getGift-secondInfo{
height: 2.33rem;
overflow-y: auto;
}
.getGift-secondInfo .infoBox{
display: flex;
flex-direction: column;
align-items: flex-start;
margin-top: 0.23rem;
}
.getGift-secondInfo .infoBox .title{
font-size:0.22rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(41,41,41,1);
}
.getGift-secondInfo .infoBox .del{
width: 100%;
font-size:0.18rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(169,169,169,1);
margin-top: 0.1rem;
}
.getGiftNot{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 3.2rem;
}
.getGiftNot-img{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size:0.2rem;
font-family:PingFang SC;
font-weight:500;
color:rgba(41,41,41,1);
}
.getGiftNot-img>img{
width: 2.06rem;
height: 1.58rem;
}
.getGiftNot>.btn{
width:1.2rem;
height:0.4rem;
background:rgba(34,129,245,1);
border-radius:0.2rem;
font-size:0.24rem;
font-family:PingFang SC;
font-weight:400;
color:rgba(255,255,255,1);
text-align: center;
line-height: 0.4rem;
margin-top: 0.32rem;
}
.getGift-box .btn.has-get {
background:rgba(242,242,244,1);
color:rgba(169,169,169,1);
border:0
}

@ -609,7 +609,7 @@
top: 0;
left: 0;
width: 5.7rem;
height: 7rem;
height: 7.3rem;
left: 50%;
top: 50%;
margin-left: -2.85rem;
@ -622,7 +622,7 @@
}
.register-box{
width: 6rem;
height: 7rem;
height: 7.3rem;
background-color: #fff;
border-radius: 0.3rem;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 KiB

@ -0,0 +1,28 @@
function dateFormat(fmt, date) {
let ret;
const opt = {
"Y+": date.getFullYear().toString(), // 年
"m+": (date.getMonth() + 1).toString(), // 月
"d+": date.getDate().toString(), // 日
"H+": date.getHours().toString(), // 时
"M+": date.getMinutes().toString(), // 分
"S+": date.getSeconds().toString() // 秒
};
for (let k in opt) {
ret = new RegExp("(" + k + ")").exec(fmt);
if (ret) {
fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
};
};
return fmt;
}
$(function () {
var date = new Date()
if (dateFormat("YYYY-mm-dd", date) == '2020-04-04') {
console.log($('body').length)
$('body').css({
'-webkit-filter': 'grayscale(100%)'
})
}
})

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save