32 lines
1.9 KiB
SQL
32 lines
1.9 KiB
SQL
-- ============================================
|
||
-- 代理佣金冻结任务表
|
||
-- 说明:用于记录需要解冻的佣金冻结任务,保证异步任务的一致性和持久化
|
||
-- ============================================
|
||
|
||
CREATE TABLE `agent_freeze_task` (
|
||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
|
||
`agent_id` bigint NOT NULL COMMENT '代理ID',
|
||
`order_id` bigint NOT NULL COMMENT '订单ID',
|
||
`commission_id` bigint NOT NULL COMMENT '佣金记录ID',
|
||
`freeze_amount` decimal(10, 2) NOT NULL COMMENT '冻结金额',
|
||
`order_price` decimal(10, 2) NOT NULL COMMENT '订单单价',
|
||
`freeze_ratio` decimal(5, 4) NOT NULL DEFAULT 0.1000 COMMENT '冻结比例(例如:0.1000表示10%)',
|
||
`status` tinyint NOT NULL DEFAULT 1 COMMENT '状态:1=待解冻,2=已解冻,3=已取消',
|
||
`freeze_time` datetime NOT NULL COMMENT '冻结时间',
|
||
`unfreeze_time` datetime NOT NULL COMMENT '解冻时间(冻结时间+1个月)',
|
||
`actual_unfreeze_time` datetime DEFAULT NULL COMMENT '实际解冻时间',
|
||
`remark` varchar(255) DEFAULT NULL COMMENT '备注',
|
||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||
`del_state` tinyint NOT NULL DEFAULT 0 COMMENT '删除状态:0=未删除,1=已删除',
|
||
`version` bigint NOT NULL DEFAULT 0 COMMENT '版本号(乐观锁)',
|
||
PRIMARY KEY (`id`),
|
||
KEY `idx_agent_id` (`agent_id`),
|
||
KEY `idx_order_id` (`order_id`),
|
||
KEY `idx_commission_id` (`commission_id`),
|
||
KEY `idx_status` (`status`),
|
||
KEY `idx_unfreeze_time` (`unfreeze_time`),
|
||
KEY `idx_agent_status` (`agent_id`, `status`),
|
||
KEY `idx_create_time` (`create_time`)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '代理佣金冻结任务表'; |