Browse Source

绩效评价-项目复评、核查校验判断修改

tags/24082201
CMM 1 year ago
parent
commit
147f6cdc38
2 changed files with 27 additions and 67 deletions
  1. +14
    -35
      pmapi/src/main/java/com/ningdatech/pmapi/performance/manage/ReAppraisalManage.java
  2. +13
    -32
      pmapi/src/main/java/com/ningdatech/pmapi/performance/manage/VerifyManage.java

+ 14
- 35
pmapi/src/main/java/com/ningdatech/pmapi/performance/manage/ReAppraisalManage.java View File

@@ -293,43 +293,22 @@ public class ReAppraisalManage {
} }


private void judgeCompleteReAppraisal(PerformanceAppraisalProjectGroup group, PerformanceAppraisalProject appraisalProject) { private void judgeCompleteReAppraisal(PerformanceAppraisalProjectGroup group, PerformanceAppraisalProject appraisalProject) {
// 获取该评价计划的复评打分信息 // 获取该评价计划的该分组内的复评人员对该项目的的复评打分信息
Map<String, List<PerformanceAppraisalScoreInfo>> scoreInfoMap = performanceAppraisalScoreInfoService.list(Wrappers.lambdaQuery(PerformanceAppraisalScoreInfo.class) List<PerformanceAppraisalScoreInfo> scoreInfoList = performanceAppraisalScoreInfoService.list(Wrappers.lambdaQuery(PerformanceAppraisalScoreInfo.class)
.eq(PerformanceAppraisalScoreInfo::getAppraisalId,group.getAppraisalId()) .eq(PerformanceAppraisalScoreInfo::getAppraisalId, group.getAppraisalId())
.eq(PerformanceAppraisalScoreInfo::getAppraisalType, AppraisalTypeEnum.RE_APPRAISAL.getCode())) .eq(PerformanceAppraisalScoreInfo::getAppraisalProjectCode, appraisalProject.getProjectCode())
.stream().collect(Collectors.groupingBy(PerformanceAppraisalScoreInfo::getAppraisalEmployeeCode)); .eq(PerformanceAppraisalScoreInfo::getAppraisalType, AppraisalTypeEnum.RE_APPRAISAL.getCode()));

// 判断打分人员是否为分组内的复评人员
List<String> reUsers = Lists.newArrayList(); if (CollUtil.isNotEmpty(scoreInfoList)) {
String reAppraisalUsers = group.getReAppraisalUsers(); List<String> users = scoreInfoList.stream().map(PerformanceAppraisalScoreInfo::getAppraisalEmployeeCode).collect(Collectors.toList());
String projectCodes = group.getProjectCodes(); if (CollUtil.isNotEmpty(users)) {
if (reAppraisalUsers.contains(StrPool.COMMA)){ String reAppraisalUsers = group.getReAppraisalUsers();
reUsers = Arrays.asList(reAppraisalUsers.split(StrPool.COMMA)); String join = String.join(StrPool.COMMA, users);
}else { if (join.equals(reAppraisalUsers)) {
reUsers.add(reAppraisalUsers); // 标记项目完成复评
} appraisalProject.setIsCompleteReAppraisal(Boolean.TRUE);
List<String> users = Lists.newArrayList();
for (String reUser : reUsers) {
// 获取分组内复评人员对分组内项目的复评分数信息
List<PerformanceAppraisalScoreInfo> scoreInfoList = scoreInfoMap.get(reUser);
if (CollUtil.isNotEmpty(scoreInfoList)){
List<String> proCodes = scoreInfoList.stream()
.map(PerformanceAppraisalScoreInfo::getAppraisalProjectCode)
.collect(Collectors.toList());
// 当前登录用户所在分组的复评人员 对分组内所有项目进行了复评
if (CollUtil.isNotEmpty(proCodes)){
String join = String.join(StrPool.COMMA, proCodes);
if (join.equals(projectCodes)) {
users.add(reUser);
}
} }
} }
} }
if (CollUtil.isNotEmpty(users)) {
String join = String.join(StrPool.COMMA, users);
if (join.equals(reAppraisalUsers)) {
// 标记项目完成复评
appraisalProject.setIsCompleteReAppraisal(Boolean.TRUE);
}
}
} }
} }

