58 Commits

Author SHA1 Message Date
a44679665d feat: 增强代理和玩家管理功能
- 在多个控制器中更新权限检查逻辑,确保管理员能够更灵活地管理代理和玩家。
- 在 AdminPlayerStoreController 中引入对玩家创建能力的验证,确保只有具备相应权限的管理员能够创建玩家。
- 更新请求验证逻辑,新增 credit_limit、rebate_rate 和 extra_rebate_rate 字段,以支持更细粒度的玩家管理。
- 在 AgentNodeProfileController 中添加对父代理能力授予的验证,确保子代理的权限在父代理范围内。
- 引入 AgentProfileFieldRules 以简化代理资料更新请求的规则定义,提升代码复用性。
2026-06-04 18:00:50 +08:00
96545f87f6 feat: 增强代理节点和代理资料管理功能
- 在 AgentNodeProfileController 中添加对父代理能力授予的验证,确保子代理的权限在父代理范围内。
- 更新多个请求类,统一代理资料字段的验证逻辑,提升代码复用性。
- 引入 AgentProfileFieldRules 以简化代理资料更新请求的规则定义。
- 在 AgentProfile 模型中设置主键为 agent_node_id,确保与代理节点的关联性。
- 更新错误信息,增加对授信额度和占成比例的验证,确保数据一致性。
2026-06-04 10:15:10 +08:00
e3ffffad9c feat: 增强代理和玩家管理功能
- 在 SyncAdminAuthorizationCommand 中新增对代理线路和结算菜单操作的同步功能,确保缺失的菜单操作行能够被创建。
- 更新多个控制器中的权限检查逻辑,使用 hasPermissionCode 替代原有的权限验证方式,提升权限管理的灵活性。
- 在 AdminPlayerStoreController 中引入对玩家创建能力的验证,确保只有具备相应权限的管理员能够创建玩家。
- 更新请求验证逻辑,新增 credit_limit、rebate_rate 和 extra_rebate_rate 字段,以支持更细粒度的玩家管理。
- 在 AdminUser 和 AgentNode 模型中增强角色与用户的权限管理功能,支持更细粒度的权限控制。
2026-06-04 09:17:47 +08:00
0527c7c392 feat: 增强管理员权限与角色管理功能
- 在 SyncAdminAuthorizationCommand 中新增对代理和抽奖菜单操作的同步功能,确保缺失的菜单操作行能够被创建。
- 更新多个控制器中的权限检查逻辑,使用 hasPermissionCode 替代原有的权限验证方式,提升权限管理的灵活性。
- 引入 ApiMessage 统一错误响应格式,确保在权限不足时返回一致的错误信息。
- 更新 AdminRole 和 AdminUser 模型,增强角色与用户的权限管理功能,支持更细粒度的权限控制。
2026-06-03 10:56:36 +08:00
1dcd4716c5 refactor: 更新权限管理与请求验证逻辑
- 在多个控制器中将权限检查从 hasAdminPermission 更新为 hasPermissionCode,以增强权限管理的灵活性。
- 引入 AdminScopePolicy,优化基于代理节点的权限和数据过滤逻辑,确保管理员能够更精确地控制访问权限。
- 在请求验证中添加 agent_node_id 字段,确保 API 接口支持代理节点的相关操作。
- 更新 AdminUser 模型,新增 hasPermissionCode 方法,以支持更细粒度的权限检查。
- 优化审计日志记录逻辑,确保在处理请求时能够准确记录管理员的操作。
2026-06-03 10:07:38 +08:00
0841fbed32 feat: 增强管理员功能与数据处理
- 在多个控制器中引入 agent_node_id,以支持基于代理节点的权限和数据过滤。
- 更新 AdminRole 和 AdminUser 模型,新增角色范围和代理节点相关功能,提升角色管理的灵活性。
- 在请求验证中添加 agent_node_id 字段,确保 API 接口支持代理节点的相关操作。
- 优化 LotterySettings 服务,支持批量写入设置,提升配置管理的效率。
- 更新仪表板和报告服务,增强数据统计功能,确保管理员能够获取更全面的统计信息。
2026-06-02 14:36:58 +08:00
d5232c756f feat: 更新玩家信息和统计功能
- 在多个控制器中更新玩家相关数据的查询,新增 'nickname' 字段以增强玩家信息的完整性。
- 在 AdminDashboardSnapshotBuilder 中引入平台风险统计,提供锁定金额和使用百分比的概览。
- 更新 AdminReportQueryService 以返回更详细的统计数据,包括总投注、总中奖和总派彩金额。
- 增强测试用例以验证新增字段和统计功能的准确性。
2026-06-01 16:53:08 +08:00
c101ece539 feat: 添加待审核开奖批次统计功能至管理员仪表板
- 在 AdminDashboardSnapshotBuilder 中新增 resultBatchQueue 方法,统计全站待审核的开奖批次信息。
- 更新仪表板数据结构,包含待审核开奖批次的总数、待开奖次数及首个待审核开奖的 ID。
- 在 AdminDashboardApiTest 中新增测试用例,验证仪表板返回的待审核开奖批次统计数据的准确性。
2026-06-01 16:01:37 +08:00
b13776b480 feat: 添加删除待审核开奖批次功能及相关错误信息
- 在 AdminAuthorizationRegistry 中新增删除待审核开奖批次的权限定义。
- 更新 API 路由以支持删除待审核开奖批次的请求。
- 在多语言文件中添加相关错误信息,确保用户在删除操作中获得清晰的反馈。
- 增加测试用例,验证管理员能够成功删除待审核的开奖批次并返回正确状态。
2026-06-01 15:37:33 +08:00
0323d92381 feat: 增强奖池与钱包服务的多币种支持能力
更新 JackpotManualBurstService:在解析头奖中奖者时支持币种代码处理。
重构 SettlementBatchWorkflowService:按币种聚合玩家派奖金额,确保各币种结算准确入账。
修改 SettlementOrchestrator:按币种分别处理奖池爆奖流程,提升派奖准确性。
优化 TicketWalletService:在派奖幂等键中加入币种信息,避免多币种场景下的重复处理问题。
新增测试用例,验证多币种派奖场景及待处理交易的正确处理逻辑。
2026-05-28 16:50:24 +08:00
8ccf39dff5 refactor: 迁移彩票设置至 LotterySettings 服务
- 更新多个控制器和服务,使用 LotterySettings 服务获取彩票相关配置,如默认币种、开奖间隔、下注窗口等,提升代码一致性与可维护性。
- 移除 .env.example 中不再使用的配置项,建议通过后台管理进行设置。
2026-05-28 14:50:25 +08:00
fe0594beaa feat: 增强钱包 API URL 验证与配置
- 在 AdminIntegrationSiteStoreRequest 和 AdminIntegrationSiteUpdateRequest 中引入 WalletApiUrlRule,确保 wallet_api_url 字段符合 HTTPS 公开域名要求。
- 更新 HttpMainSiteWalletBalanceClient 和 HttpMainSiteWalletGateway,使用 WalletApiUrlSanitizer 进行 URL 规范化与验证,防止 SSRF 攻击。
- 新增测试用例,验证 wallet_api_url 的有效性,确保系统安全性与稳定性。
- 更新 .env.example 文件,添加 LOTTERY_RISK_POOL_USE_REDIS_LUA 配置项以支持 Redis Lua 原子扣减功能。
- 修改 package-lock.json 中的项目名称,确保一致性。
- 在 API 路由中新增 integration/runtime-origins 路由,提供运行时白名单功能。
2026-05-28 10:10:26 +08:00
a60ce8caad refactor: 优化 DrawHallSnapshotBuilder 和权限管理逻辑
- 在 DrawHallSnapshotBuilder 中简化数据获取逻辑,仅保留必要字段,更新状态表示方式。
- 在 AdminAuthorizationRegistry 中整合接入站点权限定义,提升权限管理的灵活性与可维护性。
- 更新调度任务配置,确保任务在单一服务器上运行,避免重叠执行,提高系统稳定性。
- 增强测试用例,确保新逻辑的正确性与稳定性。
2026-05-27 16:51:08 +08:00
a10135d6ee feat: 增强玩家管理功能,集成接入站点权限控制
在多个玩家相关控制器中引入 AdminSiteScope,确保管理员在执行操作前具备相应的接入站点权限。更新 Player 相关请求以支持 site_code 参数,增强权限验证逻辑,确保系统安全性与灵活性。同时,新增 AdminUser 模型方法以获取可访问的站点 ID 列表,优化权限管理。
2026-05-27 13:36:23 +08:00
b649c862ef feat: 在 WalletBalanceController 中集成主站钱包余额获取功能
新增 HttpMainSiteWalletBalanceClient,用于在配置启用时获取主站钱包余额。
更新 WalletBalanceController:根据主站 API 返回结果新增 main_balance 与 main_balance_formatted 字段。
在 lottery.php 中新增钱包余额 API 路径配置项。
增强 WalletBalanceTest,验证在配置主站 API 后可正确获取 main_balance。
2026-05-27 11:31:20 +08:00
a9d0f39a9c feat: 增强开奖与设置控制器的币种支持功能
引入 CurrencyResolver,用于在 DrawCurrentController、DrawResultShowController 与 DrawResultsIndexController 中统一处理币种代码解析。
更新 DrawHallSnapshotBuilder 与 DrawResultViewService 的构建方法,新增币种代码参数支持,确保开奖相关功能中的币种处理一致性。
增强 SettingIndexController:新增允许访问的 KV 配置分组校验。
在 OddsStreamService、PlayConfigStreamService 与 RiskCapStreamService 中新增广播功能,用于在玩法目录变更时推送更新通知。
新增测试用例,验证风险限额发布的广播行为。
2026-05-27 09:57:39 +08:00
618201f980 feat: 重构注单控制器以复用共享筛选逻辑
新增 TicketItemListFilters trait,用于封装注单列表的通用筛选逻辑。
更新 AdminPlayerTicketItemsIndexController、AdminTicketItemIndexController 与 TicketItemsIndexController,统一使用新的注单编号搜索与订单日期范围筛选方法,提升代码复用性与可读性。
增强 AdminRiskPoolManualStatusController:支持发布手动停售状态变更通知。
优化 RiskPoolService 与 TicketWalletService:钱包资金变动后实时通知余额更新。
更新测试用例,确保重构后功能行为保持一致。
2026-05-26 17:14:19 +08:00
36e50383ba feat: 增强票据与钱包服务的幂等性及错误处理能力
在 TicketItemShowController 与 TicketItemsIndexController 的响应中新增订单状态与失败原因字段。
更新 WalletLogsController:待对账列表支持按币种筛选。
在 TicketPlacementService 中引入幂等性校验,支持处理已退款订单的重复请求。
优化钱包相关操作的错误码与错误提示信息,提升问题定位与用户理解。
增强测试用例,验证票据下单流程中的新幂等性行为。
2026-05-26 15:24:54 +08:00
c8c90e3e94 feat: 增强奖池与钱包管理功能
更新 AdminJackpotPoolUpdateController 校验规则,禁止传入 current_amount。
优化 AdminRiskPoolManualStatusController:更新奖池状态后同步 Redis 状态。
在 TransferOrderReconcileController 中新增 completeCredit 方法,用于处理卡住的转账订单对账。
调整 TransferOrderListController:优化转账订单处理条件。
在 TicketItemsIndexController 中实现支持时区的日期筛选,提升日期处理准确性。
扩展 JackpotPool 模型,新增 adjustments 关联关系。
改进票据与钱包相关服务中的错误处理和事务管理。
2026-05-26 14:58:41 +08:00
48349e3302 feat: Enhance settlement and draw management functionality
- Implement error handling for skipped settlement runs in DrawSettlementRunController, returning appropriate error messages based on draw status.
- Add validation in DrawPublishService to ensure draws are ready for publication, rejecting outdated result batches.
- Update SettlementBatchWorkflowService to revert ticket statuses upon settlement rejection and restore jackpot pool amounts.
- Refactor LotteryTransferService to improve transaction handling for transfer order reconciliation, ensuring idempotency during reversals.
- Add multi-language support for new error messages related to settlement processes.
2026-05-26 14:10:16 +08:00
e4118d7b1d feat: 更新后台 RBAC 文档与权限检查逻辑
- 在 `AGENTS.md` 中新增后台 RBAC 相关说明,强调 `php artisan lottery:admin-auth-sync --audit` 的使用。
- 更新 `README.md`,明确本地重置演示数据的命令,并补充 `AdminAuthorizationRegistry` 的同步要求。
- 精简 `AdminDashboardAnalyticsBuilder` 中的权限检查逻辑,确保与 `AdminAuthorizationRegistry` 一致。
- 在 `admin-rbac.md` 中添加仪表盘 API 权限要求的详细信息,优化维护命令的描述。
2026-05-26 13:59:28 +08:00
3c74ffc2d5 feat: 添加 PHPSpreadsheet 支持以增强报表导出功能
- 在 `composer.json` 中新增 `phpoffice/phpspreadsheet` 依赖。
- 更新 `ReportJobDownloadController` 以使用 `AdminReportSpreadsheetExporter` 进行 XLSX 格式的报表导出,简化导出逻辑并确保文件名包含动态生成的输出路径后缀。
- 更新 `AdminAuthorizationRegistry` 中的权限定义,扩展相关权限以支持新的设置管理功能。
2026-05-26 13:53:18 +08:00
bba084b3c1 feat: 增强报表功能,支持新参数和导出类型
- 在 `ReportJobStoreRequest` 中新增 `draw_id`、`draw_no` 和 `normalized_number` 参数的验证规则。
- 更新 `AdminReportJobService` 以支持动态生成输出路径后缀,确保导出文件名包含相关信息。
- 在 `AdminReportQueryService` 中新增多个报表类型的处理逻辑,包括 `draw_profit_summary` 和 `sold_out_number_report`。
- 添加相应的测试用例,确保新功能的正确性和稳定性。
2026-05-26 11:48:40 +08:00
c74bec3f64 feat: 增强抽奖管理功能,支持手动创建、更新和删除期号
- 新增 API 路由和控制器,允许管理员手动创建、更新和删除抽奖期号。
- 更新抽奖调度逻辑,确保在抽奖时间和封盘时间的管理上更加灵活。
- 添加多语言支持的错误信息,提升用户体验。
- 更新测试用例,确保新功能的正确性和稳定性。
2026-05-25 18:00:22 +08:00
e27a00f260 feat: 更新玩法配置管理,简化字段并增强功能
- 将玩法相关的显示名称字段统一为 `display_name`,移除多语言字段。
- 在 `PlayTypePatchController` 中新增即时切换玩法开关的功能,并推送大厅更新。
- 优化多个控制器和服务中的权限检查与数据处理逻辑,提升代码可读性与维护性。
2026-05-25 14:34:24 +08:00
2e8ab58970 fix: 统一注单待开奖状态并收敛报表任务返回字段 2026-05-22 11:32:42 +08:00
83f2dd43db feat(admin): 补全报表中心汇总 API 并恢复 report-jobs 导出
新增每日盈亏、玩家输赢、玩法维度、佣金回水四类聚合查询与权限注册,恢复报表异步导出任务;审计日志支持按操作人与日期筛选。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-22 10:08:41 +08:00
c1c25e3143 feat: 为赔率项增加 dimension 字段并支持按维度配置佣金,调整后台配置导航权限 2026-05-21 17:54:31 +08:00
7a6048de10 feat: 增强环境配置与开发服务,支持局域网访问及币种管理 2026-05-21 16:24:41 +08:00
2753590685 feat: 支持开奖设置走系统配置并补充相关测试 2026-05-20 13:54:32 +08:00
057ddecaa1 feat(admin): 完善后台角色管理与权限同步,新增当前管理员信息接口 2026-05-19 14:39:54 +08:00
4cf561cd57 feat(admin): 统一后台 API 资源鉴权并完善投注风控快照与回补 2026-05-19 09:11:50 +08:00
6ef41cee76 feat: 扩展奖池、风控与报表能力,新增对账补偿、广播和人工操作接口 2026-05-18 15:09:10 +08:00
9157dcb6a1 feat: 支持开奖重开与风险池原子扣减,完善投注部分成功流程 2026-05-18 11:28:11 +08:00
4f143c7cb1 feat: 拆分开奖与结算审核流程,新增手动结果录入、重开和派彩审批接口 2026-05-16 18:01:06 +08:00
fd757180d1 feat: 优化 DrawCurrentController 和 LotteryHallRealtimeBroadcaster 的响应结构 2026-05-16 10:31:57 +08:00
7daf0c3bba feat: 扩展玩法配置快照字段并切换目录生效来源 2026-05-16 10:27:59 +08:00
f7f6c58b02 fix: 增强配置发布校验与关闭玩法清理提示
1. 发布赔率、玩法配置和风控封顶草稿前校验空配置、重复项、金额范围和合法性
2. 限制赔率返水与佣金比例在 0 到 1 之间
3. 投注预览和下单遇到已关闭玩法时返回需清理注项明细
2026-05-16 09:54:47 +08:00
c0cd8be0fb feat: 新增赔率版本和玩法配置版本的删除接口,支持删除草稿版本 2026-05-15 15:30:40 +08:00
5398af0a55 feat: add wallet transfer reconcile command and schedule task
新增钱包划转对账命令行工具与定时任务,用于扫描主站与彩票侧的转账流水差异,记录掉单和异常划转单,并生成对账报告。
2026-05-15 10:41:39 +08:00
d877b5e37a feat: 新增玩家管理与转账对账相关功能
1.  新增完整的后台玩家管理CRUD接口,包括列表、创建、详情、更新、删除
2.  新增转账订单冲正和人工处理功能,支持待对账订单状态变更
3.  扩展钱包流水和转账订单的状态支持,新增reversed、manually_processed等状态
4.  新增玩家API数据统一输出类,标准化玩家信息返回格式
2026-05-14 10:43:33 +08:00
c9c1fecfcf feat(player-auth): add JWT TTL check and AES wrapped token support
1. 新增JWT有效期校验,限制exp-iat最大时长并支持强制校验iat字段
2. 新增AES-GCM密文Token解包能力,支持非标准JWT格式的令牌传递
3. 新增相关配置项和环境变量,可灵活调整校验策略
2026-05-14 09:37:52 +08:00
6defe6bb0d feat: 添加实时广播功能,支持风险预警、玩法切换和赔率更新,增强大厅公共频道的广播能力 2026-05-13 14:36:28 +08:00
805847954d refactor:拆分 API 路由与请求校验,统一 final 类和代码风格 2026-05-13 11:54:40 +08:00
5d2dbdbe1d refactor:用 AdminApiList 统一后台列表类接口的响应格式 2026-05-13 11:36:24 +08:00
7e96c01da1 fix: 优化 soldOutBucketKey 方法逻辑,确保数字和字母处理一致性;更新数据库填充器以对齐仪表盘场景 2026-05-11 17:20:58 +08:00
0cbd64a5af feat: 添加仪表盘接口,聚合财务、风控和待办计数,增强管理员 API 路由功能 2026-05-11 17:02:28 +08:00
fc023242ce feat: 增强管理员权限管理,添加 RBAC 支持,更新 AdminUser 模型以处理角色和权限,更新登录接口返回权限信息,扩展数据库填充器以同步角色权限 2026-05-11 16:21:13 +08:00
19003f5041 feat: 添加结算功能,更新 TicketItem 模型以支持最新结算详情,增强 DrawTickService 以自动处理结算,更新 TicketWalletService 以支持派彩入账,扩展 API 路由以管理结算批次和奖池 2026-05-11 15:34:34 +08:00
058f596f34 feat: 添加新的错误码以支持投注功能,更新数据库填充器以增强玩法和赔率配置,扩展 API 路由以支持风险池管理 2026-05-11 11:52:23 +08:00