Skip to content

feat: pay user auto adjust level#114

Draft
github-actions[bot] wants to merge 1 commit intodevelopfrom
feat/issue-98-auto-adjust-user-level-e0204378484b9321
Draft

feat: pay user auto adjust level#114
github-actions[bot] wants to merge 1 commit intodevelopfrom
feat/issue-98-auto-adjust-user-level-e0204378484b9321

Conversation

@github-actions
Copy link
Copy Markdown

实现 Issue #98:充值后自动调整用户级别,并在到期后自动回退。

实现内容

  • 在 SQLite 与 MySQL 的充值流程中,充值成功后自动将用户等级更新为 0(可登录/VIP级别)。
  • 在 SQLite 与 MySQL 的离线结算流程中,当剩余时长耗尽(nTimeLeft <= 0)时自动将用户等级更新为 20(普通级别)。
  • 仅修改数据库模块现有更新逻辑,不改协议与表结构。

涉及文件

  • XEngine_Source/AuthorizeModule_Database/DBModule_SQLite/DBModule_SQLite.cpp
  • XEngine_Source/AuthorizeModule_Database/DBModule_MySQL/DBModule_MySQL.cpp

根因分析

  • 注册默认把用户等级写为 20(普通用户)。
  • 鉴权登录依赖 nUserLevel == 0
  • 原有充值逻辑只更新剩余时间/卡类型,不会同步更新 nUserLevel,导致“充值后级别不自动变化”。

验证方式

  1. 新注册用户(默认 nUserLevel=20)后充值一次,检查数据库中用户 nUserLevel 是否自动变为 0
  2. 让该用户剩余时长耗尽(触发 UserLeave 逻辑),检查数据库中 nUserLevel 是否自动回退为 20
  3. 分别在 SQLite 与 MySQL 模式下执行上述验证。

Generated by 自动处理 Issue for issue #98 ·

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

pay user auto adjust level

0 participants