Files
qnc-server-v3/deploy/sql/agent_freeze_task_migration.sql

32 lines
1.9 KiB
MySQL
Raw Normal View History

2025-12-13 17:44:18 +08:00
-- ============================================
-- 代理佣金冻结任务表
-- 说明:用于记录需要解冻的佣金冻结任务,保证异步任务的一致性和持久化
-- ============================================
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 = '代理佣金冻结任务表';