电子签基础功能
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
-- 增加入职电子签“作废后重新发起”能力。
|
||||
-- 已执行 20260903_qiyuesuo_electronic_sign.sql 的数据库需要单独执行本文件。
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
|
||||
ALTER TABLE `ob_electronic_sign_process`
|
||||
ADD COLUMN `IsCurrent` TINYINT(1) NULL DEFAULT NULL
|
||||
COMMENT '是否为任务当前电子签流程,历史流程为空'
|
||||
AFTER `BizId`;
|
||||
|
||||
ALTER TABLE `ob_electronic_sign_process`
|
||||
ADD COLUMN `ReissueReason` VARCHAR(500) NULL
|
||||
COMMENT '重新发起原因'
|
||||
AFTER `RetryCount`,
|
||||
ADD COLUMN `ReissuedAt` DATETIME(3) NULL
|
||||
COMMENT '被新流程替代时间'
|
||||
AFTER `ReissueReason`,
|
||||
ADD COLUMN `ReissuedByProcessId` BIGINT NULL
|
||||
COMMENT '替代当前流程的新流程Id'
|
||||
AFTER `ReissuedAt`;
|
||||
|
||||
-- 雪花 Id 与创建时间同序,每个任务只把最新一条流程标记为当前流程。
|
||||
UPDATE `ob_electronic_sign_process` process
|
||||
INNER JOIN (
|
||||
SELECT `TaskId`, MAX(`Id`) AS `LatestProcessId`
|
||||
FROM `ob_electronic_sign_process`
|
||||
GROUP BY `TaskId`
|
||||
) latest ON latest.`LatestProcessId` = process.`Id`
|
||||
SET process.`IsCurrent` = 1;
|
||||
|
||||
ALTER TABLE `ob_electronic_sign_process`
|
||||
ADD UNIQUE KEY `uk_ob_esign_process_current` (`TaskId`, `IsCurrent`);
|
||||
|
||||
Reference in New Issue
Block a user