From b4060718b375bd3d7d95f568b9a0324727d11496 Mon Sep 17 00:00:00 2001 From: wulin Date: Wed, 11 Nov 2020 15:48:28 +0800 Subject: [PATCH 01/11] =?UTF-8?q?=E5=BE=85=E5=8A=9E=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lz/common/emun/WorkMsgTypeEnum.java | 2 +- .../job/business/DingtalkBusiness.java | 46 +++++++++++++++++-- 2 files changed, 44 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/lz/common/emun/WorkMsgTypeEnum.java b/src/main/java/com/lz/common/emun/WorkMsgTypeEnum.java index 7d8f2b6f..625d6c41 100644 --- a/src/main/java/com/lz/common/emun/WorkMsgTypeEnum.java +++ b/src/main/java/com/lz/common/emun/WorkMsgTypeEnum.java @@ -9,7 +9,7 @@ public enum WorkMsgTypeEnum { //绩效提交审核的通知(自己提交给领导,自己提交给人事,人事提交给老板) SUBMIT(0, "绩效提交", "去审核", "# 绩效提交\n ## @的绩效已经提交"), //绩效打回审核的通知 - REJECT(1, "绩效驳回", "去修改", "# 绩效驳回\n ## @的绩效已经驳回"), + REJECT(1, "绩效驳回", "去修改", "# 绩效驳回\n ## @的绩效被驳回"), //绩效通过领导审核的通知,这一步提交到HR,提交的type LEADER_PASS(2, "绩效已打分", "去提交给人事", "# 绩效已打分\n ## 你的绩效已经打分"), //绩效通过人事,老板审核的最终审核通知 diff --git a/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java b/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java index 7163f141..593d8ae1 100644 --- a/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java +++ b/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java @@ -13,10 +13,14 @@ import com.lz.modules.app.service.DepartmentsService; import com.lz.modules.app.service.DepartmentsStaffRelateService; import com.lz.modules.app.service.StaffOccupationService; import com.lz.modules.app.service.StaffService; +import com.lz.modules.flow.entity.FlowRecord; +import com.lz.modules.flow.service.FlowRecordService; import com.lz.modules.job.model.responseBo.DepartmentInfosBo; import com.lz.modules.job.model.responseBo.DepartmentStaffBo; import com.lz.modules.sys.dao.SysUserTokenDao; import com.lz.modules.sys.entity.SysUserTokenEntity; +import com.lz.modules.sys.entity.app.ResultRecord; +import com.lz.modules.sys.service.app.ResultRecordService; import com.lz.modules.third.entity.ThirdAppConfig; import com.lz.modules.third.service.ThirdAppConfigService; import org.slf4j.LoggerFactory; @@ -26,6 +30,7 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.net.URLEncoder; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.function.Function; @@ -63,9 +68,16 @@ public class DingtalkBusiness { @Autowired private SysUserTokenDao sysUserTokenDao; + @Autowired + private ResultRecordService resultRecordService; + + @Autowired + private FlowRecordService flowRecordService; + @Resource StaffDao staffDao; + @Value("${dingtalk.appid}") private String appid; @@ -194,10 +206,33 @@ public class DingtalkBusiness { } - + //流程流转发送消息 public String sendWorkMSGWithAsyn(Long resultRecordId , int type) { + ResultRecord resultRecord = resultRecordService.selectResultRecordById(resultRecordId); + if(resultRecord != null){ + StaffSimpleInfo fromStaff = staffService.selectStaffSimpleInfo(resultRecord.getStaffId()); + List toStaffids; + if(type == WorkMsgTypeEnum.REJECT.getType()){ + toStaffids = new ArrayList<>(); + toStaffids.add(fromStaff); + sendWorkMSGWithAsyn(fromStaff, toStaffids, WorkMsgTypeEnum.REJECT.getType()); + }else{ + List flowRecords = + flowRecordService.selectFlowRecordByRecordIdStatus(resultRecordId, 2); + List ids = flowRecords.stream().map(new Function() { + @Override + public Long apply(FlowRecord flowRecord) { + return flowRecord.getApprovalStaffId(); + } + }).collect(Collectors.toList()); + toStaffids = staffService.selectStaffSimpleInfos(ids); + sendWorkMSGWithAsyn(fromStaff, toStaffids, WorkMsgTypeEnum.PROCESS.getType()); + } - return null; + + + } + return "error"; } @@ -337,7 +372,12 @@ public class DingtalkBusiness { if(fromStaff == null){ content = workMsgTypeEnum.getContent().replace("@", info.getName()); }else{ - content = workMsgTypeEnum.getContent().replace("@", fromStaff.getName()); + if(fromStaff.getId() == info.getId()){ + content = workMsgTypeEnum.getContent().replace("@", "您"); + }else{ + content = workMsgTypeEnum.getContent().replace("@", fromStaff.getName()); + } + } StaffEntity entity = new StaffEntity(); From e8dabe4763e38b694e90bd9def2c096b0c6dd88f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Wed, 11 Nov 2020 15:55:36 +0800 Subject: [PATCH 02/11] fix --- .../impl/EvaluationGroupServiceImpl.java | 31 +++++++++++++------ 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java index 7dd6d7ee..aef16fad 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java @@ -378,18 +378,28 @@ public class EvaluationGroupServiceImpl extends ServiceImpl ids,EvaluationGroup group) { String staffIds = group.getStaffIds(); - if(StringUtil.isNotBlank(staffIds)){ - String[] split = staffIds.split(","); - Set set = new HashSet(Arrays.asList(split)); - set.removeAll(new HashSet(ids)); //set.addAll(new HashSet(ids)); - String join = StringUtils.join(set, ","); - group.setStaffIds(join); - int i = evaluationGroupMapper.updateCoverEvaluationGroupById(group); - return i; + String outIds = group.getOutIds(); + //删除选中人员 + if(StringUtil.isNotBlank(staffIds)){ + String[] staffs = staffIds.split(","); + Set staffsSet = new HashSet(Arrays.asList(staffs)); + staffsSet.removeAll(ids); + group.setStaffIds(StringUtils.join(staffsSet, ",")); } - return 0; - } + //增加排除人员 + if(StringUtil.isBlank(outIds)){ + group.setOutIds(StringUtils.join(ids, ",")); + } + else { + String[] outs = outIds.split(","); + Set outsSet = new HashSet(Arrays.asList(outs)); + outsSet.addAll(ids); + group.setOutIds(StringUtils.join(outsSet, ",")); + } + + return evaluationGroupMapper.updateById(group); + } @Override public String getEvaluationCopyIdsByEvaluationIds(String evaluationIds,Long startId) { @@ -402,4 +412,5 @@ public class EvaluationGroupServiceImpl extends ServiceImpl Date: Wed, 11 Nov 2020 16:16:15 +0800 Subject: [PATCH 03/11] fix --- .../modules/flow/service/impl/EvaluationGroupServiceImpl.java | 3 ++- .../performance/controller/AssessManagerController.java | 3 ++- .../performance/controller/EvaluationGroupController.java | 2 +- .../performance/service/impl/AssessManagerServiceImpl.java | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java index aef16fad..a9960339 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java @@ -353,7 +353,8 @@ public class EvaluationGroupServiceImpl extends ServiceImpl stringCollect = staffIdsByGroup.stream().distinct().collect(toList()); diff --git a/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java b/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java index 53e9105c..c74ddb24 100644 --- a/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java +++ b/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java @@ -3,6 +3,7 @@ package com.lz.modules.performance.controller; import com.lz.common.utils.PageUtils; import com.lz.common.utils.R; import com.lz.common.utils.StringUtil; +import com.lz.modules.app.dto.StaffSimpleDto; import com.lz.modules.flow.dao.FlowStartMapper; import com.lz.modules.flow.entity.FlowStart; import com.lz.modules.performance.req.AssessChangeReq; @@ -105,7 +106,7 @@ public class AssessManagerController extends AbstractController{ @PostMapping("assess/manager/change") @ApiOperation("考核管理组管理变更") - @ApiResponses({@ApiResponse(code = 200,message = "成功"),@ApiResponse(code = 503,message = "去设置")}) + @ApiResponses({@ApiResponse(code = 200,message = "成功"),@ApiResponse(code = 503,message = "去设置",response = StaffSimpleDto.class)}) public R assessChange(@RequestBody AssessChangeReq req){ if(req.getStartId()==null){ return R.error("考核id不能为空"); diff --git a/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java b/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java index 6412221e..2da9911f 100644 --- a/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java +++ b/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java @@ -224,7 +224,7 @@ public class EvaluationGroupController extends AbstractController { @PostMapping("/checkStaff") @ApiOperation("校验是否有跨组人员") - @ApiResponses({@ApiResponse(code = 200,message = "成功"),@ApiResponse(code = 504,message = "已跨组")}) + @ApiResponses({@ApiResponse(code = 200,message = "成功"),@ApiResponse(code = 504,message = "已跨组",response = StaffSimpleDto.class)}) public R checkStaff(@RequestBody @ApiParam(required = true,name = "body") CheckStaffReq checkStaffReq) { return evaluationGroupService.checkStaff(checkStaffReq); } diff --git a/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java b/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java index 475f164d..8d1c5fb8 100644 --- a/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java +++ b/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java @@ -218,7 +218,7 @@ public class AssessManagerServiceImpl implements AssessManagerService { notInGroupNames = notInGroupNames + dto.getName() + " "; } - return R.error(503,notInGroupNames + "未加入月度类型考评组,被考核人需要加入月度考评组后才能参与当前月度考核。"); + return R.error(503,notInGroupNames + "未加入月度类型考评组,被考核人需要加入月度考评组后才能参与当前月度考核。").put("data",staffSimpleDtos); } //初始化添加用户的数据 From 9dd1b91771c7e75d532f868fe1c1b61bc86ae903 Mon Sep 17 00:00:00 2001 From: wulin Date: Wed, 11 Nov 2020 16:54:56 +0800 Subject: [PATCH 04/11] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=8F=92=E5=85=A5?= =?UTF-8?q?=E5=8F=91=E8=B5=B7=E7=BB=A9=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lz/modules/flow/service/EvaluationGroupService.java | 1 + .../flow/service/impl/EvaluationGroupServiceImpl.java | 5 +++++ .../lz/modules/flow/service/impl/FlowStartServiceImpl.java | 3 ++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/lz/modules/flow/service/EvaluationGroupService.java b/src/main/java/com/lz/modules/flow/service/EvaluationGroupService.java index 3e3a4513..2a6c15d4 100644 --- a/src/main/java/com/lz/modules/flow/service/EvaluationGroupService.java +++ b/src/main/java/com/lz/modules/flow/service/EvaluationGroupService.java @@ -58,4 +58,5 @@ public interface EvaluationGroupService extends IService { String getEvaluationCopyIdsByEvaluationIds(String evaluationIds,Long startId); + EvaluationGroup selectEvaluationGroupByCopyId(Long copyId, Long startId); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java index 7dd6d7ee..fcd7b045 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/EvaluationGroupServiceImpl.java @@ -402,4 +402,9 @@ public class EvaluationGroupServiceImpl extends ServiceImpl Date: Wed, 11 Nov 2020 17:10:12 +0800 Subject: [PATCH 05/11] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=B8=AD=E9=80=94?= =?UTF-8?q?=E5=8A=A0=E4=BA=BA=E5=8F=82=E4=B8=8E=E7=BB=A9=E6=95=88=E8=80=83?= =?UTF-8?q?=E6=A0=B8=E7=9A=84=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlowStartServiceImpl.java | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java index fee3f5bf..8789120e 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java @@ -149,8 +149,8 @@ public class FlowStartServiceImpl extends ServiceImpl> staffManages, List staffIds, - Map> mustRole, Map> selfMustRole){ + Map> mustRole, Map> selfMustRole, boolean isInsert){ List resultModelDtos = resultModelService.selectResultDtoByGroupId(evaluationGroup.getId()); @@ -341,7 +341,7 @@ public class FlowStartServiceImpl extends ServiceImpl Date: Wed, 11 Nov 2020 17:13:10 +0800 Subject: [PATCH 06/11] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lz/modules/flow/service/impl/FlowStartServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java index 8789120e..dcd0f9c6 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java @@ -341,7 +341,7 @@ public class FlowStartServiceImpl extends ServiceImpl Date: Wed, 11 Nov 2020 17:43:58 +0800 Subject: [PATCH 07/11] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlowStartServiceImpl.java | 43 ++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java index dcd0f9c6..cba4b3fd 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java @@ -379,7 +379,7 @@ public class FlowStartServiceImpl extends ServiceImpl evaluationStartStaffs = new ArrayList<>(); + //下面初始化参与人员 + for (StaffSimpleInfo staffInfo:staffIds + ) { + staffInfo.setStartId(flowStart.getId()); + + EvaluationStartStaff evaluationStartStaff = new EvaluationStartStaff(); + evaluationStartStaff.setEvaluationId(evaluationGroup.getId()); + evaluationStartStaff.setEvaluationName(evaluationGroup.getName()); + evaluationStartStaff.setStaffId(staffInfo.getId()); + evaluationStartStaff.setStartId(flowStart.getId()); + evaluationStartStaff.setDepartmentId(staffInfo.getDepartmentId()); + evaluationStartStaff.setType(CheckStaffType.STAFF.getCode()); + evaluationStartStaffs.add(evaluationStartStaff); + + + //初始化lz_result_records数据 + ResultRecord resultRecord = new ResultRecord(); + resultRecord.setDepartmentId(staffInfo.getDepartmentId()); + resultRecord.setDepartmentName(staffInfo.getDepartmentName()); + resultRecord.setStaffId(staffInfo.getId()); + resultRecord.setStaffName(staffInfo.getName()); + resultRecord.setType(1);//设置为提交目标 + resultRecord.setStatus(0);//设置为新建 + resultRecord.setStartId(flowStart.getId()); + resultRecord.setEvaluationId(evaluationGroup.getId()); + resultRecord.setFlowProcess(0);//设置为目标制定 + + //设置当前审批员工id current_approval_staff_id + resultRecord.setCurrentApprovalStaffId(staffInfo.getId()); + //设置当前审批员工姓名 current_approval_staff_name + resultRecord.setCurrentApprovalStaffName(staffInfo.getName()); + + resultRecordService.insertResultRecord(resultRecord); + staffInfo.setRecordId(resultRecord.getId()); + //下面生成实际的考核流程 + resultRecordService.initFlowRecord(resultRecord.getId()); + } + evaluationStartStaffService.insertEvaluationStartStaffs(evaluationStartStaffs); + return 0; } From 4d52ed743295b5ddd77848d72366a7128374950b Mon Sep 17 00:00:00 2001 From: wulin Date: Thu, 12 Nov 2020 09:40:30 +0800 Subject: [PATCH 08/11] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E9=A2=86=E5=AF=BC=E6=97=B6=EF=BC=8C=E4=BB=8E=E7=BB=A9=E6=95=88?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E9=87=8C=E9=9D=A2=E6=89=BE=E4=BA=BA?= =?UTF-8?q?=E8=AF=84=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lz/modules/app/controller/ResultRecordController.java | 7 ++++--- src/main/java/com/lz/modules/app/dao/StaffDao.java | 2 ++ src/main/java/com/lz/modules/app/service/StaffService.java | 2 ++ .../com/lz/modules/app/service/impl/StaffServiceImpl.java | 5 +++++ .../lz/modules/flow/service/impl/FlowStartServiceImpl.java | 2 +- src/main/resources/mapper/generator/StaffDao.xml | 7 +++++++ 6 files changed, 21 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java index b14f6f35..0b932a69 100644 --- a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java +++ b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java @@ -387,9 +387,10 @@ public class ResultRecordController extends AbstractController { staffs.addAll(departManagers.getManagers()); } } - /*if(staffs.size() == 0){ - return R.error("找不到有效的评分人,设置的评分人不存在"); - }*/ + if(staffs.size() == 0){ + log.info("无法找到评分人员,开始找绩效管理人员"); + staffs = staffService.findManger(resultRecord.getId(), 4); + } for (StaffEntity staff:staffs ) { diff --git a/src/main/java/com/lz/modules/app/dao/StaffDao.java b/src/main/java/com/lz/modules/app/dao/StaffDao.java index 70f7b8c8..8a367679 100644 --- a/src/main/java/com/lz/modules/app/dao/StaffDao.java +++ b/src/main/java/com/lz/modules/app/dao/StaffDao.java @@ -98,4 +98,6 @@ public interface StaffDao extends BaseMapper { List selectNamesByIds(@Param("list") List sIds); List selectStaffsByGroupId(@Param("copyId") Long copyId); + + List findManger(@Param("recordId") Long recordId, @Param("flowProcess") int flowProcess); } diff --git a/src/main/java/com/lz/modules/app/service/StaffService.java b/src/main/java/com/lz/modules/app/service/StaffService.java index dad4c18f..936f6f45 100644 --- a/src/main/java/com/lz/modules/app/service/StaffService.java +++ b/src/main/java/com/lz/modules/app/service/StaffService.java @@ -103,5 +103,7 @@ public interface StaffService extends IService { List selectNamesByIds(List sIds); //获取绩效考核管理员 List selectStaffsByGroupId(Long copyId); + + List findManger(Long recordId, int flowProcess); } diff --git a/src/main/java/com/lz/modules/app/service/impl/StaffServiceImpl.java b/src/main/java/com/lz/modules/app/service/impl/StaffServiceImpl.java index d2a37b33..a15333aa 100644 --- a/src/main/java/com/lz/modules/app/service/impl/StaffServiceImpl.java +++ b/src/main/java/com/lz/modules/app/service/impl/StaffServiceImpl.java @@ -529,5 +529,10 @@ public class StaffServiceImpl extends ServiceImpl impleme return staffDao.selectStaffsByGroupId(copyId); } + @Override + public List findManger(Long recordId, int flowProcess){ + return staffDao.findManger(recordId, flowProcess); + } + } diff --git a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java index cba4b3fd..d1420cdd 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java @@ -383,7 +383,7 @@ public class FlowStartServiceImpl extends ServiceImpl + + From a3d18513a47c4db14b1093fa79989a5115c74462 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Thu, 12 Nov 2020 09:48:49 +0800 Subject: [PATCH 09/11] fix --- .../controller/AssessManagerController.java | 30 +++++-------------- .../impl/AssessManagerServiceImpl.java | 17 +++++++++-- .../service/impl/ChartResultServiceImpl.java | 4 +++ 3 files changed, 27 insertions(+), 24 deletions(-) diff --git a/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java b/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java index c74ddb24..10b148b6 100644 --- a/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java +++ b/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java @@ -57,7 +57,8 @@ public class AssessManagerController extends AbstractController{ PageUtils pageUtils = assessManagerService.assessList(req); return R.ok().put("data",pageUtils); } catch (Exception e) { - return R.error(); + log.error("获取考核列表异常,",e); + return R.error(e.getMessage()); } } @@ -65,17 +66,14 @@ public class AssessManagerController extends AbstractController{ @ApiOperation("获取考核详情列表") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = AssessManagerDetailRes.class)}) public R assessDetail(@RequestBody AssessDetailReq req){ - if(req.getStartId()==null){ - return R.error("考核id不能为空"); - } - PageUtils pageUtils = null; + PageUtils pageUtils; try { Long userId = getUserId(); req.setLoginUserId(userId); pageUtils = assessManagerService.assessDetail(req); } catch (Exception e) { log.error("获取考核详情列表异常" ,e); - return R.error(); + return R.error(e.getMessage()); } return R.ok().put("data",pageUtils); @@ -87,17 +85,14 @@ public class AssessManagerController extends AbstractController{ @ApiOperation("获取考核详情列表人数统计") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = ChartStatistical.class)}) public R assessChart(@RequestBody AssessDetailReq req){ - if(req.getStartId()==null){ - return R.error("考核id不能为空"); - } - List process = null; + List process; try { Long userId = getUserId(); req.setLoginUserId(userId); process = chartResultService.countAssessNumByFlowProcess(req); } catch (Exception e) { log.error("获取详情顶部人数统计异常" ,e); - return R.error(); + return R.error(e.getMessage()); } return R.ok().put("data",process); @@ -108,15 +103,6 @@ public class AssessManagerController extends AbstractController{ @ApiOperation("考核管理组管理变更") @ApiResponses({@ApiResponse(code = 200,message = "成功"),@ApiResponse(code = 503,message = "去设置",response = StaffSimpleDto.class)}) public R assessChange(@RequestBody AssessChangeReq req){ - if(req.getStartId()==null){ - return R.error("考核id不能为空"); - } - if(req.getChangeType()==null){ - return R.error("变动类型无效"); - } - if(StringUtil.isBlank(req.getStaffIds())){ - return R.error("变动人员不能为空"); - } try { return assessManagerService.assessChange(req); } catch (Exception e) { @@ -142,7 +128,7 @@ public class AssessManagerController extends AbstractController{ assessManagerService.accessDelete(flowStart); } catch (Exception e) { log.error("删除考核任务异常, id:" + assessId ,e); - return R.error(); + return R.error(e.getMessage()); } return R.ok(); } @@ -155,7 +141,7 @@ public class AssessManagerController extends AbstractController{ assessManagerService.toScore(req); } catch (Exception e) { log.error("开始评分异常" ,e); - return R.error(); + return R.error(e.getMessage()); } return R.ok(); } diff --git a/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java b/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java index 8d1c5fb8..2d27b116 100644 --- a/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java +++ b/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java @@ -138,6 +138,9 @@ public class AssessManagerServiceImpl implements AssessManagerService { @Override public PageUtils assessDetail(AssessDetailReq req) { + if(req.getStartId() == null ){ + throw new RRException("考核id不能为空"); + } //拼接拷贝组 if(StringUtil.isNotBlank(req.getEvaluationIds())){ req.setCopyEvaluationIds(evaluationGroupService.getEvaluationCopyIdsByEvaluationIds(req.getEvaluationIds(),req.getStartId())); @@ -180,6 +183,15 @@ public class AssessManagerServiceImpl implements AssessManagerService { @Override public R assessChange(AssessChangeReq req) { + if(req.getStartId()==null){ + throw new RRException("考核id不能为空"); + } + if(req.getChangeType()==null){ + throw new RRException("变动类型无效"); + } + if(StringUtil.isBlank(req.getStaffIds())){ + throw new RRException("变动人员不能为空"); + } FlowStart flowStart = flowStartMapper.selectFlowStartById(req.getStartId()); if(flowStart == null){ throw new RRException("暂无此考核组信息"); @@ -322,9 +334,10 @@ public class AssessManagerServiceImpl implements AssessManagerService { //通知评分 try { - dingtalkBusiness.sendWorkMSGWithAsyn(toStaffids, WorkMsgTypeEnum.START_SCORE.getType()); + String s = dingtalkBusiness.sendWorkMSGWithAsyn(toStaffids, WorkMsgTypeEnum.START_SCORE.getType()); + log.info("钉钉评分响应返回,res:" + s); } catch (Exception e) { - log.error("通知评分异常:",e); + log.error("通知评分异常:ids: " + JSON.toJSONString(toStaffids) + " ,e: " ,e); } diff --git a/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java b/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java index 05b77272..c0319d69 100644 --- a/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java +++ b/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.google.common.collect.Lists; import com.google.common.collect.Maps; +import com.lz.common.exception.RRException; import com.lz.common.utils.PageUtils; import com.lz.common.utils.R; import com.lz.common.utils.StringUtil; @@ -230,6 +231,9 @@ public class ChartResultServiceImpl implements ChartResultService { @Override public List countAssessNumByFlowProcess(AssessDetailReq req) { + if(req.getStartId()==null){ + throw new RRException("考核id不能为空"); + } req.setCopyEvaluationIds(evaluationGroupService.getEvaluationCopyIdsByEvaluationIds(req.getEvaluationIds(),req.getStartId())); //获取自己管理的部门 List mandepartmentIds = assessService.roleDepartments(req.getLoginUserId()); From 0efa107ef793ef711d9993eddddcb6505f3b225f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Thu, 12 Nov 2020 09:50:13 +0800 Subject: [PATCH 10/11] fix --- .../performance/controller/ChartController.java | 10 +++++----- .../performance/controller/UserTaskController.java | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/lz/modules/performance/controller/ChartController.java b/src/main/java/com/lz/modules/performance/controller/ChartController.java index 062cb7a6..16d2a884 100644 --- a/src/main/java/com/lz/modules/performance/controller/ChartController.java +++ b/src/main/java/com/lz/modules/performance/controller/ChartController.java @@ -52,7 +52,7 @@ public class ChartController extends AbstractController{ chartStatisticalRes = chartResultService.chartReport(startId,userId); } catch (Exception e) { log.error("获取绩效报表统计异常" ,e); - return R.error(); + return R.error(e.getMessage()); } return R.ok().put("data",chartStatisticalRes); } @@ -62,12 +62,12 @@ public class ChartController extends AbstractController{ @ApiOperation("获取考核类型列表") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = ChartStartsRes.class)}) public R chartStarts(@RequestBody @ApiParam(name = "body",value = "body请求体",required = true)ChartStartsReq req){ - PageUtils pageUtils = null; + PageUtils pageUtils; try { pageUtils = chartResultService.chartStarts(req); } catch (Exception e) { log.error("获取考核类型列表异常" ,e); - return R.error(); + return R.error(e.getMessage()); } return R.ok().put("data",pageUtils); } @@ -77,14 +77,14 @@ public class ChartController extends AbstractController{ @ApiOperation("获取报表等级详情") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = ResultRankListRes.class)}) public R chartDetailList(@RequestBody @ApiParam(name = "body",value = "body请求体",required = true) ChartResultReq req){ - PageUtils pageUtils = null; + PageUtils pageUtils; try { Long userId = getUserId(); req.setLoginUserId(userId); pageUtils = chartResultService.selectChartDetailList(req); } catch (Exception e) { log.error("获取报表等级详情异常" ,e); - return R.error(); + return R.error(e.getMessage()); } return R.ok().put("data",pageUtils); } diff --git a/src/main/java/com/lz/modules/performance/controller/UserTaskController.java b/src/main/java/com/lz/modules/performance/controller/UserTaskController.java index 5c59eafc..d1277728 100644 --- a/src/main/java/com/lz/modules/performance/controller/UserTaskController.java +++ b/src/main/java/com/lz/modules/performance/controller/UserTaskController.java @@ -31,13 +31,13 @@ public class UserTaskController extends AbstractController{ @ApiOperation("获取待办/处理事项") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = TaskListRes.class)}) public R list(@RequestBody @ApiParam(name = "body",value = "body请求体",required = true) AssessTaskReq req){ - PageUtils pageUtils = null; + PageUtils pageUtils; try { Long userId = getUserId(); pageUtils = assessService.userTaskList(req, userId); } catch (Exception e) { log.error("获取用户事项异常 userId:" ,e); - return R.error(); + return R.error(e.getMessage()); } return R.ok().put("data",pageUtils); } From 541238c9cfbf626e7340960853f40ba1d40cacde Mon Sep 17 00:00:00 2001 From: wulin Date: Thu, 12 Nov 2020 12:02:33 +0800 Subject: [PATCH 11/11] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=A4=E4=B8=AAbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/FlowStartServiceImpl.java | 30 +++++++++++++++++++ .../controller/EvaluationGroupController.java | 18 ++++++----- 2 files changed, 40 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java index d1420cdd..54756f5f 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/FlowStartServiceImpl.java @@ -390,6 +390,7 @@ public class FlowStartServiceImpl extends ServiceImpl evaluationStartStaffs = new ArrayList<>(); + List resultDetails = new ArrayList(); //下面初始化参与人员 for (StaffSimpleInfo staffInfo:staffIds ) { @@ -424,6 +425,35 @@ public class FlowStartServiceImpl extends ServiceImpl 0){//模板里面有添加指标 + for (ResultTagetLibDto libDto: + modelDto.getTagetLibs()) { + + ResultDetail resultDetail = new ResultDetail(); + resultDetail.setRecordId(resultRecord.getId()); + resultDetail.setTarget(libDto.getName()); + resultDetail.setType(modelDto.getType()); + resultDetail.setKeyResult(libDto.getKeyResult()); + resultDetail.setCheckWeight(libDto.getWeight()); + resultDetail.setStaffId(staffInfo.getId()); + resultDetail.setPriority(libDto.getOrderBy()); + resultDetails.add(resultDetail); + } + } + } + + //如果有数据插入lz_result_detail表 + if(resultDetails.size() > 0){ + // + resultDetailService.insertResultDetails(resultDetails); + + } + //下面生成实际的考核流程 resultRecordService.initFlowRecord(resultRecord.getId()); } diff --git a/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java b/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java index 2da9911f..7580c83a 100644 --- a/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java +++ b/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java @@ -171,15 +171,17 @@ public class EvaluationGroupController extends AbstractController { return Long.parseLong(s); } }).collect(Collectors.toMap(Long::longValue, Function.identity(), (e, replace) -> e)); + if(staffRoles != null && staffRoles.size() > 0){ + for (StaffRole staffRole:staffRoles + ) {//去掉已经在管理本组的管理员 + if(mapIds.containsKey(staffRole.getStaffId())){ + mapIds.remove(staffRole.getStaffId()); + }else{//删除管理的组信息 + staffRoleEvaluationGroupService.deleteStaffRoleEvaluationGroupByRoleId(staffRole.getId()); + } + } + } - for (StaffRole staffRole:staffRoles - ) {//去掉已经在管理本组的管理员 - if(mapIds.containsKey(staffRole.getStaffId())){ - mapIds.remove(staffRole.getStaffId()); - }else{//删除管理的组信息 - staffRoleEvaluationGroupService.deleteStaffRoleEvaluationGroupByRoleId(staffRole.getId()); - } - } //去掉管理全考评组 staffRoles = staffRoleService.selectAllGroupManageRoles();