Просмотр исходного кода

docs: add storage release dual-gate schema and data migration SQL.

Co-authored-by: Cursor <cursoragent@cursor.com>
zlwu 2 месяцев назад
Родитель
Сommit
742021be3c
2 измененных файлов с 56 добавлено и 1 удалено
  1. 42 0
      docs/sql/2026-08-19-storage-release-dual-gate.sql
  2. 14 1
      docs/sql/zkxw.sql

+ 42 - 0
docs/sql/2026-08-19-storage-release-dual-gate.sql

@@ -0,0 +1,42 @@
+-- 入库放行审核:生产/质检双闸门
+-- MySQL 5.7;历史拷贝条件见下方 UPDATE 的 WHERE(可重复执行)
+
+ALTER TABLE `biz_storage_release_review`
+  ADD COLUMN `qc_review_conclusion` VARCHAR(16) DEFAULT NULL COMMENT '质检侧结论 tg/btg/NULL待审' AFTER `review_time`,
+  ADD COLUMN `qc_review_remark` VARCHAR(512) DEFAULT NULL COMMENT '质检侧审核备注' AFTER `qc_review_conclusion`,
+  ADD COLUMN `qc_review_attachments` VARCHAR(4000) DEFAULT NULL COMMENT '质检侧审核附件(逗号分隔URL)' AFTER `qc_review_remark`,
+  ADD COLUMN `qc_review_by` VARCHAR(64) DEFAULT NULL COMMENT '质检侧审核人ID' AFTER `qc_review_attachments`,
+  ADD COLUMN `qc_review_by_name` VARCHAR(64) DEFAULT NULL COMMENT '质检侧审核人姓名' AFTER `qc_review_by`,
+  ADD COLUMN `qc_review_time` DATETIME DEFAULT NULL COMMENT '质检侧审核时间' AFTER `qc_review_by_name`,
+  ADD COLUMN `prod_review_conclusion` VARCHAR(16) DEFAULT NULL COMMENT '生产侧结论 tg/btg/NULL待审' AFTER `qc_review_time`,
+  ADD COLUMN `prod_review_remark` VARCHAR(512) DEFAULT NULL COMMENT '生产侧审核备注' AFTER `prod_review_conclusion`,
+  ADD COLUMN `prod_review_attachments` VARCHAR(4000) DEFAULT NULL COMMENT '生产侧审核附件(逗号分隔URL)' AFTER `prod_review_remark`,
+  ADD COLUMN `prod_review_by` VARCHAR(64) DEFAULT NULL COMMENT '生产侧审核人ID' AFTER `prod_review_attachments`,
+  ADD COLUMN `prod_review_by_name` VARCHAR(64) DEFAULT NULL COMMENT '生产侧审核人姓名' AFTER `prod_review_by`,
+  ADD COLUMN `prod_review_time` DATETIME DEFAULT NULL COMMENT '生产侧审核时间' AFTER `prod_review_by_name`;
+
+ALTER TABLE `biz_storage_release_review`
+  ADD KEY `idx_srr_dual_conclusion` (`tenant_no`, `qc_review_conclusion`, `prod_review_conclusion`, `del_flag`);
+
+-- 旧单人结论只落到质检侧;已入库状态不改
+UPDATE `biz_storage_release_review`
+SET
+  `qc_review_conclusion` = `review_conclusion`,
+  `qc_review_remark` = `review_remark`,
+  `qc_review_attachments` = `review_attachments`,
+  `qc_review_by` = `review_by`,
+  `qc_review_by_name` = `review_by_name`,
+  `qc_review_time` = `review_time`
+WHERE `del_flag` = 0
+  AND (`qc_review_conclusion` IS NULL OR `qc_review_conclusion` = '')
+  AND `review_conclusion` IS NOT NULL
+  AND `review_conclusion` <> '';
+
+-- 按双闸门重算汇总(旧「仅质检通过」汇总变为 NULL)
+UPDATE `biz_storage_release_review`
+SET `review_conclusion` = CASE
+  WHEN `prod_review_conclusion` = 'tg' AND `qc_review_conclusion` = 'tg' THEN 'tg'
+  WHEN `prod_review_conclusion` = 'btg' OR `qc_review_conclusion` = 'btg' THEN 'btg'
+  ELSE NULL
+END
+WHERE `del_flag` = 0;

+ 14 - 1
docs/sql/zkxw.sql

@@ -34802,6 +34802,18 @@ CREATE TABLE `biz_storage_release_review` (
   `review_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核人ID',
   `review_by_name` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核人姓名',
   `review_time` datetime DEFAULT NULL COMMENT '审核时间',
+  `qc_review_conclusion` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '质检侧结论 tg/btg/NULL待审',
+  `qc_review_remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '质检侧审核备注',
+  `qc_review_attachments` varchar(4000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '质检侧审核附件(逗号分隔URL)',
+  `qc_review_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '质检侧审核人ID',
+  `qc_review_by_name` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '质检侧审核人姓名',
+  `qc_review_time` datetime DEFAULT NULL COMMENT '质检侧审核时间',
+  `prod_review_conclusion` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '生产侧结论 tg/btg/NULL待审',
+  `prod_review_remark` varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '生产侧审核备注',
+  `prod_review_attachments` varchar(4000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '生产侧审核附件(逗号分隔URL)',
+  `prod_review_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '生产侧审核人ID',
+  `prod_review_by_name` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '生产侧审核人姓名',
+  `prod_review_time` datetime DEFAULT NULL COMMENT '生产侧审核时间',
   `storage_status` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'drk' COMMENT '入库状态:drk=待入库/yrk=已入库',
   `storage_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入库操作人ID',
   `storage_by_name` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入库操作人姓名',
@@ -34818,7 +34830,8 @@ CREATE TABLE `biz_storage_release_review` (
   PRIMARY KEY (`id`) USING BTREE,
   KEY `idx_srr_sample` (`tenant_no`,`sample_code`,`del_flag`) USING BTREE,
   KEY `idx_srr_protocol` (`tenant_no`,`protocol_id`,`del_flag`) USING BTREE,
-  KEY `idx_srr_status` (`tenant_no`,`review_conclusion`,`storage_status`,`del_flag`) USING BTREE
+  KEY `idx_srr_status` (`tenant_no`,`review_conclusion`,`storage_status`,`del_flag`) USING BTREE,
+  KEY `idx_srr_dual_conclusion` (`tenant_no`,`qc_review_conclusion`,`prod_review_conclusion`,`del_flag`) USING BTREE
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='入库放行审核';
 
 -- ----------------------------