Files
zkxw/docs/sql/2026-08-19-storage-release-dual-gate.sql
T

43 lines
2.6 KiB
SQL

-- 入库放行审核:生产/质检双闸门
-- 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;