+ 13
- 32
pmapi/src/main/java/com/ningdatech/pmapi/performance/manage/VerifyManage.java View File

@@ -294,42 +294,23 @@ public class VerifyManage {
} }


private void judgeCompleteVerify(PerformanceAppraisalProjectGroup group, PerformanceAppraisalProject appraisalProject) { private void judgeCompleteVerify(PerformanceAppraisalProjectGroup group, PerformanceAppraisalProject appraisalProject) {
// 获取该评价计划的核查打分信息 // 获取该评价计划当前分组对该项目的核查打分信息
Map<String, List<PerformanceAppraisalScoreInfo>> scoreInfoMap = performanceAppraisalScoreInfoService.list(Wrappers.lambdaQuery(PerformanceAppraisalScoreInfo.class) List<PerformanceAppraisalScoreInfo> scoreInfoList = performanceAppraisalScoreInfoService.list(Wrappers.lambdaQuery(PerformanceAppraisalScoreInfo.class)
.eq(PerformanceAppraisalScoreInfo::getAppraisalId,group.getAppraisalId()) .eq(PerformanceAppraisalScoreInfo::getAppraisalId,group.getAppraisalId())
.eq(PerformanceAppraisalScoreInfo::getAppraisalType, AppraisalTypeEnum.EXPERT_VERIFY.getCode())) .eq(PerformanceAppraisalScoreInfo::getAppraisalProjectCode,appraisalProject.getProjectCode())
.stream().collect(Collectors.groupingBy(PerformanceAppraisalScoreInfo::getAppraisalEmployeeCode)); .eq(PerformanceAppraisalScoreInfo::getAppraisalType, AppraisalTypeEnum.EXPERT_VERIFY.getCode()));


List<String> verifyUsers = Lists.newArrayList(); // 判断打分人员是否为分组内的核查人员
String verificationUsers = group.getVerificationUsers(); if (CollUtil.isNotEmpty(scoreInfoList)) {
String projectCodes = group.getProjectCodes(); List<String> users = scoreInfoList.stream().map(PerformanceAppraisalScoreInfo::getAppraisalEmployeeCode).collect(Collectors.toList());
if (verificationUsers.contains(StrPool.COMMA)){ if (CollUtil.isNotEmpty(users)) {
verifyUsers = Arrays.asList(verificationUsers.split(StrPool.COMMA)); String verificationUsers = group.getVerificationUsers();
}else { String join = String.join(StrPool.COMMA, users);
verifyUsers.add(verificationUsers); if (join.equals(verificationUsers)) {
} // 标记项目完成核查
List<String> users = Lists.newArrayList(); appraisalProject.setIsCompleteVerify(Boolean.TRUE);
for (String verifyUser : verifyUsers) {
// 获取分组内核查人员对分组内项目的核查分数信息
List<PerformanceAppraisalScoreInfo> scoreInfoList = scoreInfoMap.get(verifyUser);
if (CollUtil.isNotEmpty(scoreInfoList)){
List<String> proCodes = scoreInfoList.stream()
.map(PerformanceAppraisalScoreInfo::getAppraisalProjectCode)
.collect(Collectors.toList());
// 当前登录用户所在分组的核查人员 对分组内所有项目进行了核查
if (CollUtil.isNotEmpty(proCodes)){
String join = String.join(StrPool.COMMA, proCodes);
if (join.equals(projectCodes)) {
users.add(verifyUser);
}
} }
} }
} }
if (CollUtil.isNotEmpty(users)) {
String join = String.join(StrPool.COMMA, users);
if (join.equals(verificationUsers)) {
appraisalProject.setIsCompleteVerify(Boolean.TRUE);
}
}
} }
} }

Loading…
Cancel
Save