优化中途加人参与绩效考核的方法

This commit is contained in:
wulin 2020-11-11 17:10:12 +08:00
parent 53025af273
commit 5dc2b4e24f

View File

@ -149,8 +149,8 @@ public class FlowStartServiceImpl extends ServiceImpl<FlowStartMapper, FlowStart
log.info("无有效考核人员");
R.error(groupStaffs.getEvaluationGroup().getName() + "——无有效考核人员");
}
EvaluationGroup evaluationGroup = evaluationGroupService.selectEvaluationGroupByCopyId(groupStaffs.getEvaluationGroup().getId(),flowStart.getId());
switch (start(evaluationGroup, flowStart, staffManages, staffSimpleInfos, mustRole, selfMustRole)){
switch (start(groupStaffs.getEvaluationGroup(), flowStart, staffManages, staffSimpleInfos, mustRole, selfMustRole, true)){
case 1:
return R.error(groupStaffs.getEvaluationGroup().getName() + "——没有设置考核模板");
@ -279,7 +279,7 @@ public class FlowStartServiceImpl extends ServiceImpl<FlowStartMapper, FlowStart
switch (start(evaluationGroup, flowStart, staffManages, staffIds, mustRole, selfMustRole)){
switch (start(evaluationGroup, flowStart, staffManages, staffIds, mustRole, selfMustRole, false)){
case 1:
return R.error(evaluationGroup.getName() + "——没有设置考核模板");
@ -296,10 +296,10 @@ public class FlowStartServiceImpl extends ServiceImpl<FlowStartMapper, FlowStart
}
return R.ok("发起成功").put("data", flowStart);
}
//isInsert表示是否中途加人
private int start(EvaluationGroup evaluationGroup, FlowStart flowStart,
Map<String, List<StaffEntity>> staffManages, List<StaffSimpleInfo> staffIds,
Map<Long, List<FlowChartRole>> mustRole, Map<Long, List<FlowChartRole>> selfMustRole){
Map<Long, List<FlowChartRole>> mustRole, Map<Long, List<FlowChartRole>> selfMustRole, boolean isInsert){
List<ResultModelDto> resultModelDtos = resultModelService.selectResultDtoByGroupId(evaluationGroup.getId());
@ -341,7 +341,7 @@ public class FlowStartServiceImpl extends ServiceImpl<FlowStartMapper, FlowStart
}
//下面拷贝一份考评组信息发起后所使用的考评组id为复制后的id
if(evaluationGroup.getCopyId() == null || evaluationGroup.getCopyId().longValue() == 0L){
if(isInsert){
evaluationGroup.setCopyId(evaluationGroup.getId());
evaluationGroup.setId(null);
evaluationGroup.setGmtCreate(null);
@ -379,6 +379,15 @@ public class FlowStartServiceImpl extends ServiceImpl<FlowStartMapper, FlowStart
//插入备份的考评组指标信息
resultTagetLibService.insertResultTagetLibs(resultTagetLibs);
}
}else{
evaluationGroup =
evaluationGroupService.selectEvaluationGroupByCopyId(evaluationGroup.getId(),flowStart.getId());
if(evaluationGroup == null){
log.info("无法找到拷贝组信息");
return 5;
}
//以下代码没必要更新因为这个拷贝分用不到正确的对应关系清查看lz_evaluation_start_staff
//evaluationGroup.setStaffIds(evaluationGroup.getStaffIds() + ",");
}