fix(hidden-evaluation): 修复隐藏评估详情查询和统计功能
parent
a4fb0250a0
commit
858ebd80e7
|
|
@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
|
||||||
import com.alibaba.cola.dto.PageResponse;
|
import com.alibaba.cola.dto.PageResponse;
|
||||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||||
import com.zcloud.hidden.evaluation.command.convertor.HiddenEvaluationDetailCoConvertor;
|
import com.zcloud.hidden.evaluation.command.convertor.HiddenEvaluationDetailCoConvertor;
|
||||||
|
import com.zcloud.hidden.evaluation.domain.enums.EvaluationResultEnum;
|
||||||
import com.zcloud.hidden.evaluation.dto.HiddenEvaluationDetailCompleteQry;
|
import com.zcloud.hidden.evaluation.dto.HiddenEvaluationDetailCompleteQry;
|
||||||
import com.zcloud.hidden.evaluation.dto.HiddenEvaluationDetailPageQry;
|
import com.zcloud.hidden.evaluation.dto.HiddenEvaluationDetailPageQry;
|
||||||
import com.zcloud.hidden.evaluation.dto.HiddenEvaluationDetailQry;
|
import com.zcloud.hidden.evaluation.dto.HiddenEvaluationDetailQry;
|
||||||
|
|
@ -70,6 +71,12 @@ public class HiddenEvaluationDetailQueryExe {
|
||||||
// 无考评详情,返回未考评的列表
|
// 无考评详情,返回未考评的列表
|
||||||
return hiddenEvaluationDetailCoConvertor.convertConfigsToNotEvaluatedCOs(listByCorpId);
|
return hiddenEvaluationDetailCoConvertor.convertConfigsToNotEvaluatedCOs(listByCorpId);
|
||||||
}
|
}
|
||||||
|
//如果考评完成,直接返回所有考评列表
|
||||||
|
if(!EvaluationResultEnum.NOT_EVALUATED.getCode().equals(infoByHiddenId.getEvaluationResult())){
|
||||||
|
return hiddenEvaluationDetailCoConvertor.converDOsToCOs(allListByHidden);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 提取已考评的用户 ID 集合
|
// 提取已考评的用户 ID 集合
|
||||||
Set<Long> evaluatedUserIds = allListByHidden.stream()
|
Set<Long> evaluatedUserIds = allListByHidden.stream()
|
||||||
.map(HiddenEvaluationDetailDO::getEvaluationUserId)
|
.map(HiddenEvaluationDetailDO::getEvaluationUserId)
|
||||||
|
|
|
||||||
|
|
@ -244,44 +244,49 @@
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="corpEvalStatisticsPage" resultType="com.zcloud.hidden.evaluation.persistence.dataobject.CorpEvalStatisticsDO">
|
<select id="corpEvalStatisticsPage" resultType="com.zcloud.hidden.evaluation.persistence.dataobject.CorpEvalStatisticsDO">
|
||||||
SELECT
|
SELECT ci.id AS corpinfoId,
|
||||||
ci.id AS corpinfoId,
|
ci.corp_name AS corpinfoName,
|
||||||
ci.corp_name AS corpinfoName,
|
COUNT(DISTINCT CASE WHEN her.evaluation_result != 1 THEN h.id END) AS completeEvaluationHiddenNum,
|
||||||
COUNT(DISTINCT CASE WHEN her.evaluation_result != 1 THEN h.id END) AS completeEvaluationHiddenNum,
|
COUNT(DISTINCT CASE
|
||||||
COUNT(DISTINCT CASE WHEN her.id IS NULL OR her.evaluation_result = 1 THEN h.id END) AS waitEvaluationHiddenNum,
|
WHEN her.id IS NULL OR her.evaluation_result = 1
|
||||||
COUNT(DISTINCT CASE WHEN hu.corpinfo_id = ci.id THEN h.creator_id END) AS involveRewardPersonNum,
|
THEN h.id END) AS waitEvaluationHiddenNum,
|
||||||
COUNT(DISTINCT CASE WHEN her.exchange_flag = 1 AND hu.corpinfo_id = ci.id THEN h.id END) AS exchangedHiddenNum,
|
COUNT(DISTINCT CASE WHEN hu.corpinfo_id = ci.id THEN h.creator_id END) AS involveRewardPersonNum,
|
||||||
COUNT(DISTINCT CASE
|
COUNT(DISTINCT CASE WHEN her.exchange_flag = 1 AND hu.corpinfo_id = ci.id THEN h.id END) AS exchangedHiddenNum,
|
||||||
WHEN her.evaluation_result = 2
|
COUNT(DISTINCT CASE
|
||||||
THEN h.id END) AS totalExchangeHiddenNum,
|
WHEN her.evaluation_result = 2
|
||||||
(SELECT GROUP_CONCAT(DISTINCT CONCAT(dep.name, '-', usr.name))
|
THEN h.id END) AS totalExchangeHiddenNum,
|
||||||
FROM evaluation_config ec
|
(SELECT GROUP_CONCAT(DISTINCT CONCAT(dep.name, '-', usr.name))
|
||||||
LEFT JOIN department dep ON ec.department_id = dep.id
|
FROM evaluation_config ec
|
||||||
LEFT JOIN user usr ON ec.user_id = usr.id
|
LEFT JOIN department dep ON ec.department_id = dep.id
|
||||||
WHERE ec.corpinfo_id = ci.id AND ec.delete_enum = 'FALSE' AND ec.evaluation_type = 1) AS safeEvaluationMember,
|
LEFT JOIN user usr ON ec.user_id = usr.id
|
||||||
(SELECT GROUP_CONCAT(DISTINCT CONCAT(dep.name, '-', usr.name))
|
WHERE ec.corpinfo_id = ci.id
|
||||||
FROM evaluation_config ec
|
AND ec.delete_enum = 'FALSE'
|
||||||
LEFT JOIN department dep ON ec.department_id = dep.id
|
AND ec.evaluation_type = 1) AS safeEvaluationMember,
|
||||||
LEFT JOIN user usr ON ec.user_id = usr.id
|
(SELECT GROUP_CONCAT(DISTINCT CONCAT(dep.name, '-', usr.name))
|
||||||
WHERE ec.corpinfo_id = ci.id AND ec.delete_enum = 'FALSE' AND ec.evaluation_type = 2) AS envEvaluationMember
|
FROM evaluation_config ec
|
||||||
FROM corp_info ci
|
LEFT JOIN department dep ON ec.department_id = dep.id
|
||||||
LEFT JOIN user hu ON hu.corpinfo_id = ci.id
|
LEFT JOIN user usr ON ec.user_id = usr.id
|
||||||
LEFT JOIN hidden h ON hu.id = h.creator_id AND h.delete_enum = 'FALSE' AND h.state = 301 AND
|
WHERE ec.corpinfo_id = ci.id
|
||||||
((h.source IN (4, 5) AND h.final_check = 1) OR h.source NOT IN (4, 5))
|
AND ec.delete_enum = 'FALSE'
|
||||||
LEFT JOIN hidden_evaluation_record her
|
AND ec.evaluation_type = 2) AS envEvaluationMember
|
||||||
ON h.hidden_id = her.hidden_id AND her.delete_enum = 'FALSE'
|
FROM corp_info ci
|
||||||
LEFT JOIN evaluation_config ecConfig
|
LEFT JOIN user hu ON hu.corpinfo_id = ci.id
|
||||||
ON ci.id = ecConfig.corpinfo_id AND ecConfig.delete_enum = 'FALSE'
|
LEFT JOIN hidden h ON hu.id = h.creator_id AND h.delete_enum = 'FALSE' AND h.state = 301 AND
|
||||||
LEFT JOIN department configDept
|
((h.source IN (4, 5) AND h.final_check = 1) OR h.source NOT IN (4, 5))
|
||||||
ON ecConfig.department_id = configDept.id
|
LEFT JOIN hidden_evaluation_record her
|
||||||
LEFT JOIN user configUser
|
ON h.hidden_id = her.hidden_id AND her.delete_enum = 'FALSE'
|
||||||
ON ecConfig.user_id = configUser.id
|
LEFT JOIN evaluation_config ecConfig
|
||||||
WHERE ci.delete_enum = 'FALSE'
|
ON ci.id = ecConfig.corpinfo_id AND ecConfig.delete_enum = 'FALSE'
|
||||||
AND ci.use_flag = 1
|
LEFT JOIN department configDept
|
||||||
AND (
|
ON ecConfig.department_id = configDept.id
|
||||||
ci.id IN (SELECT corpinfo_id FROM evaluation_corp WHERE delete_enum = 'FALSE')
|
LEFT JOIN user configUser
|
||||||
OR ci.type = 2
|
ON ecConfig.user_id = configUser.id
|
||||||
)
|
WHERE ci.delete_enum = 'FALSE'
|
||||||
|
AND ci.use_flag = 1
|
||||||
|
AND (
|
||||||
|
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 != ''">
|
<if test="params.departmentId != null and params.departmentId != ''">
|
||||||
AND configDept.id = #{params.departmentId}
|
AND configDept.id = #{params.departmentId}
|
||||||
</if>
|
</if>
|
||||||
|
|
|
||||||
|
|
@ -10,14 +10,14 @@
|
||||||
left join user u on u.id = heb.operate_user_id
|
left join user u on u.id = heb.operate_user_id
|
||||||
where heb.delete_enum = 'FALSE'
|
where heb.delete_enum = 'FALSE'
|
||||||
and heb.exchange_user_id = #{params.exchangeUserId}
|
and heb.exchange_user_id = #{params.exchangeUserId}
|
||||||
|
|
||||||
<!-- 兑换开始时间 -->
|
<!-- 兑换开始时间 -->
|
||||||
<if test="params.exchangeStartTime != null and params.exchangeStartTime != ''">
|
<if test="params.exchangeStartTime != null and params.exchangeStartTime != ''">
|
||||||
AND heb.exchange_time >= #{params.exchangeStartTime}
|
AND heb.exchange_time >= DATE_FORMAT(CONCAT(#{params.exchangeStartTime}, ' 00:00:00'), '%Y-%m-%d %H:%i:%s')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<!-- 兑换结束时间 -->
|
<!-- 兑换结束时间 -->
|
||||||
<if test="params.exchangeEndTime != null and params.exchangeEndTime != ''">
|
<if test="params.exchangeEndTime != null and params.exchangeEndTime != ''">
|
||||||
AND heb.exchange_time <= #{params.exchangeEndTime}
|
AND heb.exchange_time < DATE_FORMAT(DATE_ADD(#{params.exchangeEndTime}, INTERVAL 1 DAY), '%Y-%m-%d %H:%i:%s')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -49,15 +49,16 @@
|
||||||
AND h.hidden_type = #{params.hiddenType}
|
AND h.hidden_type = #{params.hiddenType}
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
|
|
||||||
<!-- 兑换开始时间 -->
|
<!-- 兑换开始时间 -->
|
||||||
<if test="params.exchangeStartTime != null and params.exchangeStartTime != ''">
|
<if test="params.exchangeStartTime != null and params.exchangeStartTime != ''">
|
||||||
AND her.exchange_time >= #{params.exchangeStartTime}
|
AND her.exchange_time >= DATE_FORMAT(CONCAT(#{params.exchangeStartTime}, ' 00:00:00'), '%Y-%m-%d %H:%i:%s')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
<!-- 兑换结束时间 -->
|
<!-- 兑换结束时间 -->
|
||||||
<if test="params.exchangeEndTime != null and params.exchangeEndTime != ''">
|
<if test="params.exchangeEndTime != null and params.exchangeEndTime != ''">
|
||||||
AND her.exchange_time <= #{params.exchangeEndTime}
|
AND her.exchange_time < DATE_FORMAT(DATE_ADD(#{params.exchangeEndTime}, INTERVAL 1 DAY), '%Y-%m-%d %H:%i:%s')
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
GROUP BY h.hidden_id
|
GROUP BY h.hidden_id
|
||||||
ORDER BY u.sort, u.create_time desc
|
ORDER BY u.sort, u.create_time desc
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue