SELECT m.f_tenant_id tenant_id,m.f_flow_task_id task_id,m.f_flow_id flow_id,to_jsonb(c)->>'wenjian_id' file_id FROM public.dms_wenjian_chexiao_tiyi m JOIN public.dms_wenjian_chexiao_tiyi_zixiang c ON c.f_tenant_id=m.f_tenant_id AND c.f_foreign_id=m.f_id AND c.f_delete_mark IS NULL WHERE m.f_tenant_id=#{tenantId} AND m.f_delete_mark IS NULL AND m.f_flow_state IN (1,2,3,4,5,6,7,8,9,10) UNION ALL SELECT m.f_tenant_id,m.f_flow_task_id,m.f_flow_id,to_jsonb(c)->>'wenjian_id' FROM public.dms_wenjian_shixiao_shenqing m JOIN public.dms_wenjian_shixiao_shenqing_zixiang c ON c.f_tenant_id=m.f_tenant_id AND c.f_foreign_id=m.f_id AND c.f_delete_mark IS NULL WHERE m.f_tenant_id=#{tenantId} AND m.f_delete_mark IS NULL AND m.f_flow_state IN (1,2,3,4,5,6,7,8,9,10) EXISTS (SELECT 1 FROM public.dms_wenjian_guanxi g WHERE g.f_tenant_id=z.f_tenant_id AND g.zhu_wenjian_id= AND g.guanlian_wenjian_id=z.f_id AND g.guanxi_leixing='jilu' AND g.biz_status='effective' AND g.f_delete_mark IS NULL) ${mainAlias}.file_id o.active=true EXISTS (SELECT 1 FROM public.dms_file_operation_occupancies o WHERE o.tenant_id=z.f_tenant_id AND (o.file_id=z.f_id OR ) AND ) public.dms_wenjian_chexiao_tiyipublic.dms_wenjian_shixiao_shenqing public.dms_wenjian_chexiao_tiyi_zixiangpublic.dms_wenjian_shixiao_shenqing_zixiang INSERT INTO public.dms_file_operation_occupancies (tenant_id,operation,application_id,flow_id,task_id,file_id,folder_id,active) VALUES (#{tenantId},#{operation},#{applicationId},#{flowId},#{taskId},#{fileId},#{folderId},true) ON CONFLICT (tenant_id,task_id,operation,file_id) DO UPDATE SET folder_id=EXCLUDED.folder_id,active=true,released_at=NULL UPDATE public.dms_file_operation_occupancies SET active=false,released_at=CURRENT_TIMESTAMP WHERE tenant_id=#{tenantId} AND task_id=#{taskId} AND operation=#{operation} AND active=true UPDATE public.dms_file_operation_occupancies SET active=false,released_at=CURRENT_TIMESTAMP WHERE tenant_id=#{tenantId} AND task_id=#{taskId} AND operation=#{operation} AND file_id=#{fileId} AND active=true