# Change: 佣金提现设置模块 ## Why 平台需要配置全局的佣金提现规则: 1. 每日提现次数限制 2. 最低提现金额 3. 提现手续费比率 配置采用"新建生效"模式,新配置生效后旧配置自动失效,保留历史记录。 ## What Changes ### 新增 API 接口 | 方法 | 路径 | 说明 | |------|------|------| | POST | `/api/admin/commission/withdrawal-settings` | 新增配置 | | GET | `/api/admin/commission/withdrawal-settings` | 配置列表(历史记录) | | GET | `/api/admin/commission/withdrawal-settings/current` | 获取当前生效配置 | ### 技术实现 - 新增 Handler:`internal/handler/admin/commission_withdrawal_setting.go` - 新增 Service:`internal/service/commission_withdrawal_setting/service.go` - 新增 DTO:`internal/model/dto/commission_withdrawal_setting_dto.go` - 扩展 Store:`internal/store/postgres/commission_withdrawal_setting_store.go` ### 业务逻辑 **新增配置**: 1. 验证参数有效性 2. 将当前生效配置的 `is_active` 设为 false 3. 创建新配置,`is_active` 设为 true 4. 记录创建人 **配置字段**: - `daily_withdrawal_limit`:每日提现次数限制 - `min_withdrawal_amount`:最低提现金额(分) - `fee_rate`:手续费比率(基点,100=1%) ## Impact ### 影响的规范 - **新增 Capability**:`commission-withdrawal-settings` ### 影响的代码 **新增文件**(约 200 行): - `internal/handler/admin/commission_withdrawal_setting.go`(~60 行) - `internal/service/commission_withdrawal_setting/service.go`(~100 行) - `internal/model/dto/commission_withdrawal_setting_dto.go`(~40 行) ### 兼容性 - ✅ 向后兼容:新增 API,不影响现有功能 ## Dependencies - 依赖提案:`add-commission-model-changes` - 依赖现有模型:`CommissionWithdrawalSetting` ## Testing Strategy 1. **单元测试**:配置切换逻辑 2. **集成测试**:新建配置→查询生效配置