<?xml version="1.0" encoding="UTF-8"?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="jnpf.dmsMapper.DmsWenjianBufaPrintMapper">
|
<resultMap id="Request" type="jnpf.dmsEntity.print.DmsWenjianBufaPrintSource" autoMapping="false">
|
<id column="f_id" property="id"/>
|
<result column="f_flow_id" property="flowId"/>
|
<result column="f_flow_state" property="flowState"/>
|
<result column="shenqing_ren" property="applicantId"/>
|
<result column="bumen" property="departmentId"/>
|
<result column="beizhu" property="remark"/>
|
</resultMap>
|
<resultMap id="Detail" type="jnpf.dmsEntity.print.DmsWenjianBufaPrintSource$Detail" autoMapping="false">
|
<id column="f_id" property="id"/>
|
<result column="wenjian_id" property="fileId"/>
|
<result column="banben_id" property="versionId"/>
|
<result column="resolved_version_id" property="resolvedVersionId"/>
|
<result column="wenjian_bianhao" property="fileNumber"/>
|
<result column="wenjian_mingcheng" property="fileName"/>
|
<result column="banben_hao" property="versionLabel"/>
|
<result column="bufa_fenshu" property="copies"/>
|
<result column="yongtu" property="purpose"/>
|
<result column="shengxiao_shijian" property="effectiveDate"/>
|
<result column="shifou_shoukong" property="controlled"/>
|
</resultMap>
|
<select id="lockRequests" resultMap="Request">
|
SELECT f_id, f_flow_id, f_flow_state, shenqing_ren, bumen, beizhu
|
FROM public.dms_wenjian_bufa_shenqing
|
WHERE f_tenant_id = #{tenantId} AND f_flow_task_id = #{taskId}
|
AND f_delete_mark IS NULL
|
ORDER BY f_id FOR UPDATE
|
</select>
|
<!-- LEFT JOIN retains invalid detail rows so the service rejects the entire batch. -->
|
<select id="selectDetails" resultMap="Detail">
|
SELECT d.f_id, d.wenjian_id, d.banben_id, d.banben_hao, d.bufa_fenshu, d.yongtu,
|
v.f_id AS resolved_version_id,
|
COALESCE(NULLIF(d.wenjian_bianhao, ''), v.wenjian_bianhao) AS wenjian_bianhao,
|
COALESCE(NULLIF(d.wenjian_mingcheng, ''), v.wenjian_mingcheng) AS wenjian_mingcheng,
|
v.shengxiao_shijian, COALESCE(NULLIF(v.shifou_shoukong, ''), r.shifou_shoukong) AS shifou_shoukong
|
FROM public.dms_wenjian_bufa_shenqing_zixiang d
|
LEFT JOIN public.dms_wenjian_ziyuan r
|
ON r.f_tenant_id = d.f_tenant_id AND r.f_id = d.wenjian_id AND r.f_delete_mark IS NULL
|
LEFT JOIN public.dms_wenjian_banben v
|
ON v.f_tenant_id = d.f_tenant_id AND v.f_id = d.banben_id
|
AND v.wenjian_id = r.f_id AND v.banbenhao = d.banben_hao AND v.f_delete_mark IS NULL
|
WHERE d.f_tenant_id = #{tenantId} AND d.f_foreign_id = #{requestId}
|
AND d.f_delete_mark IS NULL
|
ORDER BY d.f_id
|
</select>
|
</mapper>
|