-- 质检检测批次:新表 + 明细 batch_id + 历史数据迁移 -- 1. 检测批次主表 CREATE TABLE IF NOT EXISTS `biz_qc_work_order_inspection_batch` ( `id` varchar(64) NOT NULL COMMENT '主键ID', `work_order_id` varchar(64) NOT NULL COMMENT '工单ID', `order_source` varchar(20) NOT NULL DEFAULT 'inbound' COMMENT '工单来源', `batch_no` varchar(32) NOT NULL COMMENT '批次编号', `batch_name` varchar(200) NOT NULL COMMENT '批次展示名', `tenant_no` varchar(64) NOT NULL DEFAULT 'zkxw' COMMENT '租户编号', `order_num` int(11) DEFAULT NULL COMMENT '排序号', `remark` varchar(512) DEFAULT NULL COMMENT '备注', `create_by` varchar(64) DEFAULT NULL COMMENT '创建人id', `create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID', `create_time` datetime NOT NULL COMMENT '创建时间', `update_by` varchar(64) DEFAULT NULL COMMENT '更新人id', `update_time` datetime NOT NULL COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记', PRIMARY KEY (`id`), KEY `idx_qc_wo_batch_wo` (`work_order_id`,`del_flag`), KEY `idx_qc_wo_batch_no` (`tenant_no`,`batch_no`,`del_flag`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='质检工单检测批次'; -- 2. 批次负责人 CREATE TABLE IF NOT EXISTS `biz_qc_batch_assignee` ( `id` varchar(64) NOT NULL COMMENT '主键', `batch_id` varchar(64) NOT NULL COMMENT '检测批次ID', `user_id` varchar(64) NOT NULL COMMENT '负责人用户ID', `tenant_no` varchar(64) NOT NULL DEFAULT 'zkxw' COMMENT '租户编号', `order_num` int(11) DEFAULT '0' COMMENT '展示顺序', `remark` varchar(512) DEFAULT NULL COMMENT '备注', `create_by` varchar(64) DEFAULT NULL COMMENT '创建人id', `create_dept_id` varchar(64) DEFAULT NULL COMMENT '创建人部门ID', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `update_by` varchar(64) DEFAULT NULL COMMENT '更新人id', `update_time` datetime DEFAULT NULL COMMENT '更新时间', `del_flag` tinyint(4) NOT NULL DEFAULT '0' COMMENT '删除标记', PRIMARY KEY (`id`), KEY `idx_qc_batch_assignee_batch` (`batch_id`,`del_flag`), KEY `idx_qc_batch_assignee_user` (`user_id`,`tenant_no`,`del_flag`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='质检检测批次负责人'; -- 3. 明细表增加 batch_id ALTER TABLE `biz_qc_work_order_lab_item` ADD COLUMN `batch_id` varchar(64) DEFAULT NULL COMMENT '检测批次ID' AFTER `order_source`; ALTER TABLE `biz_qc_work_order_third_item` ADD COLUMN `batch_id` varchar(64) DEFAULT NULL COMMENT '检测批次ID' AFTER `order_source`; ALTER TABLE `biz_qc_task` ADD COLUMN `batch_id` varchar(64) DEFAULT NULL COMMENT '检测批次ID' AFTER `work_order_id`; -- 4. 历史数据迁移:每工单默认批次 B01(需在应用层或下列 SQL 按环境执行) -- 见 migrate_qc_inspection_batch_data.sql