feat: complete SOP execution workflow
This commit is contained in:
25
migrations/000002_bind_knowledge_versions.up.sql
Normal file
25
migrations/000002_bind_knowledge_versions.up.sql
Normal file
@@ -0,0 +1,25 @@
|
||||
UPDATE sop_nodes n
|
||||
JOIN sop_versions sv ON sv.id = n.sop_version_id
|
||||
SET n.config = JSON_SET(
|
||||
n.config,
|
||||
'$.knowledge_card_version_id',
|
||||
(
|
||||
SELECT kv.id
|
||||
FROM knowledge_card_versions kv
|
||||
WHERE kv.tenant_id = n.tenant_id
|
||||
AND kv.knowledge_card_id = CAST(JSON_UNQUOTE(JSON_EXTRACT(n.config, '$.knowledge_card_id')) AS UNSIGNED)
|
||||
AND kv.created_at <= COALESCE(sv.published_at, sv.updated_at)
|
||||
ORDER BY kv.version DESC
|
||||
LIMIT 1
|
||||
)
|
||||
)
|
||||
WHERE n.type = 'knowledge'
|
||||
AND JSON_EXTRACT(n.config, '$.knowledge_card_version_id') IS NULL
|
||||
AND JSON_EXTRACT(n.config, '$.knowledge_card_id') IS NOT NULL
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM knowledge_card_versions kv
|
||||
WHERE kv.tenant_id = n.tenant_id
|
||||
AND kv.knowledge_card_id = CAST(JSON_UNQUOTE(JSON_EXTRACT(n.config, '$.knowledge_card_id')) AS UNSIGNED)
|
||||
AND kv.created_at <= COALESCE(sv.published_at, sv.updated_at)
|
||||
);
|
||||
Reference in New Issue
Block a user