Browse Source

2025-05-22

master
qiezi 9 months ago
parent
commit
8040366e21
  1. 134
      src/main/resources/mapper/change/ChangeManagementMapper.xml

134
src/main/resources/mapper/change/ChangeManagementMapper.xml

@ -1158,72 +1158,74 @@
</update>
<select id="getApprovalList" parameterType="com.spring.modules.change.vo.ProcessFormVo" resultType="com.spring.modules.change.vo.ProcessFormVo">
WITH cte AS (
SELECT
a.classification_no,
b.node_id,
b.node_name,
c.reject_flag,
CASE WHEN c.reject_flag = 'Y' THEN '是' ELSE '否' END AS rejectFlagDesc,
CASE WHEN c.process_intervention_flag = 'Y' THEN '是' ELSE '否' END AS process_intervention_flag,
c.reject_node_id,
dbo.plm_get_nodeName(a.site, c.reject_node_id, a.classification_no) AS rejectNodeName,
c.node_conclusion,
CASE
WHEN c.node_conclusion = 'Y' THEN '同意'
WHEN c.node_conclusion = 'N' THEN '驳回'
ELSE ''
END AS nodeConclusionDesc,
CAST(c.update_date AS DATETIME2(0)) AS update_date,
d.username AS create_by,
c.reject_opinion,
ISNULL(c.update_by, d.username) AS updateBy,
CAST(c.create_date AS DATETIME2(0)) AS create_date
FROM plm_request_header a
LEFT JOIN plm_request_node b
ON a.site = b.site
AND a.classification_no = b.classification_no
AND a.workflow_id = b.workflow_id
LEFT JOIN plm_process_form c
ON b.site = c.site
AND b.classification_no = c.classification_no
AND b.workflow_id = c.workflow_id
AND b.node_id = c.node_id
AND c.document_no = #{documentNo}
LEFT JOIN sys_user d
ON c.domain_control_account = d.domain_control_account
WHERE
a.site = #{site} AND a.menu_id = #{menuId}
AND c.create_date IS NOT NULL
),
cte_dedup AS (
SELECT *,
ROW_NUMBER() OVER (
PARTITION BY classification_no, node_id, update_date
ORDER BY create_date DESC -- 保留每组最新创建的那条
) AS rn
FROM cte
)
SELECT
classification_no,
node_id,
node_name,
reject_flag,
rejectFlagDesc,
reject_node_id,
rejectNodeName,
node_conclusion,
nodeConclusionDesc,
update_date,
create_by,
reject_opinion,
updateBy,
process_intervention_flag
FROM cte_dedup
WHERE rn = 1
ORDER BY
CASE WHEN update_date IS NULL THEN 1 ELSE 0 END,
update_date
<!-- WITH cte AS (-->
<!-- SELECT-->
<!-- a.classification_no,-->
<!-- b.node_id,-->
<!-- b.node_name,-->
<!-- c.reject_flag,-->
<!-- CASE WHEN c.reject_flag = 'Y' THEN '是' ELSE '否' END AS rejectFlagDesc,-->
<!-- CASE WHEN c.process_intervention_flag = 'Y' THEN '是' ELSE '否' END AS process_intervention_flag,-->
<!-- c.reject_node_id,-->
<!-- dbo.plm_get_nodeName(a.site, c.reject_node_id, a.classification_no) AS rejectNodeName,-->
<!-- c.node_conclusion,-->
<!-- CASE-->
<!-- WHEN c.node_conclusion = 'Y' THEN '同意'-->
<!-- WHEN c.node_conclusion = 'N' THEN '驳回'-->
<!-- ELSE ''-->
<!-- END AS nodeConclusionDesc,-->
<!-- CAST(c.update_date AS DATETIME2(0)) AS update_date,-->
<!-- d.username AS create_by,-->
<!-- c.reject_opinion,-->
<!-- ISNULL(c.update_by, d.username) AS updateBy,-->
<!-- CAST(c.create_date AS DATETIME2(0)) AS create_date-->
<!-- FROM plm_request_header a-->
<!-- LEFT JOIN plm_request_node b-->
<!-- ON a.site = b.site-->
<!-- AND a.classification_no = b.classification_no-->
<!-- AND a.workflow_id = b.workflow_id-->
<!-- LEFT JOIN plm_process_form c-->
<!-- ON b.site = c.site-->
<!-- AND b.classification_no = c.classification_no-->
<!-- AND b.workflow_id = c.workflow_id-->
<!-- AND b.node_id = c.node_id-->
<!-- AND c.document_no = #{documentNo}-->
<!-- LEFT JOIN sys_user d-->
<!-- ON c.domain_control_account = d.domain_control_account-->
<!-- WHERE-->
<!-- a.site = #{site} AND a.menu_id = #{menuId}-->
<!-- AND c.create_date IS NOT NULL-->
<!-- ),-->
<!-- cte_dedup AS (-->
<!-- SELECT *,-->
<!-- ROW_NUMBER() OVER (-->
<!-- PARTITION BY classification_no, node_id, update_date-->
<!-- ORDER BY create_date DESC &#45;&#45; 保留每组最新创建的那条-->
<!-- ) AS rn-->
<!-- FROM cte-->
<!-- )-->
<!-- SELECT-->
<!-- classification_no,-->
<!-- node_id,-->
<!-- node_name,-->
<!-- reject_flag,-->
<!-- rejectFlagDesc,-->
<!-- reject_node_id,-->
<!-- rejectNodeName,-->
<!-- node_conclusion,-->
<!-- nodeConclusionDesc,-->
<!-- update_date,-->
<!-- create_by,-->
<!-- reject_opinion,-->
<!-- updateBy,-->
<!-- process_intervention_flag-->
<!-- FROM cte_dedup-->
<!-- WHERE rn = 1-->
<!-- ORDER BY-->
<!-- CASE WHEN update_date IS NULL THEN 1 ELSE 0 END,-->
<!-- update_date-->
<!-- 2025-05-22 海波要求替换成存储过程-->
exec dbo.get_process_form #{site},#{menuId},#{documentNo}
</select>
<select id="getTechnicalSpecification" resultType="PlmTechnicalSpecificationSheetData">

Loading…
Cancel
Save