Files
pk10/routes.php
T
li 4a94fe36cf feat: 重构代码架构 + 新增报表/跟单/输赢统计功能
- 拆分 HomeController → TransactionController, ReportWebController, FollowPlanController
- 新增 Service 层: TransactionService, ReportService, FollowPlanService
- pk10.php JS 抽离为 4 个独立文件 (sound/race/bet/poll)
- 前台新增报表查询页面 (/report) + 跟单计划页面 (/follow-plan)
- 后台新增跟单计划管理 + 用户输赢明细统计
- 封盘状态显示倒计时 (x:xx)
- 音效仅在开奖弹窗打开时播放
- 路由按模块分组整理
- autoload 支持 App\Services 命名空间
2026-03-27 18:41:06 +08:00

268 lines
18 KiB
PHP
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
// PK10 极速赛车平台 - 路由配置
// 按模块分组,便于维护和扩展
return [
// ============================================================
// 前台 - 页面
// ============================================================
['GET', '/', '\App\Controllers\Web\HomeController@index'],
['GET', '/game/pk10', '\App\Controllers\Web\HomeController@pk10Game'],
['GET', '/game/pk10/stats', '\App\Controllers\Web\HomeController@pk10Stats'],
['GET', '/lottery', '\App\Controllers\Web\HomeController@lottery'],
['GET', '/details', '\App\Controllers\Web\HomeController@details'],
['GET', '/profile', '\App\Controllers\Web\HomeController@profile'],
// 前台 - 通用游戏入口
['GET', '/game/{code}', '\App\Controllers\Web\GameController@play'],
['GET', '/game/{code}/stats', '\App\Controllers\Web\GameController@stats'],
// ============================================================
// 前台 - 报表 & 跟单
// ============================================================
['GET', '/report', '\App\Controllers\Web\ReportWebController@report'],
['GET', '/api/user-report', '\App\Controllers\Web\ReportWebController@userReportApi'],
['GET', '/follow-plan', '\App\Controllers\Web\FollowPlanController@followPlan'],
['POST', '/api/follow-plan/toggle', '\App\Controllers\Web\FollowPlanController@toggleFollow'],
// ============================================================
// 前台 - 交易(充提/转账)
// ============================================================
['POST', '/api/fund-request', '\App\Controllers\Web\TransactionController@fundRequest'],
['POST', '/api/transfer', '\App\Controllers\Web\TransactionController@transfer'],
// ============================================================
// 前台 - 用户设置
// ============================================================
['POST', '/api/bind-usdt', '\App\Controllers\Web\HomeController@bindUsdt'],
['POST', '/api/set-lang', '\App\Controllers\Web\HomeController@setLang'],
// ============================================================
// 前台 - 投注 & 期号
// ============================================================
['POST', '/api/bet', '\App\Controllers\Web\BetController@placeBet'],
['GET', '/api/period/current', '\App\Controllers\Web\PeriodController@getCurrent'],
// ============================================================
// 前台 - 认证
// ============================================================
['GET', '/login', '\App\Controllers\Web\AuthController@loginPage'],
['POST', '/api/auth/login', '\App\Controllers\Web\AuthController@loginSubmit'],
['POST', '/api/auth/register', '\App\Controllers\Web\AuthController@registerSubmit'],
['POST', '/api/auth/send-code', '\App\Controllers\Web\AuthController@sendVerifyCode'],
['GET', '/logout', '\App\Controllers\Web\AuthController@logout'],
// ============================================================
// 前台 - 代理
// ============================================================
['GET', '/agent', '\App\Controllers\Web\AgentController@dashboard'],
['GET', '/agent/odds', '\App\Controllers\Web\AgentController@odds'],
['GET', '/agent/bets', '\App\Controllers\Web\AgentController@bets'],
['GET', '/agent/commissions', '\App\Controllers\Web\AgentController@commissions'],
['POST', '/api/agent/set-odds', '\App\Controllers\Web\AgentController@setOdds'],
['GET', '/api/agent/commissions', '\App\Controllers\Web\AgentController@commissionsApi'],
// ============================================================
// 员工入口
// ============================================================
['GET', '/employee/login', '\App\Controllers\Admin\EmployeeController@loginPage'],
['POST', '/employee/login', '\App\Controllers\Admin\EmployeeController@loginSubmit'],
['GET', '/employee/dashboard', '\App\Controllers\Admin\EmployeeController@dashboard'],
['POST', '/employee/adjust-balance', '\App\Controllers\Admin\EmployeeController@adjustBalance'],
// ============================================================
// 系统安装
// ============================================================
['GET|POST', '/install', '\App\Controllers\Admin\InstallController@index'],
// ============================================================
// 后台 - 认证
// ============================================================
['GET', '/admin/login', '\App\Controllers\Admin\AuthController@loginPage'],
['POST', '/admin/login', '\App\Controllers\Admin\AuthController@loginSubmit'],
['GET', '/admin/logout', '\App\Controllers\Admin\AuthController@logout'],
['GET', '/admin/register', '\App\Controllers\Admin\AuthController@registerPage'],
['POST', '/admin/register', '\App\Controllers\Admin\AuthController@registerSubmit'],
// ============================================================
// 后台 - 首页 & 设置
// ============================================================
['GET', '/admin', '\App\Controllers\Admin\HomeController@index'],
['GET', '/admin/dashboard', '\App\Controllers\Admin\HomeController@index'],
['GET', '/admin/settings', '\App\Controllers\Admin\SettingsController@index'],
['GET', '/admin/settings/get', '\App\Controllers\Admin\SettingsController@get'],
['POST', '/admin/settings/save', '\App\Controllers\Admin\SettingsController@save'],
['POST', '/admin/settings/smtp-test','\App\Controllers\Admin\SettingsController@smtpTest'],
// ============================================================
// 后台 - PK10 期号管理
// ============================================================
['GET', '/admin/pk10-periods', '\App\Controllers\Admin\PK10PeriodController@index'],
['GET', '/admin/pk10-periods/{id}', '\App\Controllers\Admin\PK10PeriodController@get'],
['POST', '/admin/pk10-periods/draw', '\App\Controllers\Admin\PK10PeriodController@draw'],
['POST', '/admin/pk10-periods/settle', '\App\Controllers\Admin\PK10PeriodController@settle'],
['POST', '/admin/pk10-periods/lock', '\App\Controllers\Admin\PK10PeriodController@lock'],
['POST', '/admin/pk10-periods/start', '\App\Controllers\Admin\PK10PeriodController@start'],
// ============================================================
// 后台 - 游戏管理
// ============================================================
['GET', '/admin/games', '\App\Controllers\Admin\GameController@index'],
['GET', '/admin/games/{id}', '\App\Controllers\Admin\GameController@get'],
['GET', '/admin/games/odds/{id}', '\App\Controllers\Admin\GameController@getOdds'],
['POST', '/admin/games/odds/update', '\App\Controllers\Admin\GameController@updateOdds'],
['POST', '/admin/games/update', '\App\Controllers\Admin\GameController@update'],
// ============================================================
// 后台 - 跟单计划管理
// ============================================================
['GET', '/admin/follow-plans', '\App\Controllers\Admin\FollowPlanController@index'],
['POST', '/admin/follow-plans/save', '\App\Controllers\Admin\FollowPlanController@save'],
['POST', '/admin/follow-plans/delete', '\App\Controllers\Admin\FollowPlanController@delete'],
['POST', '/admin/follow-plans/toggle', '\App\Controllers\Admin\FollowPlanController@toggle'],
// ============================================================
// 后台 - 放水与限额
// ============================================================
['GET', '/admin/water', '\App\Controllers\Admin\WaterController@index'],
['POST', '/admin/water/update', '\App\Controllers\Admin\WaterController@updateWater'],
['POST', '/admin/water/limits', '\App\Controllers\Admin\WaterController@updateLimits'],
['POST', '/admin/water/profit-rate', '\App\Controllers\Admin\WaterController@updateProfitRate'],
// ============================================================
// 后台 - 投注记录
// ============================================================
['GET', '/admin/bets', '\App\Controllers\Admin\BetController@index'],
// ============================================================
// 后台 - 充提审核
// ============================================================
['GET', '/admin/fund-requests', '\App\Controllers\Admin\FundRequestController@index'],
['POST', '/admin/fund-requests/approve', '\App\Controllers\Admin\FundRequestController@approve'],
['POST', '/admin/fund-requests/reject', '\App\Controllers\Admin\FundRequestController@reject'],
['GET', '/admin/fund-requests/pending-count', '\App\Controllers\Admin\FundRequestController@pendingCount'],
// ============================================================
// 后台 - 财务
// ============================================================
['GET', '/admin/finance', '\App\Controllers\Admin\FinanceController@index'],
['GET', '/admin/finance/{id}', '\App\Controllers\Admin\FinanceController@get'],
['POST', '/admin/finance/deposit', '\App\Controllers\Admin\FinanceController@deposit'],
['POST', '/admin/finance/withdraw', '\App\Controllers\Admin\FinanceController@withdraw'],
// ============================================================
// 后台 - 用户管理
// ============================================================
['GET', '/admin/users', '\App\Controllers\Admin\UserController@index'],
['GET', '/admin/users/{id}', '\App\Controllers\Admin\UserController@get'],
['POST', '/admin/users/delete/{id}', '\App\Controllers\Admin\UserController@delete'],
['POST', '/admin/users/update', '\App\Controllers\Admin\UserController@update'],
['POST', '/admin/users/balance/{id}', '\App\Controllers\Admin\UserController@adjustBalance'],
// ============================================================
// 后台 - 管理员
// ============================================================
['GET', '/admin/admins', '\App\Controllers\Admin\AdminController@index'],
['POST', '/admin/admins/update', '\App\Controllers\Admin\AdminController@update'],
['POST', '/admin/admins/delete/{id}', '\App\Controllers\Admin\AdminController@delete'],
// ============================================================
// 后台 - 代理管理
// ============================================================
['GET', '/admin/agents', '\App\Controllers\Admin\AgentController@index'],
['POST', '/admin/agents/update', '\App\Controllers\Admin\AgentController@update'],
['POST', '/admin/agents/delete/{id}', '\App\Controllers\Admin\AgentController@delete'],
['GET', '/admin/agents/odds/{id}', '\App\Controllers\Admin\AgentController@odds'],
['POST', '/admin/agents/odds/update', '\App\Controllers\Admin\AgentController@updateOdds'],
['GET', '/admin/agents/commissions/{id}', '\App\Controllers\Admin\AgentController@commissions'],
// ============================================================
// 后台 - 员工管理
// ============================================================
['GET', '/admin/employees', '\App\Controllers\Admin\EmployeeController@index'],
['POST', '/admin/employees/update', '\App\Controllers\Admin\EmployeeController@update'],
['POST', '/admin/employees/delete/{id}', '\App\Controllers\Admin\EmployeeController@delete'],
// ============================================================
// 后台 - 虚拟账户
// ============================================================
['GET', '/admin/virtual', '\App\Controllers\Admin\VirtualAccountController@index'],
['POST', '/admin/virtual/create', '\App\Controllers\Admin\VirtualAccountController@create'],
['POST', '/admin/virtual/balance', '\App\Controllers\Admin\VirtualAccountController@adjustBalance'],
['POST', '/admin/virtual/delete/{id}', '\App\Controllers\Admin\VirtualAccountController@delete'],
// ============================================================
// 后台 - 统计报表
// ============================================================
['GET', '/admin/reports', '\App\Controllers\Admin\ReportController@index'],
['GET', '/admin/reports/export', '\App\Controllers\Admin\ReportController@export'],
// ============================================================
// 后台 - Bot 管理
// ============================================================
['GET', '/admin/bots', '\App\Controllers\Admin\BotController@index'],
['POST', '/admin/bots/save', '\App\Controllers\Admin\BotController@saveBot'],
['POST', '/admin/bots/update', '\App\Controllers\Admin\BotController@updateBot'],
['POST', '/admin/bots/toggle', '\App\Controllers\Admin\BotController@toggleBot'],
['POST', '/admin/bots/groups/save', '\App\Controllers\Admin\BotController@saveGroup'],
['POST', '/admin/bots/groups/update', '\App\Controllers\Admin\BotController@updateGroup'],
['POST', '/admin/bots/groups/toggle', '\App\Controllers\Admin\BotController@toggleGroup'],
['POST', '/admin/bots/wallets/save', '\App\Controllers\Admin\BotController@saveWallet'],
['POST', '/admin/bots/wallets/update', '\App\Controllers\Admin\BotController@updateWallet'],
['POST', '/admin/bots/wallets/toggle', '\App\Controllers\Admin\BotController@toggleWallet'],
['POST', '/admin/bots/members/save', '\App\Controllers\Admin\BotController@saveMember'],
['POST', '/admin/bots/members/update', '\App\Controllers\Admin\BotController@updateMember'],
['POST', '/admin/bots/members/toggle-bet', '\App\Controllers\Admin\BotController@toggleMemberBet'],
['POST', '/admin/bots/shills/save', '\App\Controllers\Admin\BotController@saveShill'],
['POST', '/admin/bots/shills/update', '\App\Controllers\Admin\BotController@updateShill'],
['POST', '/admin/bots/shills/toggle', '\App\Controllers\Admin\BotController@toggleShill'],
// ============================================================
// 后台 - 图库
// ============================================================
['GET', '/admin/images', '\App\Controllers\Admin\ImagesController@index'],
['GET', '/admin/images/list', '\App\Controllers\Admin\ImagesController@list'],
['POST', '/admin/images/upload', '\App\Controllers\Admin\ImagesController@upload'],
['POST', '/admin/images/delete', '\App\Controllers\Admin\ImagesController@delete'],
// ============================================================
// 后台 - 自动开期
// ============================================================
['GET', '/admin/auto-period', '\App\Controllers\Admin\AutoPeriodController@index'],
['POST', '/admin/auto-period/update', '\App\Controllers\Admin\AutoPeriodController@update'],
['POST', '/admin/auto-period/toggle-all', '\App\Controllers\Admin\AutoPeriodController@toggleAll'],
['GET', '/admin/auto-period/status', '\App\Controllers\Admin\AutoPeriodController@status'],
// ============================================================
// 后台 - 插件
// ============================================================
['GET', '/admin/plugins', '\App\Controllers\Admin\PluginController@manage'],
['GET', '/admin/plugins/{pluginName}', '\App\Controllers\Admin\PluginController@detail'],
['GET', '/admin/plugins/toggle/{pluginName}', '\App\Controllers\Admin\PluginController@toggleStatus'],
['GET', '/admin/plugins/install/{pluginName}', '\App\Controllers\Admin\PluginController@install'],
['GET', '/admin/plugins/uninstall/{pluginName}','\App\Controllers\Admin\PluginController@uninstall'],
// ============================================================
// API - BotTelegram 机器人)
// ============================================================
['POST', '/api/bot/auth/ping', '\App\Controllers\Api\BotController@ping'],
['GET', '/api/bot/runtime/instances', '\App\Controllers\Api\BotController@getRuntimeInstances'],
['GET', '/api/bot/groups/{tgGroupId}/config', '\App\Controllers\Api\BotController@getGroupConfig'],
['POST', '/api/bot/groups/{tgGroupId}/members/touch', '\App\Controllers\Api\BotController@touchMember'],
['POST', '/api/bot/groups/{tgGroupId}/members/bind', '\App\Controllers\Api\BotController@bindMember'],
['GET', '/api/bot/groups/{tgGroupId}/members', '\App\Controllers\Api\BotController@getGroupMembers'],
['GET', '/api/bot/groups/{tgGroupId}/period/current', '\App\Controllers\Api\BotController@getCurrentPeriod'],
['GET', '/api/bot/groups/{tgGroupId}/draw/latest', '\App\Controllers\Api\BotController@getDrawLatest'],
['GET', '/api/bot/groups/{tgGroupId}/history', '\App\Controllers\Api\BotController@getHistory'],
['POST', '/api/bot/groups/{tgGroupId}/actions/toggle-setting','\App\Controllers\Api\BotController@toggleGroupSetting'],
['GET', '/api/bot/groups/{tgGroupId}/stats/daily', '\App\Controllers\Api\BotController@getDailyStats'],
['GET', '/api/bot/groups/{tgGroupId}/stats/member', '\App\Controllers\Api\BotController@getMemberStats'],
['GET|POST', '/api/bot/groups/{tgGroupId}/pushes/pending', '\App\Controllers\Api\BotController@getPendingPushes'],
['POST', '/api/bot/groups/{tgGroupId}/pushes/ack', '\App\Controllers\Api\BotController@ackPushes'],
['GET', '/api/bot/groups/{tgGroupId}/odds', '\App\Controllers\Api\BotController@getOdds'],
['GET', '/api/bot/groups/{tgGroupId}/bet-format', '\App\Controllers\Api\BotController@getBetFormatRules'],
['POST', '/api/bot/groups/{tgGroupId}/bets', '\App\Controllers\Api\BotController@placeGroupBet'],
['POST', '/api/bot/groups/{tgGroupId}/credit', '\App\Controllers\Api\BotController@credit'],
['POST', '/api/bot/groups/{tgGroupId}/debit', '\App\Controllers\Api\BotController@debit'],
];