提交
This commit is contained in:
1 parent
66609c0e21
commit
0b50eff3d8
93 files changed
+40172
-30060
No files matched your search
@@ -0,0 +1,7 @@
|
||||
-- 生产过程派发质检:支持仅关联步骤产出物(无细胞产品时也可派发)
|
||||
ALTER TABLE `biz_qc_work_order`
|
||||
ADD COLUMN `production_step_output_id` varchar(64) DEFAULT NULL
|
||||
COMMENT '关联生产任务步骤产出物ID(生产过程触发时)'
|
||||
AFTER `production_task_id`;
|
||||
|
||||
CREATE INDEX `idx_qc_wo_prod_step_output` ON `biz_qc_work_order` (`production_step_output_id`, `del_flag`);
|
||||
@@ -0,0 +1,30 @@
|
||||
-- 可选:将仍有 task.current_assignee_user_id 且无步骤负责人的旧任务回填到全部步骤
|
||||
--
|
||||
-- 注意:MySQL 5.7 在 INSERT...SELECT 中 UUID() 可能整批只计算一次,导致主键重复。
|
||||
-- 此处用 SHA2(step_id) 生成确定性主键,每步唯一,且可重复执行(已存在则跳过)。
|
||||
|
||||
INSERT INTO `biz_production_task_step_assignee` (
|
||||
`id`, `step_id`, `user_id`, `tenant_no`, `order_num`,
|
||||
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
|
||||
)
|
||||
SELECT
|
||||
LOWER(SHA2(CONCAT('step-assignee-backfill:', s.id), 256)),
|
||||
s.id,
|
||||
t.current_assignee_user_id,
|
||||
s.tenant_no,
|
||||
0,
|
||||
t.create_by,
|
||||
IFNULL(t.create_dept_id, ''),
|
||||
NOW(),
|
||||
t.update_by,
|
||||
NOW(),
|
||||
0
|
||||
FROM `biz_production_task` t
|
||||
JOIN `biz_production_task_step` s ON s.task_id = t.id AND s.del_flag = 0
|
||||
WHERE t.del_flag = 0
|
||||
AND t.current_assignee_user_id IS NOT NULL
|
||||
AND TRIM(t.current_assignee_user_id) <> ''
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM `biz_production_task_step_assignee` a
|
||||
WHERE a.step_id = s.id AND a.del_flag = 0
|
||||
);
|
||||
@@ -0,0 +1,26 @@
|
||||
-- 生产任务 · 工艺步骤级派发
|
||||
-- 步骤计划开始时间、完成人 + 步骤负责人关联表
|
||||
|
||||
ALTER TABLE `biz_production_task_step`
|
||||
ADD COLUMN `planned_start_time` datetime DEFAULT NULL COMMENT '计划开始时间' AFTER `step_status`;
|
||||
|
||||
ALTER TABLE `biz_production_task_step`
|
||||
ADD COLUMN `completed_by` varchar(64) DEFAULT NULL COMMENT '完成步骤的用户ID' AFTER `completed_time`;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `biz_production_task_step_assignee` (
|
||||
`id` varchar(64) NOT NULL COMMENT '主键',
|
||||
`step_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 DEFAULT 0 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 NOT NULL DEFAULT 0 COMMENT '删除标记',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_step_assignee_step` (`step_id`),
|
||||
KEY `idx_step_assignee_user` (`user_id`, `tenant_no`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产任务步骤负责人';
|
||||
+33
-1
@@ -3522,8 +3522,10 @@ CREATE TABLE `biz_production_task_step` (
|
||||
`actual_duration` varchar(100) DEFAULT NULL COMMENT '实际耗时',
|
||||
`sop_ids` varchar(1000) DEFAULT NULL COMMENT 'SOP文档ID(逗号分隔)',
|
||||
`step_status` varchar(16) NOT NULL DEFAULT 'dzx' COMMENT '状态(dzx待执行/jxz进行中/ywc已完成)',
|
||||
`planned_start_time` datetime DEFAULT NULL COMMENT '计划开始时间',
|
||||
`started_time` datetime DEFAULT NULL COMMENT '开始时间',
|
||||
`completed_time` datetime DEFAULT NULL COMMENT '完成时间',
|
||||
`completed_by` varchar(64) DEFAULT NULL COMMENT '完成步骤的用户ID',
|
||||
`tenant_no` varchar(64) NOT NULL DEFAULT 'zkxw' COMMENT '租户编号',
|
||||
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
|
||||
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
|
||||
@@ -3538,12 +3540,40 @@ CREATE TABLE `biz_production_task_step` (
|
||||
KEY `idx_pts_tenant` (`tenant_no`,`del_flag`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产任务工艺步骤';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for biz_production_task_step_assignee
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `biz_production_task_step_assignee`;
|
||||
CREATE TABLE `biz_production_task_step_assignee` (
|
||||
`id` varchar(64) NOT NULL COMMENT '主键',
|
||||
`step_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) 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 '删除标记:0-正常 1-已删除',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_step_assignee_step` (`step_id`),
|
||||
KEY `idx_step_assignee_user` (`user_id`,`tenant_no`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产任务步骤负责人';
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of biz_production_task_step
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Records of biz_production_task_step_assignee
|
||||
-- ----------------------------
|
||||
BEGIN;
|
||||
COMMIT;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for biz_production_task_step_configured_reagent
|
||||
-- ----------------------------
|
||||
@@ -4647,6 +4677,7 @@ CREATE TABLE `biz_qc_work_order` (
|
||||
`cell_product_id` varchar(64) DEFAULT NULL COMMENT '质检对象-细胞产品ID',
|
||||
`production_work_order_id` varchar(64) DEFAULT NULL COMMENT '关联生产工单ID(生产过程触发时)',
|
||||
`production_task_id` varchar(64) DEFAULT NULL COMMENT '关联生产任务ID(可选)',
|
||||
`production_step_output_id` varchar(64) DEFAULT NULL COMMENT '关联生产任务步骤产出物ID(生产过程触发时)',
|
||||
`work_order_status` varchar(16) NOT NULL DEFAULT 'dpz' COMMENT 'dpz待配置 ypz已配置 ywc已完成',
|
||||
`has_lab` char(1) NOT NULL DEFAULT '0' COMMENT '含实验室自检',
|
||||
`has_third_party` char(1) NOT NULL DEFAULT '0' COMMENT '含第三方检测',
|
||||
@@ -4666,7 +4697,8 @@ CREATE TABLE `biz_qc_work_order` (
|
||||
UNIQUE KEY `uk_qc_wo_reception` (`reception_id`,`del_flag`),
|
||||
KEY `idx_qc_wo_tenant_status` (`tenant_no`,`work_order_status`,`del_flag`),
|
||||
KEY `idx_qc_wo_sample_trigger` (`tenant_no`,`sample_code`,`trigger_source`,`del_flag`),
|
||||
KEY `idx_qc_wo_prod_wo` (`production_work_order_id`,`del_flag`)
|
||||
KEY `idx_qc_wo_prod_wo` (`production_work_order_id`,`del_flag`),
|
||||
KEY `idx_qc_wo_prod_step_output` (`production_step_output_id`,`del_flag`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='质检工单';
|
||||
|
||||
-- ----------------------------
|
||||
|
||||
Reference in new issue
Block a user