feat: 实现一次性佣金功能
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m41s
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m41s
- 新增佣金计算服务,支持一次性佣金和返佣计算 - 新增 ShopSeriesOneTimeCommissionTier 模型和存储层 - 新增两个数据库迁移:一次性佣金表和订单佣金字段 - 更新 Commission 模型,新增佣金来源和关联字段 - 更新 CommissionRecord 存储层,支持一次性佣金查询 - 更新 MyCommission 服务,集成一次性佣金计算逻辑 - 更新 ShopCommission 服务,支持一次性佣金统计 - 新增佣金计算异步任务处理器 - 更新 API 路由,新增一次性佣金相关端点 - 归档 OpenSpec 变更文档,同步规范到主规范库
This commit is contained in:
41
migrations/000029_add_one_time_commission.down.sql
Normal file
41
migrations/000029_add_one_time_commission.down.sql
Normal file
@@ -0,0 +1,41 @@
|
||||
-- 回滚迁移: 一次性佣金功能
|
||||
|
||||
-- ========================================
|
||||
-- 1. 恢复 tb_commission_record 表结构
|
||||
-- ========================================
|
||||
|
||||
-- 1.1 删除新字段
|
||||
ALTER TABLE tb_commission_record
|
||||
DROP COLUMN IF EXISTS commission_source,
|
||||
DROP COLUMN IF EXISTS iot_card_id,
|
||||
DROP COLUMN IF EXISTS device_id,
|
||||
DROP COLUMN IF EXISTS remark;
|
||||
|
||||
-- 1.2 恢复旧字段
|
||||
ALTER TABLE tb_commission_record
|
||||
ADD COLUMN IF NOT EXISTS agent_id BIGINT,
|
||||
ADD COLUMN IF NOT EXISTS rule_id BIGINT,
|
||||
ADD COLUMN IF NOT EXISTS commission_type VARCHAR(50),
|
||||
ADD COLUMN IF NOT EXISTS unfrozen_at TIMESTAMP WITH TIME ZONE;
|
||||
|
||||
-- 1.3 恢复索引
|
||||
CREATE INDEX IF NOT EXISTS idx_commission_record_agent_id ON tb_commission_record(agent_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_commission_record_rule_id ON tb_commission_record(rule_id);
|
||||
|
||||
-- ========================================
|
||||
-- 2. 删除 tb_shop_series_one_time_commission_tier 表
|
||||
-- ========================================
|
||||
|
||||
DROP TABLE IF EXISTS tb_shop_series_one_time_commission_tier;
|
||||
|
||||
-- ========================================
|
||||
-- 3. 删除 tb_shop_series_allocation 的一次性佣金字段
|
||||
-- ========================================
|
||||
|
||||
ALTER TABLE tb_shop_series_allocation
|
||||
DROP COLUMN IF EXISTS enable_one_time_commission,
|
||||
DROP COLUMN IF EXISTS one_time_commission_type,
|
||||
DROP COLUMN IF EXISTS one_time_commission_trigger,
|
||||
DROP COLUMN IF EXISTS one_time_commission_threshold,
|
||||
DROP COLUMN IF EXISTS one_time_commission_mode,
|
||||
DROP COLUMN IF EXISTS one_time_commission_value;
|
||||
Reference in New Issue
Block a user