隐患考评调整

main
zhaokai 2026-04-13 17:25:38 +08:00
parent 9753ec8a04
commit 99d3563d7d
1 changed files with 18 additions and 43 deletions

View File

@ -245,9 +245,8 @@
<select id="corpEvalStatisticsPage" resultType="com.zcloud.hidden.evaluation.persistence.dataobject.CorpEvalStatisticsDO">
SELECT
ci.id AS corpinfoId,
ec.delete_enum,
ci.corp_name AS corpinfoName,
ci.id AS corpinfoId,
ci.corp_name AS corpinfoName,
COUNT(DISTINCT CASE WHEN her.evaluation_result != 1 THEN h.id END) AS completeEvaluationHiddenNum,
COUNT(DISTINCT CASE WHEN her.id IS NULL OR her.evaluation_result = 1 THEN h.id END) AS waitEvaluationHiddenNum,
COUNT(DISTINCT CASE WHEN hu.corpinfo_id = ci.id THEN h.creator_id END) AS involveRewardPersonNum,
@ -257,56 +256,32 @@
FROM evaluation_config ec
LEFT JOIN department dep ON ec.department_id = dep.id
LEFT JOIN user usr ON ec.user_id = usr.id
WHERE ec.corpinfo_id = ci.id
AND ec.delete_enum = 'FALSE'
AND ec.evaluation_type = 1) AS safeEvaluationMember,
WHERE ec.corpinfo_id = ci.id AND ec.delete_enum = 'FALSE' AND ec.evaluation_type = 1) AS safeEvaluationMember,
(SELECT GROUP_CONCAT(DISTINCT CONCAT(dep.name, '-', usr.name))
FROM evaluation_config ec
LEFT JOIN department dep ON ec.department_id = dep.id
LEFT JOIN user usr ON ec.user_id = usr.id
WHERE ec.corpinfo_id = ci.id
AND ec.delete_enum = 'FALSE'
AND ec.evaluation_type = 2) AS envEvaluationMember
FROM (
SELECT DISTINCT
ecorp.corpinfo_id,
ecorp.delete_enum
FROM evaluation_corp ecorp
WHERE ecorp.delete_enum = 'FALSE'
UNION
SELECT DISTINCT
ci.id AS corpinfo_id,
'FALSE' AS delete_enum
WHERE ec.corpinfo_id = ci.id AND ec.delete_enum = 'FALSE' AND ec.evaluation_type = 2) AS envEvaluationMember
FROM corp_info ci
WHERE ci.delete_enum = 'FALSE'
AND ci.type = 2
AND ci.use_flag = 1
) ec
LEFT JOIN corp_info ci ON ec.corpinfo_id = ci.id AND ci.delete_enum = 'FALSE'
LEFT JOIN evaluation_config ecConfig ON ec.corpinfo_id = ecConfig.corpinfo_id AND ecConfig.delete_enum = 'FALSE'
LEFT JOIN department configDept ON ecConfig.department_id = configDept.id
LEFT JOIN user configUser ON ecConfig.user_id = configUser.id
LEFT JOIN hidden h
ON h.corp_id = ec.corpinfo_id
ON ci.id = h.corp_id
AND h.delete_enum = 'FALSE'
AND h.state = 301
AND ((h.source IN (4,5) AND h.final_check = 1) OR h.source NOT IN (4,5))
LEFT JOIN user hu ON h.creator_id = hu.id
LEFT JOIN hidden_evaluation_record her ON h.hidden_id = her.hidden_id AND her.delete_enum = 'FALSE'
WHERE ci.use_flag = 1
<!-- 把 EXISTS 提到这里,解决别名归属问题 -->
LEFT JOIN hidden_evaluation_record her
ON h.hidden_id = her.hidden_id AND her.delete_enum = 'FALSE'
LEFT JOIN evaluation_config ecConfig
ON ci.id = ecConfig.corpinfo_id AND ecConfig.delete_enum = 'FALSE'
LEFT JOIN department configDept
ON ecConfig.department_id = configDept.id
LEFT JOIN user configUser
ON ecConfig.user_id = configUser.id
WHERE ci.delete_enum = 'FALSE'
AND ci.use_flag = 1
AND (
h.hidden_id IS NULL
OR EXISTS (
SELECT 1 FROM evaluation_config ec2
WHERE ec2.corpinfo_id = h.corp_id
AND ec2.delete_enum = 'FALSE'
AND (
(ec2.evaluation_type = 1 AND h.hidden_type IN ('aqyh','rdbaqys','wzcz','wzzh','grfhyp','wdbaqzt','jxsb','hcl','dqsb','gsj','aqbhzz','ss','xf','tzsb','hjdbaqys','zmjdgyxbj','aqbzbs','gkkd','zykjxzzl','eltq','gldqx','wzdhzdlsbdw','wfacs','jypx','aqyh-qt'))
OR
(ec2.evaluation_type = 2 AND h.hidden_type IN ('wshb','hjwr','ws','dq','zs','gf','hjwsjlh','yqfk','wshb-qt'))
)
)
ci.id IN (SELECT corpinfo_id FROM evaluation_corp WHERE delete_enum = 'FALSE')
OR ci.type = 2
)
<if test="params.departmentId != null and params.departmentId != ''">
AND configDept.id = #{params.departmentId}
@ -314,7 +289,7 @@
<if test="params.evaluationUserName != null and params.evaluationUserName != ''">
AND configUser.name LIKE CONCAT('%', #{params.evaluationUserName}, '%')
</if>
GROUP BY ci.id, ci.corp_name, ec.delete_enum
GROUP BY ci.id, ci.corp_name
ORDER BY CASE WHEN ci.type = 2 THEN 0 ELSE 1 END, ci.corp_order ASC
</select>