76 lines
3.3 KiB
SQL
76 lines
3.3 KiB
SQL
-- 签署材料版本的公司盖章/骑缝章开关及任务、电子签快照。MySQL 8.0+
|
|
-- 上线顺序:先在目标数据库执行本文件,再部署后端及后台前端。
|
|
-- 可重复执行;只新增可空列,不回填或覆盖历史业务数据。
|
|
-- NULL 表示历史规则:公司盖章需要,骑缝章沿用 QiyuesuoSetting.EnableAcrossPageSeal。
|
|
-- 新上传版本显式保存 true/false;任务及电子签文档分别保存快照。
|
|
SET NAMES utf8mb4;
|
|
|
|
DROP PROCEDURE IF EXISTS ob_upgrade_contract_version_seal_switches;
|
|
DELIMITER $$
|
|
CREATE PROCEDURE ob_upgrade_contract_version_seal_switches()
|
|
BEGIN
|
|
IF NOT EXISTS (
|
|
SELECT 1 FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'ob_contract_template_version'
|
|
AND COLUMN_NAME = 'CompanySealEnabled'
|
|
) THEN
|
|
ALTER TABLE `ob_contract_template_version`
|
|
ADD COLUMN `CompanySealEnabled` TINYINT(1) NULL DEFAULT NULL
|
|
COMMENT '公司盖章开关;NULL沿用历史需要盖章';
|
|
END IF;
|
|
IF NOT EXISTS (
|
|
SELECT 1 FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'ob_contract_template_version'
|
|
AND COLUMN_NAME = 'AcrossPageSealEnabled'
|
|
) THEN
|
|
ALTER TABLE `ob_contract_template_version`
|
|
ADD COLUMN `AcrossPageSealEnabled` TINYINT(1) NULL DEFAULT NULL
|
|
COMMENT '骑缝章开关;NULL沿用历史系统配置';
|
|
END IF;
|
|
IF NOT EXISTS (
|
|
SELECT 1 FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'ob_task_contract'
|
|
AND COLUMN_NAME = 'CompanySealEnabled'
|
|
) THEN
|
|
ALTER TABLE `ob_task_contract`
|
|
ADD COLUMN `CompanySealEnabled` TINYINT(1) NULL DEFAULT NULL
|
|
COMMENT '公司盖章开关;NULL沿用历史需要盖章';
|
|
END IF;
|
|
IF NOT EXISTS (
|
|
SELECT 1 FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'ob_task_contract'
|
|
AND COLUMN_NAME = 'AcrossPageSealEnabled'
|
|
) THEN
|
|
ALTER TABLE `ob_task_contract`
|
|
ADD COLUMN `AcrossPageSealEnabled` TINYINT(1) NULL DEFAULT NULL
|
|
COMMENT '骑缝章开关;NULL沿用历史系统配置';
|
|
END IF;
|
|
IF NOT EXISTS (
|
|
SELECT 1 FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'ob_electronic_sign_document'
|
|
AND COLUMN_NAME = 'CompanySealEnabled'
|
|
) THEN
|
|
ALTER TABLE `ob_electronic_sign_document`
|
|
ADD COLUMN `CompanySealEnabled` TINYINT(1) NULL DEFAULT NULL
|
|
COMMENT '公司盖章开关;NULL沿用历史需要盖章';
|
|
END IF;
|
|
IF NOT EXISTS (
|
|
SELECT 1 FROM information_schema.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'ob_electronic_sign_document'
|
|
AND COLUMN_NAME = 'AcrossPageSealEnabled'
|
|
) THEN
|
|
ALTER TABLE `ob_electronic_sign_document`
|
|
ADD COLUMN `AcrossPageSealEnabled` TINYINT(1) NULL DEFAULT NULL
|
|
COMMENT '骑缝章开关;NULL沿用历史系统配置';
|
|
END IF;
|
|
END$$
|
|
DELIMITER ;
|
|
CALL ob_upgrade_contract_version_seal_switches();
|
|
DROP PROCEDURE IF EXISTS ob_upgrade_contract_version_seal_switches;
|