perf(pms-business): 优化用户考核评分排序规则

- 修改了 "all" 排序字段的 SQL 语句,增加了对考核状态的判断
- 实现了总分、主管评分和个人评分的优先级排序
- 优化了评分排序的逻辑,提高了排序的准确性和公平性
dev_1.1.0
chenhao 2025-03-20 09:40:40 +08:00
parent 16ef200d39
commit 91658c71a7
1 changed files with 2 additions and 1 deletions

View File

@ -67,7 +67,8 @@ public class ExamineUser extends BaseEntity {
if (StrUtil.isEmpty(sortFiled)) {
return null;
} else if ("all".equalsIgnoreCase(sortFiled)) {
return (StrUtil.format("order by IFNULL(score,ifnull(manage_score,ifnull(self_score,-1))) {}", StrUtil.isNotEmpty(isAsc) ? isAsc : ""));
//评分排序规则 总分->主管评分(需主管提交)->个人评分(需个人提交)
return (StrUtil.format("order by IFNULL(score,if(examine_status=1,manage_score,if(examine_status_self=1,ifnull(self_score,-1),-1))) {}", StrUtil.isNotEmpty(isAsc) ? isAsc : ""));
} else if ("manageScore".equalsIgnoreCase(sortFiled)) {
return (StrUtil.format("order by ifnull(manage_score,-1) {}", StrUtil.isNotEmpty(isAsc) ? isAsc : ""));
} else if ("selfScore".equalsIgnoreCase(sortFiled)) {