Files
jsowell-charger-web/docs/sql/sys_todo_task.sql
2026-07-16 15:56:58 +08:00

40 lines
2.8 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- 待办事项中心任务表
-- 说明active_idempotent_key 仅在非终态任务中保留,终态时置空,
-- 用于同时满足“有效任务唯一”和“终态后允许重新创建”的要求。
CREATE TABLE `sys_todo_task` (
`todo_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '待办任务主键',
`task_type` varchar(64) NOT NULL COMMENT '待办类型编码',
`title` varchar(200) NOT NULL COMMENT '待办标题',
`summary` varchar(500) DEFAULT NULL COMMENT '待办摘要',
`content` text COMMENT '待办详细内容(纯文本)',
`business_type` varchar(64) NOT NULL COMMENT '业务类型编码',
`business_id` varchar(64) NOT NULL COMMENT '业务主键或单号',
`route_name` varchar(100) NOT NULL COMMENT '前端白名单路由名称',
`route_params` varchar(1000) DEFAULT NULL COMMENT '前端路由参数 JSON',
`assignee_user_id` bigint(20) NOT NULL COMMENT '接收用户 ID',
`assignee_merchant_id` varchar(64) DEFAULT NULL COMMENT '接收运营商 ID',
`priority` tinyint(3) NOT NULL DEFAULT '1' COMMENT '优先级1普通 2重要 3紧急',
`task_status` varchar(20) NOT NULL DEFAULT 'PENDING' COMMENT '任务状态PENDING PROCESSING COMPLETED CANCELLED EXPIRED',
`read_status` char(1) NOT NULL DEFAULT '0' COMMENT '阅读状态0未读 1已读',
`read_time` datetime DEFAULT NULL COMMENT '阅读时间',
`due_time` datetime DEFAULT NULL COMMENT '截止时间',
`completed_time` datetime DEFAULT NULL COMMENT '完成时间',
`completed_by` bigint(20) DEFAULT NULL COMMENT '完成人用户 ID',
`cancel_reason` varchar(500) DEFAULT NULL COMMENT '取消原因',
`idempotent_key` varchar(200) NOT NULL COMMENT '业务原始幂等键',
`active_idempotent_key` varchar(200) DEFAULT NULL COMMENT '有效任务幂等键,终态置空',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
`update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
`del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '逻辑删除0正常 2删除',
PRIMARY KEY (`todo_id`) USING BTREE,
UNIQUE KEY `uk_todo_active_idempotent` (`active_idempotent_key`) USING BTREE,
KEY `idx_todo_user_status` (`assignee_user_id`, `task_status`, `read_status`, `priority`, `create_time`) USING BTREE,
KEY `idx_todo_merchant_status` (`assignee_merchant_id`, `task_status`, `create_time`) USING BTREE,
KEY `idx_todo_business` (`business_type`, `business_id`) USING BTREE,
KEY `idx_todo_history_cleanup` (`del_flag`, `task_status`, `completed_time`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='用户待办任务表';