|
|
@@ -58,6 +58,8 @@
|
|
|
| admin_fund_id | int | 管理员虚拟用户的资金账户ID |
|
|
|
| user_id | int | 目标用户ID |
|
|
|
| user_fund_id | int | 目标用户资金账户ID |
|
|
|
+
|
|
|
+注意:`admin_fund_id` 和 `user_fund_id` 必须是相同类型的资金账户(即相同的 fund_type),不同类型的资金账户之间不允许进行转账操作。这确保了系统中不同类型的资金不会混合。
|
|
|
| amount | bigint | 操作金额(毫为单位,正数为增加用户资金,负数为减少用户资金) |
|
|
|
| operation_type | int | 操作类型(1:转账给用户, 2:从用户回收, 3:管理员账户充值) |
|
|
|
| status | int | 状态 |
|
|
|
@@ -111,30 +113,36 @@
|
|
|
|
|
|
### 4.2 增加用户资金流程
|
|
|
|
|
|
-1. 管理员在后台选择用户的资金账户
|
|
|
-2. 管理员输入要增加的金额和备注信息
|
|
|
-3. 系统查询管理员关联的虚拟用户账户,验证账户余额是否充足
|
|
|
-4. 如果余额充足,系统执行资金转移:从管理员的虚拟用户账户扣除资金,增加目标用户账户余额
|
|
|
-5. 系统记录操作日志到 fund_admin_operation 表和 fund_logs 表
|
|
|
-6. 如果余额不足,系统提示管理员余额不足,操作失败
|
|
|
+1. 管理员在后台选择要操作的资金类型(fund_type)
|
|
|
+2. 管理员选择目标用户的资金账户(必须与选择的资金类型相同)
|
|
|
+3. 管理员输入要增加的金额和备注信息
|
|
|
+4. 系统查询管理员关联的虚拟用户账户,验证账户余额是否充足
|
|
|
+5. 系统验证管理员虚拟用户账户与目标用户账户的资金类型是否一致
|
|
|
+6. 如果余额充足且资金类型一致,系统执行资金转移:从管理员的虚拟用户账户扣除资金,增加目标用户账户余额
|
|
|
+7. 系统记录操作日志到 fund_admin_operation 表和 fund_logs 表
|
|
|
+8. 如果余额不足或资金类型不一致,系统提示错误信息,操作失败
|
|
|
|
|
|
### 4.3 减少用户资金流程
|
|
|
|
|
|
-1. 管理员在后台选择用户的资金账户
|
|
|
-2. 管理员输入要减少的金额和备注信息
|
|
|
-3. 系统验证用户账户余额是否充足
|
|
|
-4. 如果余额充足,系统执行资金转移:从用户账户扣除资金,增加管理员的虚拟用户账户余额
|
|
|
-5. 系统记录操作日志到 fund_admin_operation 表和 fund_logs 表
|
|
|
-6. 如果用户余额不足,系统提示用户余额不足,操作失败
|
|
|
+1. 管理员在后台选择要操作的资金类型(fund_type)
|
|
|
+2. 管理员选择目标用户的资金账户(必须与选择的资金类型相同)
|
|
|
+3. 管理员输入要减少的金额和备注信息
|
|
|
+4. 系统验证用户账户余额是否充足
|
|
|
+5. 系统查询管理员关联的虚拟用户账户
|
|
|
+6. 系统验证管理员虚拟用户账户与目标用户账户的资金类型是否一致
|
|
|
+7. 如果用户余额充足且资金类型一致,系统执行资金转移:从用户账户扣除资金,增加管理员的虚拟用户账户余额
|
|
|
+8. 系统记录操作日志到 fund_admin_operation 表和 fund_logs 表
|
|
|
+9. 如果用户余额不足或资金类型不一致,系统提示错误信息,操作失败
|
|
|
|
|
|
### 4.4 管理员账户充值流程
|
|
|
|
|
|
1. 超级管理员在后台选择要充值的管理员
|
|
|
-2. 超级管理员输入充值金额和备注信息
|
|
|
-3. 系统查询管理员关联的虚拟用户账户
|
|
|
-4. 系统执行充值操作,增加管理员的虚拟用户账户余额
|
|
|
-5. 系统记录操作日志到 fund_admin_operation 表和 fund_logs 表
|
|
|
-6. 系统通知被充值的管理员
|
|
|
+2. 超级管理员选择要充值的资金类型(fund_type)
|
|
|
+3. 超级管理员输入充值金额和备注信息
|
|
|
+4. 系统查询管理员关联的虚拟用户账户
|
|
|
+5. 系统执行充值操作,增加管理员的虚拟用户账户余额
|
|
|
+6. 系统记录操作日志到 fund_admin_operation 表和 fund_logs 表
|
|
|
+7. 系统通知被充值的管理员
|
|
|
|
|
|
### 4.5 资金流转操作流程(保持不变)
|
|
|
|
|
|
@@ -180,6 +188,7 @@
|
|
|
- 查询管理员关联的虚拟用户
|
|
|
- 验证虚拟用户状态是否正常
|
|
|
- 验证虚拟用户资金账户余额是否足够
|
|
|
+ - 验证管理员虚拟用户账户与目标用户账户的资金类型是否一致
|
|
|
|
|
|
2. **事务处理**
|
|
|
- 开始数据库事务,确保操作原子性
|
|
|
@@ -208,6 +217,7 @@
|
|
|
- 验证虚拟用户状态是否正常
|
|
|
- 验证目标用户账户是否存在
|
|
|
- 验证目标用户账户余额是否足够
|
|
|
+ - 验证管理员虚拟用户账户与目标用户账户的资金类型是否一致
|
|
|
|
|
|
2. **事务处理**
|
|
|
- 开始数据库事务,确保操作原子性
|
|
|
@@ -320,7 +330,8 @@
|
|
|
3. 操作金额使用毫为单位,但在界面上显示和输入时使用元为单位,系统会自动进行单位转换
|
|
|
4. 所有操作都会记录详细的日志,便于后续审计和问题排查
|
|
|
5. 资金流转只能在同一用户的不同资金账户之间进行,且币种必须一致
|
|
|
-6. 管理员的虚拟用户账户的资金不能直接用于业务操作,只能用于向用户转账
|
|
|
-7. 应定期审计管理员资金操作记录,确保操作的合法性和合理性
|
|
|
-8. 超级管理员应谨慎使用充值功能,避免过度增加系统中的资金总量
|
|
|
-9. 每个管理员都应该有自己的虚拟用户账户,不应共享账户,以确保操作的责任可追溯
|
|
|
+6. 管理员转账和回收资金时,必须确保管理员虚拟用户账户与目标用户账户的资金类型一致
|
|
|
+7. 管理员的虚拟用户账户的资金不能直接用于业务操作,只能用于向用户转账
|
|
|
+8. 应定期审计管理员资金操作记录,确保操作的合法性和合理性
|
|
|
+9. 超级管理员应谨慎使用充值功能,避免过度增加系统中的资金总量
|
|
|
+10. 每个管理员都应该有自己的虚拟用户账户,不应共享账户,以确保操作的责任可追溯
|