(EXISTS (SELECT 1 FROM public.dms_wenjian_ziyuan r WHERE r.f_tenant_id=b.f_tenant_id
AND (r.wenjian_bianhao_id=b.f_id OR r.wenjian_bianhao=b.wenjian_bianhao))
OR EXISTS (SELECT 1 FROM public.dms_wenjian_xinzeng_shenhe a WHERE a.f_tenant_id=b.f_tenant_id
AND (a.wenjian_bianhao_id=b.f_id OR a.wenjian_bianhao=b.wenjian_bianhao)
AND (a.f_delete_mark IS NULL OR a.f_delete_mark <> 1))
OR EXISTS (SELECT 1 FROM public.dms_documents d WHERE d.tenant_id=b.f_tenant_id
AND d.document_no=b.wenjian_bianhao))
UPDATE public.dms_wenjian_yewu_zhan_yong
SET shenhe_id=#{auditId},shenhe_renwu_id=#{taskId},zhan_yong_jieduan=#{stage}
WHERE f_tenant_id=#{row.tenantId} AND f_id=#{row.id} AND shi_fang_shijian IS NULL
AND shenhe_id IS NOT DISTINCT FROM #{row.auditId}
AND shenhe_renwu_id IS NOT DISTINCT FROM #{row.auditTaskId}
SELECT 'CREATE' operation,f_id,f_tenant_id,f_flow_task_id,f_flow_id,f_flow_state FROM public.dms_wenjian_xinzeng_shenhe WHERE f_delete_mark IS NULL
UNION ALL
SELECT 'CREATE' operation,f_id,f_tenant_id,f_flow_task_id,f_flow_id,f_flow_state FROM public.dms_wenjian_xiuding_shenhe WHERE f_delete_mark IS NULL
UNION ALL
SELECT 'REVISION' operation,f_id,f_tenant_id,f_flow_task_id,f_flow_id,f_flow_state FROM public.dms_wenjian_xiuding_shenhe WHERE f_delete_mark IS NULL
UNION ALL
SELECT 'REVISION' operation,f_id,f_tenant_id,f_flow_task_id,f_flow_id,f_flow_state FROM public.dms_wenjian_xiuding_shenqing WHERE f_delete_mark IS NULL
UNION ALL
SELECT 'REVOCATION' operation,f_id,f_tenant_id,f_flow_task_id,f_flow_id,f_flow_state FROM public.dms_wenjian_chexiao_tiyi WHERE f_delete_mark IS NULL
UNION ALL
SELECT 'INVALIDATION' operation,f_id,f_tenant_id,f_flow_task_id,f_flow_id,f_flow_state FROM public.dms_wenjian_shixiao_shenqing WHERE f_delete_mark IS NULL
UNION ALL
SELECT 'EXTENSION' operation,f_id,f_tenant_id,f_flow_task_id,f_flow_id,f_flow_state FROM public.wenjian_fushen_yanqi_shenqing WHERE f_delete_mark IS NULL
JOIN () a ON a.f_tenant_id=o.f_tenant_id
AND a.f_id=o.shenqing_id AND a.f_flow_task_id=o.liucheng_renwu_id AND a.operation=o.yewu_leixing
JOIN public.workflow_task t ON t.f_tenant_id=a.f_tenant_id AND t.f_id=a.f_flow_task_id
AND (t.f_flow_id=a.f_flow_id OR t.f_template_id=a.f_flow_id)
AND t.f_delete_mark IS NULL AND t.f_end_time IS NOT NULL
AND t.f_status IN (3,4,7) AND a.f_flow_state=t.f_status
INSERT INTO public.dms_wenjian_yewu_zhan_yong
(f_id,f_tenant_id,wenjian_bianhao,yewu_leixing,yewu_lian_id,shenqing_id,liucheng_renwu_id,
wenjian_id,mubiao_banben_id,zhongxin_banben_id,zhan_yong_jieduan)
VALUES (#{row.id},#{row.tenantId},#{row.fileNumber},#{row.operation},#{row.chainId},
#{row.applicationId},#{row.workflowTaskId},#{row.fileId},#{row.businessVersionId},
#{row.centerVersionId},#{row.stage})
ON CONFLICT DO NOTHING
UPDATE public.dms_wenjian_yewu_zhan_yong
SET shi_fang_shijian=statement_timestamp(),shi_fang_yuanyin=#{reason}
WHERE f_tenant_id=#{tenantId} AND wenjian_bianhao=#{fileNumber} AND yewu_lian_id=#{chainId}
AND f_id=#{occupancyId} AND shi_fang_shijian IS NULL
UPDATE public.dms_wenjian_yewu_zhan_yong SET zhan_yong_jieduan=#{nextStage}
WHERE f_tenant_id=#{tenantId} AND wenjian_bianhao=#{fileNumber} AND yewu_lian_id=#{chainId}
AND f_id=#{occupancyId} AND shi_fang_shijian IS NULL AND zhan_yong_jieduan=#{expectedStage}