Compare commits

...
17 Commits
Author SHA1 Message Date
OG Backup a437868f6e Merge branch 'master' of https://git.20031227.de5.net/og/Pro 2026-06-14 14:20:01 +08:00
OG Backup 171f8fce5c backup: 线上最终版本全量备份
包含所有线上运行的改动:
- 代理编辑功能修复(码率/占成/返水率保存)
- CORS跨域修复(Pcapi构造函数统一Origin)
- 支付通道(ccpay/epay新增)
- 代理报表洗码量显示
- AlinPay金额调整
- 代理/会员编辑页面优化
- 多语言更新
2026-06-14 14:19:49 +08:00
fengshao1227 788b8a0af3 revert+fix: 回滚充值扣费折算(恢复全额上分)+取消提现手续费
业务调整:客户不让用户承担手续费,改为客户自行预存代付账户余额(全额上分全额提现)。
1) 回滚 alin_recharge_settle 的代收费率折算,恢复充值全额上分
2) apply_withdraw/apply_withdraw_bank 提现手续费默认值 1→0,取消提现手续费
2026-06-03 19:31:14 +08:00
fengshao1227 ccf0af4ed2 fix: AlinPay充值上分按代收手续费率折算,客户承担手续费,防代付账户被掏空
根因:AlinPay代收时从平台代付账户扣手续费(回调real_amount仍是充值全额),
但系统全额上分→客户余额>账户实收→提现必差手续费那块,账户越提越空。
改为按ALIN_VN配置collection_fee_rate(%)折算上分额:充100万→上分99万(1%费率),
上分/扣代理同步折算,使客户余额=账户实收,代付永远够。back_money仍记全额供审计。
2026-06-03 19:12:26 +08:00
fengshao1227 dd84f674b0 fix: 彻底解耦存取款显隐与agent_type,只按pay_channel下发(防错配复发)
根因:登录/用户信息接口死卡 agent_type==1 才下发支付渠道,靠运营手动保持
agent_type 与 pay_channel 一致,一改错(如人工线配在线通道)用户就没存取款。
改为只看 pay_channel:OPR=人工(下发收款信息),非空非OPR=在线(下发币种/链),空=隐藏。
顺带修复 get_user_info 此前缺 OPR 分支导致人工线用户刷新丢充值信息的隐患。
覆盖移动端(Portal)+PC,均走此接口。170 错配存量已单独 UPDATE 修复。
2026-06-01 23:45:15 +08:00
fengshao1227 f67439bfe2 fix: 修复顶级代理(agent_parent_id=0)无法编辑保存(总账号给一级代理改参数报'上级错误')
do_edit 原逻辑 parent_id<=0 直接 die(parent_error),且后续全程访问 agentParent 做封顶校验,
导致顶级代理(一级总代)永远无法编辑保存。改为:顶级代理构造不设限虚拟上级,
封顶校验自动放行,封底校验(不得低于下级最高费率)与写入逻辑保持不变。对非顶级代理零影响。
2026-06-01 23:11:33 +08:00
fengshao1227 6012eff994 fix: '近一周'记录查询改为最近7天滚动窗口(含昨天),修复周一查不到昨天记录
time_interval=3 原为'本周自然周',周一时本周从今天起、昨天属上周故查无数据,
与前端'近一周/Gần một tuần'语义不符。改为 date(d)-6 ~ date(d) 最近7天滚动,
任意一天都含昨天且无星期边界问题。仅会员记录查询(onlinechip/admin Pcapi),
代理结算 Settle.php 的本周/上周保持自然周不变。
2026-06-01 15:27:50 +08:00
fengshao1227 e56ce3b132 fix: 修复结算(洗码/返水)周界查询在周日(date(w)=0)算成下周
Settle.php xima()/rebate() 的本周/上周周界同样受 date(w) 周日=0 影响,
周日会把本周算成下周、上周算成本周, 导致代理结算页查无未结数据或周次错位.
统一 date(w)->date(w)?:7, -7 上周偏移保留, 周一~周六零影响.
2026-05-31 20:15:42 +08:00
fengshao1227 a94b9f7fcc fix: 修复会员记录/报表查询'本周'在周日(date(w)=0)时间范围算成下周导致查无数据
PHP date(w) 周日返回0, date(d)-date(w)+1 在周日会把本周一推到下周一,
整个本周区间变成未来时间, 注单/记录查询返回0条(仅周日触发, 周一~周六正常).
用 date(w)?:7 将周日按第7天计算, 对周一~周六零影响.
覆盖 onlinechip/Pcapi(会员端 get_user_bets 等3处) + admin/Pcapi(3处)。
2026-05-31 20:09:18 +08:00
fengshao1227 fbeb9787dc feat(agent-report): 注单查询新增今日注单自动刷新开关(默认开,10秒刷新当前查询)
原自动刷新仅在线管理(online=1)进入时生效;现普通注单查询页也支持,
带开关(localStorage持久化)+倒计时显示,免手动点刷新。
2026-05-30 22:27:51 +08:00
fengshao1227 750a5472fa fix(alinpay): 网关域名 fallback 由 fantianchuangshi.com 迁至 hypayment.net
第三方支付网关改版迁移域名。DB配置已补 domain 字段, 同步更新代码回退默认值。
appid/secret/product_id/请求格式不变, 经账户查询验证新网关可用。
2026-05-29 21:35:01 +08:00
fengshao1227 ca2513bb7a feat(agent-home): 首页今日投注统计(tpbet)默认时间统一为 08:00:00~次日07:59:59 2026-05-29 21:17:13 +08:00
fengshao1227 2d7b15c1ad feat(agent-report): 统一全部报表默认时间为 今天08:00:00~次日07:59:59
Report.php 中 18 个报表(上下水/游戏/注单/上下分/台桌/棋牌等)默认时间
从 今天00:00~此刻 统一为 今天08:00:00~次日07:59:59(博彩日), 与结算报表一致。
保留2个默认'全部时间'(startTime=0)的查询不变。
2026-05-29 21:15:24 +08:00
fengshao1227 e763c561f1 feat(agent-report): 结算报表默认时间改为08:00~次日07:59:59, 码量列改名码粮
- Report::settle 默认日期边界 07:00/06:59:59 → 08:00/07:59:59(博彩日)
- code_amount 翻译 码量/碼量/Code amount → 码粮/碼糧/Rebate(代理后台全局)
2026-05-29 21:04:21 +08:00
fengshao1227 3ac1c2bf42 fix(agent): 代理编辑校验失败改用必须确认的弹窗, 让操作员看清原因
返水率/码率/占股超过上级上限时后端已返回具体原因(含上级上限值),
但前端用 layer.msg 一闪而过易被忽略, 误以为'改不动'。改为 layer.alert
必须点确认, 确保看清失败原因(如'返水率不能超过所属代理的返水率 0!')。
2026-05-29 11:44:46 +08:00
黎小北 490df4c4c5 修复因缺少boot_id导致路子换靴后恢复 2026-03-25 01:19:33 +08:00
黎小北 3786a0ea99 换靴后旧路子残留 2026-03-24 23:48:15 +08:00
12 changed files with 140 additions and 86 deletions
+6 -6
View File
@@ -1240,8 +1240,8 @@ class Pcapi extends Controller{
$startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y')); $startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1; $endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
}elseif($time_interval == 3){ }elseif($time_interval == 3){
$startTime = mktime(0,0,0,date("m"),date("d")-date("w")+1,date("Y")); $startTime = mktime(0,0,0,date("m"),date("d")-6,date("Y"));
$endTime = mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y")); $endTime = mktime(23,59,59,date("m"),date("d"),date("Y"));
} }
$betWhere = array(); $betWhere = array();
$betWhere['create_time'] = array('between',[$startTime,$endTime]); $betWhere['create_time'] = array('between',[$startTime,$endTime]);
@@ -1571,8 +1571,8 @@ class Pcapi extends Controller{
$startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y')); $startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1; $endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
}elseif($time_interval == 3){ }elseif($time_interval == 3){
$startTime = mktime(0,0,0,date("m"),date("d")-date("w")+1,date("Y")); $startTime = mktime(0,0,0,date("m"),date("d")-6,date("Y"));
$endTime = mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y")); $endTime = mktime(23,59,59,date("m"),date("d"),date("Y"));
} }
$betWhere = array(); $betWhere = array();
$betWhere['create_time'] = array('between',[$startTime,$endTime]); $betWhere['create_time'] = array('between',[$startTime,$endTime]);
@@ -1639,8 +1639,8 @@ class Pcapi extends Controller{
$startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y')); $startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1; $endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
}elseif($time_interval == 3){ }elseif($time_interval == 3){
$startTime = mktime(0,0,0,date("m"),date("d")-date("w")+1,date("Y")); $startTime = mktime(0,0,0,date("m"),date("d")-6,date("Y"));
$endTime = mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y")); $endTime = mktime(23,59,59,date("m"),date("d"),date("Y"));
} }
$betWhere = array(); $betWhere = array();
$betWhere['create_time'] = array('between',[$startTime,$endTime]); $betWhere['create_time'] = array('between',[$startTime,$endTime]);
+14 -2
View File
@@ -565,13 +565,25 @@ class Agent Extends Common{
if(!$user || $user['agent'] == 0){ if(!$user || $user['agent'] == 0){
die(json_encode(['code'=>0,'msg'=>$lang['error_id']])); die(json_encode(['code'=>0,'msg'=>$lang['error_id']]));
} }
// 顶级代理(agent_parent_id=0)无真实上级:构造一个不设限的虚拟上级,使所有"不得高于上级"封顶校验自动放行;
// "不得低于下级"封底校验与写入逻辑保持不变(顶级代理仍受其下级最高费率约束)。
if($parent_id <= 0){ if($parent_id <= 0){
die(json_encode(['code'=>0,'msg'=>$lang['parent_error']])); $agentParent = [
} 'limit_low' => 0, 'limit_high' => 99999999999,
'limit_low_tie' => 0, 'limit_high_tie' => 99999999999,
'limit_low_pair' => 0, 'limit_high_pair' => 99999999999,
'limit_low_nn' => 0, 'limit_high_nn' => 0,
'agent_ximalv' => 100, 'agent_ximalv_dt' => 100,
'agent_ximalv_nn' => 100, 'agent_ximalv_tc' => 100,
'agent_cs' => 100, 'rebate_rate' => 100,
'agent_parent_id' => 0,
];
}else{
$agentParent = Db::name('user')->where('id',$parent_id)->find(); $agentParent = Db::name('user')->where('id',$parent_id)->find();
if(!$agentParent || $agentParent['agent'] == 0){ if(!$agentParent || $agentParent['agent'] == 0){
die(json_encode(['code'=>0,'msg'=>$lang['parent_error']])); die(json_encode(['code'=>0,'msg'=>$lang['parent_error']]));
} }
}
if(!$nickname){ if(!$nickname){
die(json_encode(['code'=>0,'msg'=>$lang['empty_nickname']])); die(json_encode(['code'=>0,'msg'=>$lang['empty_nickname']]));
} }
+2 -2
View File
@@ -260,13 +260,13 @@ class Login extends Controller {
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
} }
$where = array(); $where = array();
+39 -39
View File
@@ -36,17 +36,17 @@ class Report Extends Common{
$game_id = intval(Request::instance()->get('game_id')); $game_id = intval(Request::instance()->get('game_id'));
$export = intval(Request::instance()->get('export')); $export = intval(Request::instance()->get('export'));
// 转换日期时间(默认:今天07:00:00 ~ 明天06:59:59 // 转换日期时间(默认:今天08:00:00 ~ 明天07:59:59
if ($startDate) { if ($startDate) {
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
} else { } else {
$startTime = strtotime(date('Y-m-d') . ' 07:00:00'); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s', $startTime); $get['startDate'] = date('Y-m-d H:i:s', $startTime);
} }
if ($endDate) { if ($endDate) {
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
} else { } else {
$endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 06:59:59'); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s', $endTime); $get['endDate'] = date('Y-m-d H:i:s', $endTime);
} }
@@ -309,14 +309,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
@@ -505,13 +505,13 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
} }
@@ -1032,13 +1032,13 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
} }
@@ -2054,14 +2054,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
@@ -2172,14 +2172,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
@@ -2269,14 +2269,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
@@ -2819,14 +2819,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
@@ -2869,13 +2869,13 @@ class Report Extends Common{
if ($startDate) { if ($startDate) {
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
} else { } else {
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s', $startTime); $get['startDate'] = date('Y-m-d H:i:s', $startTime);
} }
if ($endDate) { if ($endDate) {
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
} else { } else {
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s', $endTime); $get['endDate'] = date('Y-m-d H:i:s', $endTime);
} }
@@ -3075,14 +3075,14 @@ class Report Extends Common{
if ($startDate) { if ($startDate) {
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
} else { } else {
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s', $startTime); $get['startDate'] = date('Y-m-d H:i:s', $startTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
if ($endDate) { if ($endDate) {
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
} else { } else {
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s', $endTime); $get['endDate'] = date('Y-m-d H:i:s', $endTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
@@ -3168,14 +3168,14 @@ class Report Extends Common{
if ($startDate) { if ($startDate) {
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
} else { } else {
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s', $startTime); $get['startDate'] = date('Y-m-d H:i:s', $startTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
if ($endDate) { if ($endDate) {
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
} else { } else {
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s', $endTime); $get['endDate'] = date('Y-m-d H:i:s', $endTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
@@ -3275,14 +3275,14 @@ class Report Extends Common{
if ($startDate) { if ($startDate) {
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
} else { } else {
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s', $startTime); $get['startDate'] = date('Y-m-d H:i:s', $startTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
if ($endDate) { if ($endDate) {
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
} else { } else {
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s', $endTime); $get['endDate'] = date('Y-m-d H:i:s', $endTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
@@ -3366,14 +3366,14 @@ class Report Extends Common{
if ($startDate) { if ($startDate) {
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
} else { } else {
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s', $startTime); $get['startDate'] = date('Y-m-d H:i:s', $startTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
if ($endDate) { if ($endDate) {
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
} else { } else {
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s', $endTime); $get['endDate'] = date('Y-m-d H:i:s', $endTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
@@ -3479,14 +3479,14 @@ class Report Extends Common{
if ($startDate) { if ($startDate) {
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
} else { } else {
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s', $startTime); $get['startDate'] = date('Y-m-d H:i:s', $startTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
if ($endDate) { if ($endDate) {
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
} else { } else {
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s', $endTime); $get['endDate'] = date('Y-m-d H:i:s', $endTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
@@ -3574,14 +3574,14 @@ class Report Extends Common{
if ($startDate) { if ($startDate) {
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
} else { } else {
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s', $startTime); $get['startDate'] = date('Y-m-d H:i:s', $startTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
if ($endDate) { if ($endDate) {
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
} else { } else {
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s', $endTime); $get['endDate'] = date('Y-m-d H:i:s', $endTime);
$this->assign('get', $get); $this->assign('get', $get);
} }
@@ -3683,14 +3683,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
@@ -3895,14 +3895,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
@@ -3994,14 +3994,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
@@ -4100,14 +4100,14 @@ class Report Extends Common{
if($startDate){ if($startDate){
$startTime = strtotime($startDate); $startTime = strtotime($startDate);
}else{ }else{
$startTime = strtotime(date('Y-m-d')); $startTime = strtotime(date('Y-m-d') . ' 08:00:00');
$get['startDate'] = date('Y-m-d H:i:s',$startTime); $get['startDate'] = date('Y-m-d H:i:s',$startTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
if($endDate){ if($endDate){
$endTime = strtotime($endDate); $endTime = strtotime($endDate);
}else{ }else{
$endTime = time(); $endTime = strtotime(date('Y-m-d', strtotime('+1 day')) . ' 07:59:59');
$get['endDate'] = date('Y-m-d H:i:s',$endTime); $get['endDate'] = date('Y-m-d H:i:s',$endTime);
$this->assign('get',$get); $this->assign('get',$get);
} }
+8 -8
View File
@@ -30,12 +30,12 @@ class Settle Extends Common{
if($timeLength == 1 || $timeLength == 2){ if($timeLength == 1 || $timeLength == 2){
if($timeLength == 1){ if($timeLength == 1){
//上周时间 //上周时间
$weekStart = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("Y"))); $weekStart = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-(date("w")?:7)+1-7,date("Y")));
$weekEnd = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y"))); $weekEnd = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-(date("w")?:7)+7-7,date("Y")));
}elseif($timeLength == 2){ }elseif($timeLength == 2){
//本周时间 //本周时间
$weekStart = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"))); $weekStart = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-(date("w")?:7)+1,date("Y")));
$weekEnd = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"))); $weekEnd = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-(date("w")?:7)+7,date("Y")));
} }
$startTime = strtotime($weekStart); $startTime = strtotime($weekStart);
$endTime = strtotime($weekEnd); $endTime = strtotime($weekEnd);
@@ -474,12 +474,12 @@ class Settle Extends Common{
if($timeLength == 1 || $timeLength == 2){ if($timeLength == 1 || $timeLength == 2){
if($timeLength == 1){ if($timeLength == 1){
//上周时间 //上周时间
$weekStart = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("Y"))); $weekStart = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-(date("w")?:7)+1-7,date("Y")));
$weekEnd = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y"))); $weekEnd = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-(date("w")?:7)+7-7,date("Y")));
}elseif($timeLength == 2){ }elseif($timeLength == 2){
//本周时间 //本周时间
$weekStart = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"))); $weekStart = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-(date("w")?:7)+1,date("Y")));
$weekEnd = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"))); $weekEnd = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-(date("w")?:7)+7,date("Y")));
} }
$startTime = strtotime($weekStart); $startTime = strtotime($weekStart);
$endTime = strtotime($weekEnd); $endTime = strtotime($weekEnd);
+1 -1
View File
@@ -301,7 +301,7 @@ return [
'betting_money' => 'Bet money', 'betting_money' => 'Bet money',
'code_washing_amount' => 'Code washing amount', 'code_washing_amount' => 'Code washing amount',
'odd_code_fee' => 'Odd code fee', 'odd_code_fee' => 'Odd code fee',
'code_amount' => 'Code amount', 'code_amount' => 'Rebate',
'settled_code_amount' => 'Settled code amount', 'settled_code_amount' => 'Settled code amount',
'unsettled_code_amount' => 'Unsettled code amount', 'unsettled_code_amount' => 'Unsettled code amount',
'unsettled_rebate_amount' => 'Unsettled rebate amount', 'unsettled_rebate_amount' => 'Unsettled rebate amount',
+1 -1
View File
@@ -301,7 +301,7 @@ return [
'betting_money' => '下注金额', 'betting_money' => '下注金额',
'code_washing_amount' => '洗码量', 'code_washing_amount' => '洗码量',
'odd_code_fee' => '注单码费', 'odd_code_fee' => '注单码费',
'code_amount' => '码', 'code_amount' => '码',
'settled_code_amount' => '已结码量', 'settled_code_amount' => '已结码量',
'unsettled_code_amount' => '未结码量', 'unsettled_code_amount' => '未结码量',
'unsettled_rebate_amount' => '未结返水', 'unsettled_rebate_amount' => '未结返水',
+1 -1
View File
@@ -301,7 +301,7 @@ return [
'betting_money' => '下注金額', 'betting_money' => '下注金額',
'code_washing_amount' => '洗碼量', 'code_washing_amount' => '洗碼量',
'odd_code_fee' => '注單碼費', 'odd_code_fee' => '注單碼費',
'code_amount' => '碼', 'code_amount' => '碼',
'settled_code_amount' => '已結碼量', 'settled_code_amount' => '已結碼量',
'unsettled_code_amount' => '未結碼量', 'unsettled_code_amount' => '未結碼量',
'unsettled_rebate_amount' => '未結返水', 'unsettled_rebate_amount' => '未結返水',
+10 -2
View File
@@ -269,7 +269,12 @@
dataType: 'JSON', dataType: 'JSON',
success: function (data) { success: function (data) {
if (data.code == 0) { if (data.code == 0) {
layer.msg(data.msg); // 校验未通过:用必须点确认的弹窗代替一闪而过的 toast,确保操作员看清失败原因
// (如返水率/码率/占股超过上级上限时,后端会返回具体上限值)
layer.alert(data.msg, {
title: lang.message,
icon: 0
});
} else if (data.code == 1) { } else if (data.code == 1) {
layer.alert(data.msg,{ layer.alert(data.msg,{
title:lang.message, title:lang.message,
@@ -292,7 +297,10 @@
dataType: 'JSON', dataType: 'JSON',
success: function (d) { success: function (d) {
if (d.code == 0) { if (d.code == 0) {
layer.msg(d.msg); layer.alert(d.msg, {
title: lang.message,
icon: 0
});
} else if (d.code == 1) { } else if (d.code == 1) {
layer.alert(d.msg, { layer.alert(d.msg, {
title: lang.message title: lang.message
+39 -8
View File
@@ -77,7 +77,10 @@
<div class="gap"> <div class="gap">
<button class="layui-btn search-btn" id="search" onclick="showShadow()">{$lang['search']}</button> <button class="layui-btn search-btn" id="search" onclick="showShadow()">{$lang['search']}</button>
<a class="layui-btn search-btn" onclick="showShadow()" href="javascript:location.replace(location.href);">{$lang['refresh']}</a> <a class="layui-btn search-btn" onclick="showShadow()" href="javascript:location.replace(location.href);">{$lang['refresh']}</a>
<button class="layui-btn search-btn countDown">5</button> <label style="margin-left:6px;line-height:38px;cursor:pointer;font-weight:normal;vertical-align:middle;">
<input type="checkbox" id="autoRefresh" style="vertical-align:middle;"> 自动刷新
</label>
<button type="button" class="layui-btn search-btn countDown" style="display:none;">10</button>
</div> </div>
</div> </div>
</form> </form>
@@ -187,16 +190,44 @@
$(function(){ $(function(){
var online = $('#online').val(); var online = $('#online').val();
var refreshUrl = $('#refreshUrl').val(); var refreshUrl = $('#refreshUrl').val();
var countDown = 10; var INTERVAL = 10; // 自动刷新间隔(秒)
if(online == 1){ var countDown = INTERVAL;
$('.countDown').show(); var autoTimer = null;
setInterval(function(){
function startAuto(reloadFn){
countDown = INTERVAL;
$('.countDown').show().html(countDown);
autoTimer = setInterval(function(){
countDown = countDown - 1; countDown = countDown - 1;
$('.countDown').html(countDown); $('.countDown').html(countDown);
if(countDown == 0){ if(countDown <= 0){
location.href = refreshUrl; reloadFn();
} }
},1000); }, 1000);
}
function stopAuto(){
if(autoTimer){ clearInterval(autoTimer); autoTimer = null; }
$('.countDown').hide();
}
if(online == 1){
// 从“在线管理”进入:保持原有自动刷新行为
startAuto(function(){ location.href = refreshUrl; });
}else{
// 注单查询:可开关的今日实时自动刷新(默认开,刷新当前查询条件)
var saved = localStorage.getItem('bet_auto_refresh');
var enabled = (saved === null) ? true : (saved === '1');
$('#autoRefresh').prop('checked', enabled);
if(enabled){ startAuto(function(){ location.replace(location.href); }); }
$('#autoRefresh').on('change', function(){
if($(this).is(':checked')){
localStorage.setItem('bet_auto_refresh','1');
startAuto(function(){ location.replace(location.href); });
}else{
localStorage.setItem('bet_auto_refresh','0');
stopAuto();
}
});
} }
}) })
+14 -11
View File
@@ -197,7 +197,7 @@ class Pcapi extends Controller{
$find['pay_channel'] = ''; $find['pay_channel'] = '';
$find['pay_channel_currency'] = []; $find['pay_channel_currency'] = [];
$find['pay_channel_coin_chain'] = []; $find['pay_channel_coin_chain'] = [];
if($topAgent['agent_type'] == 1){ if($topAgent['pay_channel'] && $topAgent['pay_channel'] != 'OPR'){
// 现金线走支付渠道 // 现金线走支付渠道
$find['pay_channel'] = $topAgent['pay_channel']; $find['pay_channel'] = $topAgent['pay_channel'];
$find['pay_channel_currency'] = []; $find['pay_channel_currency'] = [];
@@ -211,7 +211,7 @@ class Pcapi extends Controller{
$find['pay_channel_coin_chain'] = json_decode($payChannelInfo['coin_chain'],true); $find['pay_channel_coin_chain'] = json_decode($payChannelInfo['coin_chain'],true);
} }
} }
} elseif ($topAgent['agent_type'] == 2 && $topAgent['pay_channel'] == 'OPR') { // 人工转帐上分,前端显示充值信息 } elseif ($topAgent['pay_channel'] == 'OPR') { // 人工转帐上分,前端显示充值信息(不依赖 agent_type,只看 pay_channel)
$find['pay_channel'] = $topAgent['pay_channel']; $find['pay_channel'] = $topAgent['pay_channel'];
$find['pay_channel_address'] = $topAgent['pay_channel_address']; $find['pay_channel_address'] = $topAgent['pay_channel_address'];
} }
@@ -270,7 +270,7 @@ class Pcapi extends Controller{
$find['pay_channel'] = ''; $find['pay_channel'] = '';
$find['pay_channel_currency'] = []; $find['pay_channel_currency'] = [];
$find['pay_channel_coin_chain'] = []; $find['pay_channel_coin_chain'] = [];
if($topAgent['agent_type'] == 1){ if($topAgent['pay_channel'] && $topAgent['pay_channel'] != 'OPR'){
// 现金线走支付渠道 // 现金线走支付渠道
$find['pay_channel'] = $topAgent['pay_channel']; $find['pay_channel'] = $topAgent['pay_channel'];
$find['pay_channel_currency'] = []; $find['pay_channel_currency'] = [];
@@ -284,6 +284,9 @@ class Pcapi extends Controller{
$find['pay_channel_coin_chain'] = json_decode($payChannelInfo['coin_chain'],true); $find['pay_channel_coin_chain'] = json_decode($payChannelInfo['coin_chain'],true);
} }
} }
} elseif($topAgent['pay_channel'] == 'OPR'){ // 人工转帐上分:与 login 保持一致下发收款信息(此前 get_user_info 缺失,刷新会丢)
$find['pay_channel'] = 'OPR';
$find['pay_channel_address'] = $topAgent['pay_channel_address'];
} }
$find['manager'] = []; $find['manager'] = [];
if($find['bet_type'] == 2){ if($find['bet_type'] == 2){
@@ -1790,8 +1793,8 @@ class Pcapi extends Controller{
$startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y')); $startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1; $endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
}elseif($time_interval == 3){ }elseif($time_interval == 3){
$startTime = mktime(0,0,0,date("m"),date("d")-date("w")+1,date("Y")); $startTime = mktime(0,0,0,date("m"),date("d")-6,date("Y"));
$endTime = mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y")); $endTime = mktime(23,59,59,date("m"),date("d"),date("Y"));
} }
$betWhere = array(); $betWhere = array();
$betWhere['create_time'] = array('between',[$startTime,$endTime]); $betWhere['create_time'] = array('between',[$startTime,$endTime]);
@@ -2298,8 +2301,8 @@ class Pcapi extends Controller{
$startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y')); $startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1; $endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
}elseif($time_interval == 3){ }elseif($time_interval == 3){
$startTime = mktime(0,0,0,date("m"),date("d")-date("w")+1,date("Y")); $startTime = mktime(0,0,0,date("m"),date("d")-6,date("Y"));
$endTime = mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y")); $endTime = mktime(23,59,59,date("m"),date("d"),date("Y"));
} }
$betWhere = array(); $betWhere = array();
$betWhere['create_time'] = array('between',[$startTime,$endTime]); $betWhere['create_time'] = array('between',[$startTime,$endTime]);
@@ -2363,8 +2366,8 @@ class Pcapi extends Controller{
$startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y')); $startTime = mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1; $endTime = mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
}elseif($time_interval == 3){ }elseif($time_interval == 3){
$startTime = mktime(0,0,0,date("m"),date("d")-date("w")+1,date("Y")); $startTime = mktime(0,0,0,date("m"),date("d")-6,date("Y"));
$endTime = mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y")); $endTime = mktime(23,59,59,date("m"),date("d"),date("Y"));
} }
$betWhere = array(); $betWhere = array();
$betWhere['create_time'] = array('between',[$startTime,$endTime]); $betWhere['create_time'] = array('between',[$startTime,$endTime]);
@@ -3827,7 +3830,7 @@ class Pcapi extends Controller{
$system = Db::name('system')->find(); $system = Db::name('system')->find();
$money = $user['money']; $money = $user['money'];
$withdrawMoney = empty($system['withdraw_money']) ? 100 : $system['withdraw_money']; $withdrawMoney = empty($system['withdraw_money']) ? 100 : $system['withdraw_money'];
$withdrawFee = empty($system['withdraw_fee']) ? 1 : $system['withdraw_fee']; $withdrawFee = empty($system['withdraw_fee']) ? 0 : $system['withdraw_fee'];
// 计算积分兑换 // 计算积分兑换
$amountMoney = $withdrawMoney/100*($amount); $amountMoney = $withdrawMoney/100*($amount);
@@ -3909,7 +3912,7 @@ class Pcapi extends Controller{
$system = Db::name('system')->find(); $system = Db::name('system')->find();
$money = $user['money']; $money = $user['money'];
$withdrawMoney = empty($system['withdraw_money']) ? 100 : $system['withdraw_money']; $withdrawMoney = empty($system['withdraw_money']) ? 100 : $system['withdraw_money'];
$withdrawFee = empty($system['withdraw_fee']) ? 1 : $system['withdraw_fee']; $withdrawFee = empty($system['withdraw_fee']) ? 0 : $system['withdraw_fee'];
// 计算积分兑换 // 计算积分兑换
$amountMoney = $withdrawMoney/100*($amount); $amountMoney = $withdrawMoney/100*($amount);
+2 -2
View File
@@ -64,8 +64,8 @@ class AlinPay
$config = json_decode($config, true); $config = json_decode($config, true);
$this->config = $config; $this->config = $config;
// 域名从配置读取,回退默认值 // 域名从配置读取,回退默认值2026-05 第三方网关由 fantianchuangshi.com 迁至 hypayment.net
$this->domain = $config['domain'] ?? 'https://alinintermon-api.fantianchuangshi.com'; $this->domain = $config['domain'] ?? 'https://alinintermon-api.hypayment.net';
} }
/** /**