From 4f3a52596fa192d726f32923ac8b94a3715f72d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Tue, 27 Oct 2020 15:56:03 +0800 Subject: [PATCH 01/12] fix --- .../flow/dao/EvaluationGroupMapper.java | 3 ++ .../flow/service/EvaluationGroupService.java | 2 ++ .../impl/EvaluationGroupServiceImpl.java | 6 ++++ .../controller/AssessManagerController.java | 24 ++++++++++++++++ .../performance/req/AssessChangeReq.java | 26 +++++++++++++++++ .../performance/req/AssessDetailReq.java | 8 +++--- .../service/AssessManagerService.java | 3 ++ .../impl/AssessManagerServiceImpl.java | 23 +++++++++++++++ .../service/impl/ChartResultServiceImpl.java | 28 +++++++++++++++++-- .../mapper/app/ResultRecordMapper.xml | 26 ++++++++--------- .../mapper/flow/EvaluationGroupMapper.xml | 8 ++++++ 11 files changed, 137 insertions(+), 20 deletions(-) create mode 100644 src/main/java/com/lz/modules/performance/req/AssessChangeReq.java diff --git a/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java b/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java index 728c362d..70e9424b 100644 --- a/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java +++ b/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java @@ -40,4 +40,7 @@ public interface EvaluationGroupMapper extends BaseMapper { List selectEvaluationGroupByIds(@Param("ids") List ids); EvaluationGroup selectEvaluationGroupByName(@Param("name") String name); + + void deleteByIds(@Param("ids") List ids); + } \ No newline at end of file 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 7c0820cd..37970d09 100644 --- a/src/main/java/com/lz/modules/flow/service/EvaluationGroupService.java +++ b/src/main/java/com/lz/modules/flow/service/EvaluationGroupService.java @@ -46,4 +46,6 @@ public interface EvaluationGroupService extends IService { EvaluationGroup selectEvaluationGroupByName(String name); //获取考核组里面所有参与的人员信息,去除重复,去除离职 List selectAllStaffSimpleInfoByGroupId(EvaluationGroup evaluationGroup); + + void deleteByIds(List ids); } \ 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 6eaa0b06..97039d45 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 @@ -213,4 +213,10 @@ public class EvaluationGroupServiceImpl extends ServiceImpl ids) { + evaluationGroupMapper.deleteByIds(ids); + } } 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 92e11f01..d72ecff6 100644 --- a/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java +++ b/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java @@ -4,6 +4,7 @@ import com.lz.common.utils.PageUtils; import com.lz.common.utils.R; import com.lz.modules.flow.dao.FlowStartMapper; import com.lz.modules.flow.entity.FlowStart; +import com.lz.modules.performance.req.AssessChangeReq; import com.lz.modules.performance.req.AssessListReq; import com.lz.modules.performance.req.AssessDetailReq; import com.lz.modules.performance.res.AssessManagerDetailRes; @@ -75,6 +76,29 @@ public class AssessManagerController { } + @PostMapping("assess/manager/change") + @ApiOperation("考核管理组管理变更") + @ApiResponses({@ApiResponse(code = 200,message = "成功")}) + public R assessChange(@RequestBody AssessChangeReq req){ + if(req.getStartId()==null){ + return R.error("考核id不能为空"); + } + if(req.getChangeType()==null){ + return R.error("变动类型无效"); + } + FlowStart flowStart = flowStartMapper.selectFlowStartById(req.getStartId()); + if(flowStart == null){ + return R.error("暂无此考核组信息"); + } + flowStart.getGroupIds(); + assessManagerService.assessChange(req); + return R.ok(); + + } + + + + @GetMapping("assess/manager/delete") @ApiOperation("删除考核任务") diff --git a/src/main/java/com/lz/modules/performance/req/AssessChangeReq.java b/src/main/java/com/lz/modules/performance/req/AssessChangeReq.java new file mode 100644 index 00000000..3595b3be --- /dev/null +++ b/src/main/java/com/lz/modules/performance/req/AssessChangeReq.java @@ -0,0 +1,26 @@ +package com.lz.modules.performance.req; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/27 14:49 + */ +@Data +@ApiModel("考核管理变动实体") +public class AssessChangeReq { + @ApiModelProperty(value = "考核id",name = "startId") + private Long startId; + + @ApiModelProperty(value = "变更类型 0 :添加 1:删除",name = "changeType") + private Integer changeType; + + @ApiModelProperty(value = "变动人员ids",name = "staffIds") + private List staffIds; + +} diff --git a/src/main/java/com/lz/modules/performance/req/AssessDetailReq.java b/src/main/java/com/lz/modules/performance/req/AssessDetailReq.java index 90f5547b..aa7dd4fe 100644 --- a/src/main/java/com/lz/modules/performance/req/AssessDetailReq.java +++ b/src/main/java/com/lz/modules/performance/req/AssessDetailReq.java @@ -17,8 +17,8 @@ import java.util.List; @ApiModel("获取考核详情实体") public class AssessDetailReq extends BasePage{ //考勤组id - @ApiModelProperty(value = "考勤组ids",name = "evaluationIds") - private List evaluationIds; + @ApiModelProperty(value = "考勤组ids ,逗号隔开",name = "evaluationIds") + private String evaluationIds; //发起考核的id @ApiModelProperty(value = "发起考核的id",name = "startId") private Long startId; @@ -26,8 +26,8 @@ public class AssessDetailReq extends BasePage{ @ApiModelProperty(value = "员工名称",name = "staffName") private String staffName; //人员id数组 - @ApiModelProperty(value = "人员id数组",name = "staffIds") - private List staffIds; + @ApiModelProperty(value = "人员ids,逗号隔开",name = "staffIds") + private String staffIds; //状态 确认 执行 结果录入。。。 @ApiModelProperty(value = "状态 确认 执行 结果录入。。。",name = "flowProcess") private Integer flowProcess; diff --git a/src/main/java/com/lz/modules/performance/service/AssessManagerService.java b/src/main/java/com/lz/modules/performance/service/AssessManagerService.java index c81c29a6..9f5e49f3 100644 --- a/src/main/java/com/lz/modules/performance/service/AssessManagerService.java +++ b/src/main/java/com/lz/modules/performance/service/AssessManagerService.java @@ -2,6 +2,7 @@ package com.lz.modules.performance.service; import com.lz.common.utils.PageUtils; import com.lz.modules.flow.entity.FlowStart; +import com.lz.modules.performance.req.AssessChangeReq; import com.lz.modules.performance.req.AssessDetailReq; import com.lz.modules.performance.req.AssessListReq; @@ -18,4 +19,6 @@ public interface AssessManagerService { PageUtils assessDetail(AssessDetailReq req); void accessDelete(FlowStart flowStart); + + void assessChange(AssessChangeReq req); } 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 69a36be5..682fa865 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 @@ -8,6 +8,7 @@ import com.lz.modules.flow.entity.EvaluationGroup; import com.lz.modules.flow.entity.FlowStart; import com.lz.modules.flow.service.EvaluationGroupService; import com.lz.modules.flow.service.EvaluationStartStaffService; +import com.lz.modules.performance.req.AssessChangeReq; import com.lz.modules.performance.req.AssessDetailReq; import com.lz.modules.performance.req.AssessListReq; import com.lz.modules.performance.res.AssessManagerDetailRes; @@ -21,6 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.*; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -83,7 +85,28 @@ public class AssessManagerServiceImpl implements AssessManagerService { public void accessDelete(FlowStart flowStart) { flowStart.setIsDelete(1); flowStartMapper.updateFlowStartById(flowStart); + String groupIds = flowStart.getGroupIds(); + if(StringUtil.isNotBlank(groupIds)){ + String[] split = groupIds.split(","); + List ids = Arrays.asList(split); + List collect = ids.stream().map(s -> Long.valueOf(s)).collect(Collectors.toList()); + evaluationGroupService.deleteByIds(collect); + } resultRecordMapper.batchDeleteByStartId(flowStart.getId()); return ; } + + + @Override + public void assessChange(AssessChangeReq req) { + + if(req.getChangeType() == 0){ + + + } + if(req.getChangeType() == 1){ + + } + + } } 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 cb2d9b91..4c7dd0f9 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,7 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.google.common.collect.Maps; import com.lz.common.utils.PageUtils; import com.lz.common.utils.StringUtil; +import com.lz.modules.app.entity.DepartmentsEntity; import com.lz.modules.app.entity.DepartmentsStaffRelateEntity; +import com.lz.modules.app.service.DepartmentsService; import com.lz.modules.app.service.DepartmentsStaffRelateService; import com.lz.modules.app.service.StaffService; import com.lz.modules.flow.dao.FlowStartMapper; @@ -50,6 +52,8 @@ public class ChartResultServiceImpl implements ChartResultService { private FlowStartService flowStartService; @Autowired private FlowStartMapper flowStartMapper; + @Autowired + private DepartmentsService departmentsService; @Override @@ -78,11 +82,18 @@ public class ChartResultServiceImpl implements ChartResultService { } data.add(res); - List strings = evaluationGroupService.selectAllStaffIdsByGroupId(3L); - List depstaff = this.countDepartmentAndStaffNum(strings); + FlowStart flowStart = flowStartMapper.selectFlowStartById(startId); + String[] split = flowStart.getGroupIds().split(","); + Set staffIds = new HashSet<>(); + for(String s:split){ + List strings = evaluationGroupService.selectAllStaffIdsByGroupId(Long.valueOf(s)); + staffIds.addAll(strings); + } + List all = new ArrayList<>(staffIds); + List depstaff = this.countDepartmentAndStaffNum(all); res = new ChartStatisticalRes(); res.setType(2); - res.setStatisticals(depstaff); + res.setStatisticals(buildDepStaffs(depstaff)); res.setDefaultTime(defaultTime); if(StringUtil.isNotBlank(defaultTime)){ res.setDefaultId(startId); @@ -191,4 +202,15 @@ public class ChartResultServiceImpl implements ChartResultService { } return data; } + + private List buildDepStaffs(List depStaffs){ + depStaffs.stream().forEach(chartStatistical -> { + String desc = chartStatistical.getDesc(); + DepartmentsEntity departmentsEntity = departmentsService.selectByDepartmentId(desc); + if(departmentsEntity!=null && StringUtil.isNotBlank(departmentsEntity.getDepartmentName())){ + chartStatistical.setDesc(departmentsEntity.getDepartmentName()); + } + }); + return depStaffs; + } } diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index 9dfa922f..a7388485 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -388,9 +388,9 @@ ON r.start_id = s.start_id and r.staff_id = s.staff_id where r.is_delete = 0 and s.is_delete = 0 and r.start_id = #{req.startId} - + and r.evaluation_id in( - + #{evaluation_id} ) @@ -399,11 +399,11 @@ and r.flow_process = #{req.flowProcess} - and r.staff_name = #{req.staffName} + and r.staff_name LIKE CONCAT('%',#{req.staffName},'%') - + and r.staff_id in( - + #{staff_id} ) @@ -414,22 +414,22 @@ SELECT count(flow_process) num,flow_process as 'desc' from lz_result_record where is_delete=0 and start_id =#{req.startId} - - and evaluation_id in( - + + and r.evaluation_id in( + #{evaluation_id} ) - and flow_process = #{req.flowProcess} + and r.flow_process = #{req.flowProcess} - and staff_name = #{req.staffName} + and r.staff_name LIKE CONCAT('%',#{req.staffName},'%') - - and staff_id in( - + + and r.staff_id in( + #{staff_id} ) diff --git a/src/main/resources/mapper/flow/EvaluationGroupMapper.xml b/src/main/resources/mapper/flow/EvaluationGroupMapper.xml index 94b81d02..d4804e38 100644 --- a/src/main/resources/mapper/flow/EvaluationGroupMapper.xml +++ b/src/main/resources/mapper/flow/EvaluationGroupMapper.xml @@ -113,5 +113,13 @@ select * from lz_evaluation_group where name=#{name} and is_delete = 0 limit 1 + + update lz_evaluation_group set is_delete = 1 where is_delete=0 + and id in ( + + #{id} + + ) + From 0d33e107745ef1aaaf459ec39c9276dd9e028f85 Mon Sep 17 00:00:00 2001 From: wulin Date: Tue, 27 Oct 2020 16:08:33 +0800 Subject: [PATCH 02/12] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=BB=A9=E6=95=88=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ResultRecordController.java | 47 +++++++++++++++++-- .../java/com/lz/modules/app/dao/StaffDao.java | 2 + .../modules/app/entity/StaffSimpleInfo.java | 2 + .../lz/modules/app/service/StaffService.java | 2 + .../app/service/impl/StaffServiceImpl.java | 5 ++ .../flow/model/ResultRecordDetailDto.java | 18 +++++-- .../flow/model/ResultRecortModelDto.java | 37 --------------- .../controller/EvaluationGroupController.java | 1 + .../sys/dao/app/ResultDetailMapper.java | 3 ++ .../sys/service/app/ResultDetailService.java | 3 ++ .../app/impl/ResultDetailServiceImpl.java | 6 +++ .../mapper/app/ResultDetailMapper.xml | 4 ++ .../resources/mapper/generator/StaffDao.xml | 12 +++++ 13 files changed, 97 insertions(+), 45 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 01a8119f..d41b266b 100644 --- a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java +++ b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java @@ -8,6 +8,7 @@ import com.lz.modules.app.dto.RecordDetailDto; import com.lz.modules.app.dto.StaffDepartmentDto; import com.lz.modules.app.entity.DepartmentsStaffRelateEntity; import com.lz.modules.app.entity.StaffEntity; +import com.lz.modules.app.entity.StaffSimpleInfo; import com.lz.modules.app.req.ResultRecordReq; import com.lz.modules.app.resp.ResultDetailResp; import com.lz.modules.app.resp.Step; @@ -16,7 +17,9 @@ import com.lz.modules.app.service.DepartmentsStaffRelateService; import com.lz.modules.app.service.StaffService; import com.lz.modules.flow.entity.*; import com.lz.modules.flow.model.Auth; +import com.lz.modules.flow.model.ResultDetailDto; import com.lz.modules.flow.model.ResultRecordDetailDto; +import com.lz.modules.flow.model.ResultRecortModelDto; import com.lz.modules.flow.req.ResultDetailReq; import com.lz.modules.flow.service.*; import com.lz.modules.sys.controller.AbstractController; @@ -51,7 +54,7 @@ import java.util.stream.Collectors; @RestController @RequestMapping("user/lzresultrecord") @Slf4j -@Api("绩效相关-吴林") +@Api(tags = "绩效相关") public class ResultRecordController extends AbstractController { @Autowired private ResultRecordService lzResultRecordService; @@ -319,12 +322,15 @@ public class ResultRecordController extends AbstractController { * 信息 */ @GetMapping("/getDetail") - @ApiOperation("获取绩效详情") + @ApiOperation("获取绩效详情-吴林") @ApiResponses({@ApiResponse(code = 200, message = "成功", response = ResultRecordDetailDto.class)}) public R getDetail(@RequestParam @ApiParam("绩效id") Long id) { ResultRecord resultRecord = lzResultRecordService.selectResultRecordById(id); - SysUserEntity user = getUser(); + if(resultRecord == null){ + return R.error("绩效不存在"); + } + /*SysUserEntity user = getUser(); if(resultRecord.getStaffId().longValue() != user.getUserId().longValue()){ //下面判断权限,是否可读 EvaluationStartStaff evaluationStartStaff = @@ -332,10 +338,41 @@ public class ResultRecordController extends AbstractController { if(evaluationStartStaff == null){//非考核组设置的绩效管理人员,下面应在查询其他权限 return R.error("未被授权访问"); } - } + }*/ //获取考核维度等信息 + ResultRecordDetailDto resultRecordDetailDto = new ResultRecordDetailDto(); + BeanUtils.copyProperties(resultRecord, resultRecordDetailDto); List resultModels = resultModelService.selectResultModelByGroupId(resultRecord.getEvaluationId()); - return R.ok().put("data", resultRecord); + StaffEntity staffEntity = staffService.selectStaffById(resultRecord.getStaffId()); + resultRecordDetailDto.setAvatar(staffEntity.getAvatar()); + resultRecordDetailDto.setJobNumber(staffEntity.getJobNumber()); + List resultRecortModelDtos = new ArrayList<>(); + for (ResultModel model:resultModels + ) { + resultRecordDetailDto.setCalculateId(model.getCalculateId()); + resultRecordDetailDto.setGradeGroupId(model.getGradeGroupId()); + ResultRecortModelDto resultRecortModelDto = new ResultRecortModelDto(); + BeanUtils.copyProperties(model, resultRecortModelDto); + List detailDtos = resultDetailService.selectDtosByRecordId(resultRecord.getId(), model.getType()); + resultRecortModelDto.setDetailDtos(detailDtos); + resultRecortModelDtos.add(resultRecortModelDto); + } + resultRecordDetailDto.setRecortModelDtos(resultRecortModelDtos); + + return R.ok().put("data", resultRecordDetailDto); + + + } + + @PostMapping("/saveDetail") + @ApiOperation("保存绩效详情-吴林") + public R saveDetail(@RequestParam @ApiParam("绩效id") ResultRecordDetailDto dto) { + + + + return R.ok(); + + } /** 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 ea5a4486..e49fdf88 100644 --- a/src/main/java/com/lz/modules/app/dao/StaffDao.java +++ b/src/main/java/com/lz/modules/app/dao/StaffDao.java @@ -92,4 +92,6 @@ public interface StaffDao extends BaseMapper { List selectStaffSimpleInfos(@Param("sIds") List sIds); List selectOnJobByIds(@Param("mIds") List mIds); + + StaffSimpleInfo selectStaffSimpleInfo(@Param("staffId") Long staffId); } diff --git a/src/main/java/com/lz/modules/app/entity/StaffSimpleInfo.java b/src/main/java/com/lz/modules/app/entity/StaffSimpleInfo.java index adecad38..df8fc507 100644 --- a/src/main/java/com/lz/modules/app/entity/StaffSimpleInfo.java +++ b/src/main/java/com/lz/modules/app/entity/StaffSimpleInfo.java @@ -44,6 +44,8 @@ public class StaffSimpleInfo implements Serializable { private String departmentId; //钉钉,飞书等第三方人员id private String employeeId; + //头像 + private String avatar; } 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 d6731bf0..76621438 100644 --- a/src/main/java/com/lz/modules/app/service/StaffService.java +++ b/src/main/java/com/lz/modules/app/service/StaffService.java @@ -97,5 +97,7 @@ public interface StaffService extends IService { DepartManagers findLeader(Long id, Integer type); //查找在职的 List selectOnJobByIds(List mIds); + + StaffSimpleInfo selectStaffSimpleInfo(Long staffId); } 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 93011dc1..aea7cd9b 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 @@ -514,5 +514,10 @@ public class StaffServiceImpl extends ServiceImpl impleme return staffDao.selectOnJobByIds(mIds); } + @Override + public StaffSimpleInfo selectStaffSimpleInfo(Long staffId){ + return staffDao.selectStaffSimpleInfo(staffId); + } + } diff --git a/src/main/java/com/lz/modules/flow/model/ResultRecordDetailDto.java b/src/main/java/com/lz/modules/flow/model/ResultRecordDetailDto.java index 04bbeb51..75f4a5bc 100644 --- a/src/main/java/com/lz/modules/flow/model/ResultRecordDetailDto.java +++ b/src/main/java/com/lz/modules/flow/model/ResultRecordDetailDto.java @@ -37,18 +37,30 @@ public class ResultRecordDetailDto { @ApiModelProperty(value = "员工id", name = "staffId") private Long staffId; + @ApiModelProperty(value = "lz_result_calculate 的id,计算法方法id", name = "calculateId") + private Long calculateId; + + //使用的哪个等级。等级组id,lz_result_grade的group_id + @ApiModelProperty(value = "使用的哪个等级。等级组id,lz_result_grade的group_id", name = "gradeGroupId") + private Long gradeGroupId; //当前审批流转所在员工 id @ApiModelProperty(value = "当前审批流转所在员工 id", name = "flowStaffIdRole") private Long flowStaffIdRole; //员工所在部门 id @ApiModelProperty(value = "员工所在部门 id", name = "departmentId") - private Long departmentId; + private String departmentId; //员工所在部门名称 @ApiModelProperty(value = "员工所在部门名称", name = "departmentName") private String departmentName; //员工姓名 @ApiModelProperty(value = "员工姓名", name = "staffName") private String staffName; + //员工姓名 + @ApiModelProperty(value = "员工头像", name = "avatar") + private String avatar; + //员工姓名 + @ApiModelProperty(value = "员工工号", name = "jobNumber") + private String jobNumber; //当前审批的员工 id @ApiModelProperty(value = "当前审批的员工 id", name = "currentApprovalStaffId") private Long currentApprovalStaffId; @@ -175,14 +187,14 @@ public class ResultRecordDetailDto { * 员工所在部门 id * @return */ - public Long getDepartmentId() { + public String getDepartmentId() { return departmentId; } /** * 员工所在部门 id * @param departmentId */ - public void setDepartmentId(Long departmentId) { + public void setDepartmentId(String departmentId) { this.departmentId = departmentId; } diff --git a/src/main/java/com/lz/modules/flow/model/ResultRecortModelDto.java b/src/main/java/com/lz/modules/flow/model/ResultRecortModelDto.java index efa61dad..7afe7076 100644 --- a/src/main/java/com/lz/modules/flow/model/ResultRecortModelDto.java +++ b/src/main/java/com/lz/modules/flow/model/ResultRecortModelDto.java @@ -33,12 +33,7 @@ public class ResultRecortModelDto { @ApiModelProperty(value = "考核子项目个数最大限制", name = "maxCount") private Integer maxCount; //lz_result_calculate 的id,计算法方法id - @ApiModelProperty(value = "lz_result_calculate 的id,计算法方法id", name = "calculateId") - private Long calculateId; - //使用的哪个等级。等级组id,lz_result_grade的group_id - @ApiModelProperty(value = "使用的哪个等级。等级组id,lz_result_grade的group_id", name = "gradeGroupId") - private Long gradeGroupId; //排序 @ApiModelProperty(value = "排序", name = "orderBy") private Integer orderBy; @@ -120,38 +115,8 @@ public class ResultRecortModelDto { this.maxCount = maxCount; } - /** - * lz_result_calculate 的id,计算法方法id - * @return - */ - public Long getCalculateId() { - return calculateId; - } - /** - * lz_result_calculate 的id,计算法方法id - * @param calculateId - */ - public void setCalculateId(Long calculateId) { - this.calculateId = calculateId; - } - - /** - * 使用的哪个等级。等级组id,lz_result_grade的group_id - * @return - */ - public Long getGradeGroupId() { - return gradeGroupId; - } - /** - * 使用的哪个等级。等级组id,lz_result_grade的group_id - * @param gradeGroupId - */ - public void setGradeGroupId(Long gradeGroupId) { - this.gradeGroupId = gradeGroupId; - } - /** * 排序 * @return @@ -175,8 +140,6 @@ public class ResultRecortModelDto { ",type=" + type + ",weight=" + weight + ",maxCount=" + maxCount + - ",calculateId=" + calculateId + - ",gradeGroupId=" + gradeGroupId + ",orderBy=" + orderBy + "}"; } 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 25cc5031..6fa9fe19 100644 --- a/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java +++ b/src/main/java/com/lz/modules/performance/controller/EvaluationGroupController.java @@ -121,6 +121,7 @@ public class EvaluationGroupController { } + @PostMapping("/update") public R update(@RequestBody @ApiParam EvaluationGroup evaluationGroup) { evaluationGroupService.updateEvaluationGroupById(evaluationGroup); diff --git a/src/main/java/com/lz/modules/sys/dao/app/ResultDetailMapper.java b/src/main/java/com/lz/modules/sys/dao/app/ResultDetailMapper.java index d82a1f58..cfa8b60e 100644 --- a/src/main/java/com/lz/modules/sys/dao/app/ResultDetailMapper.java +++ b/src/main/java/com/lz/modules/sys/dao/app/ResultDetailMapper.java @@ -9,6 +9,7 @@ package com.lz.modules.sys.dao.app; */ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.lz.common.utils.BigDecimalUtil; +import com.lz.modules.flow.model.ResultDetailDto; import com.lz.modules.sys.entity.app.ResultDetail; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -43,4 +44,6 @@ public interface ResultDetailMapper extends BaseMapper { BigDecimal calculateScore(@Param("recordId") Long recordId, @Param("staffId") Long staffId,@Param("type") Integer type); Long insertResultDetails(@Param("list") List resultDetails); + + List selectDtosByRecordId(@Param("recordResultId") Long id, @Param("type") int type); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/sys/service/app/ResultDetailService.java b/src/main/java/com/lz/modules/sys/service/app/ResultDetailService.java index 3677aa1f..f9d5213e 100644 --- a/src/main/java/com/lz/modules/sys/service/app/ResultDetailService.java +++ b/src/main/java/com/lz/modules/sys/service/app/ResultDetailService.java @@ -5,6 +5,7 @@ import com.lz.common.utils.BigDecimalUtil; import com.lz.modules.app.resp.ResultDetailResp; import com.lz.modules.app.resp.Step; import com.lz.modules.flow.model.Auth; +import com.lz.modules.flow.model.ResultDetailDto; import com.lz.modules.sys.entity.app.ResultDetail; import com.lz.modules.sys.entity.app.ResultRecord; @@ -67,4 +68,6 @@ public interface ResultDetailService extends IService { List selectByRecordIdAndType(Long id, int i); Long insertResultDetails(List resultDetails); + + List selectDtosByRecordId(Long id, int type); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/sys/service/app/impl/ResultDetailServiceImpl.java b/src/main/java/com/lz/modules/sys/service/app/impl/ResultDetailServiceImpl.java index 49998998..cd015176 100644 --- a/src/main/java/com/lz/modules/sys/service/app/impl/ResultDetailServiceImpl.java +++ b/src/main/java/com/lz/modules/sys/service/app/impl/ResultDetailServiceImpl.java @@ -12,6 +12,7 @@ import com.lz.modules.app.service.StaffService; import com.lz.modules.app.utils.t.TwoTuple; import com.lz.modules.flow.entity.*; import com.lz.modules.flow.model.Auth; +import com.lz.modules.flow.model.ResultDetailDto; import com.lz.modules.flow.model.StaffRoleDto; import com.lz.modules.flow.service.*; import com.lz.modules.sys.dao.app.ResultDetailMapper; @@ -334,4 +335,9 @@ public class ResultDetailServiceImpl extends ServiceImpl selectDtosByRecordId(Long id, int type){ + return resultDetailMapper.selectDtosByRecordId(id, type); + } + } diff --git a/src/main/resources/mapper/app/ResultDetailMapper.xml b/src/main/resources/mapper/app/ResultDetailMapper.xml index e0431bfb..9b6c2620 100644 --- a/src/main/resources/mapper/app/ResultDetailMapper.xml +++ b/src/main/resources/mapper/app/ResultDetailMapper.xml @@ -178,5 +178,9 @@ + + diff --git a/src/main/resources/mapper/generator/StaffDao.xml b/src/main/resources/mapper/generator/StaffDao.xml index ce32b558..ff9d8c71 100644 --- a/src/main/resources/mapper/generator/StaffDao.xml +++ b/src/main/resources/mapper/generator/StaffDao.xml @@ -510,4 +510,16 @@ ) and occupation.staff_status=0 and staff.is_delete=0 and occupation.is_delete=0 + + From 0df78fc7a3223f4f4927b498162a6abd8d39c52a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Tue, 27 Oct 2020 16:20:12 +0800 Subject: [PATCH 03/12] fix --- .../performance/controller/ChartController.java | 5 +++-- .../modules/performance/req/ChartResultReq.java | 15 +++++++++++++++ .../performance/service/ChartResultService.java | 3 ++- .../service/impl/ChartResultServiceImpl.java | 8 +++++--- .../modules/sys/dao/app/ResultRecordMapper.java | 2 +- .../resources/mapper/app/ResultRecordMapper.xml | 8 ++++---- 6 files changed, 30 insertions(+), 11 deletions(-) create mode 100644 src/main/java/com/lz/modules/performance/req/ChartResultReq.java 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 339aef54..cd81fff6 100644 --- a/src/main/java/com/lz/modules/performance/controller/ChartController.java +++ b/src/main/java/com/lz/modules/performance/controller/ChartController.java @@ -7,6 +7,7 @@ import com.lz.modules.equipment.entity.model.BasePage; import com.lz.modules.flow.dao.FlowStartMapper; import com.lz.modules.flow.entity.FlowStart; import com.lz.modules.flow.service.FlowStartService; +import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.req.ChartStartsReq; import com.lz.modules.performance.res.ChartStartsRes; import com.lz.modules.performance.res.ChartStatisticalRes; @@ -62,13 +63,13 @@ public class ChartController extends AbstractController{ } - /*@PostMapping("chart/rank") + @PostMapping("chart/rank") @ApiOperation("获取绩排名列表") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = ResultRankListRes.class)}) public R rankList(@RequestBody @ApiParam(name = "body",value = "body请求体",required = true) ChartResultReq req){ PageUtils pageUtils = chartResultService.resultRankList(req); return R.ok().put("data",pageUtils); - }*/ + } diff --git a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java new file mode 100644 index 00000000..53fd7a4d --- /dev/null +++ b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java @@ -0,0 +1,15 @@ +package com.lz.modules.performance.req; + +import com.lz.modules.equipment.entity.model.BasePage; +import lombok.Data; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/27 16:05 + */ +@Data +public class ChartResultReq extends BasePage{ + + private Long departmentId; +} diff --git a/src/main/java/com/lz/modules/performance/service/ChartResultService.java b/src/main/java/com/lz/modules/performance/service/ChartResultService.java index 99632b61..4bb29414 100644 --- a/src/main/java/com/lz/modules/performance/service/ChartResultService.java +++ b/src/main/java/com/lz/modules/performance/service/ChartResultService.java @@ -3,6 +3,7 @@ package com.lz.modules.performance.service; import com.lz.common.utils.PageUtils; import com.lz.modules.equipment.entity.model.BasePage; import com.lz.modules.performance.req.AssessDetailReq; +import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.req.ChartStartsReq; import com.lz.modules.performance.res.ChartStartsRes; import com.lz.modules.performance.res.ChartStatistical; @@ -21,7 +22,7 @@ public interface ChartResultService { List countDepartmentAndStaffNum(ListstaffIds); - //PageUtils resultRankList(ChartResultReq req); + PageUtils resultRankList(ChartResultReq req); PageUtils chartStarts(ChartStartsReq req); 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 4c7dd0f9..f3ce8d51 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 @@ -15,6 +15,7 @@ import com.lz.modules.flow.service.EvaluationGroupService; import com.lz.modules.flow.service.FlowStartService; import com.lz.modules.performance.enums.ResultFlowProcessEnum; import com.lz.modules.performance.req.AssessDetailReq; +import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.req.ChartStartsReq; import com.lz.modules.performance.res.ChartStartsRes; import com.lz.modules.performance.res.ChartStatistical; @@ -133,13 +134,14 @@ public class ChartResultServiceImpl implements ChartResultService { return data; } - /* @Override + @Override public PageUtils resultRankList(ChartResultReq req) { + List ids = staffService.staffsByAllDeparmentIds(Arrays.asList(req.getDepartmentId() + StringUtil.EMPTY)); PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()).doSelect( - page -> resultRecordMapper.selectResultRankList(page,req) + page -> resultRecordMapper.selectResultRankList(page,ids) ); return pageUtils; - }*/ + } @Override public PageUtils chartStarts(ChartStartsReq req) { diff --git a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java index 7e788d16..d39ab181 100644 --- a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java +++ b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java @@ -77,7 +77,7 @@ public interface ResultRecordMapper extends BaseMapper { List countNumByScoreLevel(@Param("startId") Long startId); - //List selectResultRankList(@Param("page") IPage page, @Param("req") ChartResultReq req); + List selectResultRankList(@Param("page") IPage page, @Param("staffIds") List staffIds); void batchDeleteByStartId(@Param("startId")Long startId); diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index a7388485..77873847 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -388,7 +388,7 @@ ON r.start_id = s.start_id and r.staff_id = s.staff_id where r.is_delete = 0 and s.is_delete = 0 and r.start_id = #{req.startId} - + and r.evaluation_id in( #{evaluation_id} @@ -401,7 +401,7 @@ and r.staff_name LIKE CONCAT('%',#{req.staffName},'%') - + and r.staff_id in( #{staff_id} @@ -414,7 +414,7 @@ SELECT count(flow_process) num,flow_process as 'desc' from lz_result_record where is_delete=0 and start_id =#{req.startId} - + and r.evaluation_id in( #{evaluation_id} @@ -427,7 +427,7 @@ and r.staff_name LIKE CONCAT('%',#{req.staffName},'%') - + and r.staff_id in( #{staff_id} From 5a9e697deb43beec0aa3d7d92c954b6a61d56e92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Tue, 27 Oct 2020 16:21:25 +0800 Subject: [PATCH 04/12] fix --- src/main/resources/mapper/app/ResultRecordMapper.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index 77873847..67b67ce9 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -415,20 +415,20 @@ where is_delete=0 and start_id =#{req.startId} - and r.evaluation_id in( + and evaluation_id in( #{evaluation_id} ) - and r.flow_process = #{req.flowProcess} + and flow_process = #{req.flowProcess} - and r.staff_name LIKE CONCAT('%',#{req.staffName},'%') + and staff_name LIKE CONCAT('%',#{req.staffName},'%') - and r.staff_id in( + and staff_id in( #{staff_id} From 82bfc20cd4fa6b238af46b814fc21ce7fbeea9e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Tue, 27 Oct 2020 16:45:40 +0800 Subject: [PATCH 05/12] fiz --- .../performance/controller/ChartController.java | 8 ++++---- .../modules/performance/req/ChartResultReq.java | 9 ++++++++- .../performance/res/ResultRankListRes.java | 5 +---- .../performance/service/ChartResultService.java | 2 +- .../service/impl/ChartResultServiceImpl.java | 7 ++++--- .../modules/sys/dao/app/ResultRecordMapper.java | 2 +- .../resources/mapper/app/ResultRecordMapper.xml | 15 ++++++++++++--- 7 files changed, 31 insertions(+), 17 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 cd81fff6..6d84c551 100644 --- a/src/main/java/com/lz/modules/performance/controller/ChartController.java +++ b/src/main/java/com/lz/modules/performance/controller/ChartController.java @@ -63,11 +63,11 @@ public class ChartController extends AbstractController{ } - @PostMapping("chart/rank") - @ApiOperation("获取绩排名列表") + @PostMapping("chart/detail") + @ApiOperation("获取报表等级详情") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = ResultRankListRes.class)}) - public R rankList(@RequestBody @ApiParam(name = "body",value = "body请求体",required = true) ChartResultReq req){ - PageUtils pageUtils = chartResultService.resultRankList(req); + public R chartDetailList(@RequestBody @ApiParam(name = "body",value = "body请求体",required = true) ChartResultReq req){ + PageUtils pageUtils = chartResultService.selectChartDetailList(req); return R.ok().put("data",pageUtils); } diff --git a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java index 53fd7a4d..479b363c 100644 --- a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java +++ b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java @@ -1,6 +1,8 @@ package com.lz.modules.performance.req; import com.lz.modules.equipment.entity.model.BasePage; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -9,7 +11,12 @@ import lombok.Data; * @Date: 2020/10/27 16:05 */ @Data +@ApiModel("获取报表等级详情实体") public class ChartResultReq extends BasePage{ - private Long departmentId; + @ApiModelProperty(value = "部门id",name = "departmentId") + private String departmentId; + + @ApiModelProperty(value = "考核id",name = "startId") + private Long startId; } diff --git a/src/main/java/com/lz/modules/performance/res/ResultRankListRes.java b/src/main/java/com/lz/modules/performance/res/ResultRankListRes.java index 610c3004..2a1e8a5a 100644 --- a/src/main/java/com/lz/modules/performance/res/ResultRankListRes.java +++ b/src/main/java/com/lz/modules/performance/res/ResultRankListRes.java @@ -26,10 +26,7 @@ public class ResultRankListRes { private String scoreLevel; //绩效结果 @ApiModelProperty(value = "绩效结果",name = "result") - private String result; - //绩效排名 - @ApiModelProperty(value = "绩效排名",name = "rank") - private String rank; + private String allScore; @ApiModelProperty(value = "id",name = "recordId") private Long recordId; } diff --git a/src/main/java/com/lz/modules/performance/service/ChartResultService.java b/src/main/java/com/lz/modules/performance/service/ChartResultService.java index 4bb29414..0e309d81 100644 --- a/src/main/java/com/lz/modules/performance/service/ChartResultService.java +++ b/src/main/java/com/lz/modules/performance/service/ChartResultService.java @@ -22,7 +22,7 @@ public interface ChartResultService { List countDepartmentAndStaffNum(ListstaffIds); - PageUtils resultRankList(ChartResultReq req); + PageUtils selectChartDetailList(ChartResultReq req); PageUtils chartStarts(ChartStartsReq req); 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 f3ce8d51..62e22f27 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 @@ -135,10 +135,11 @@ public class ChartResultServiceImpl implements ChartResultService { } @Override - public PageUtils resultRankList(ChartResultReq req) { - List ids = staffService.staffsByAllDeparmentIds(Arrays.asList(req.getDepartmentId() + StringUtil.EMPTY)); + public PageUtils selectChartDetailList(ChartResultReq req) { + List allDeparmentIds = staffService.selectAllDeparmentIdsByDepartmentParentId(req.getDepartmentId()); + List ids = staffService.staffsByAllDeparmentIds(allDeparmentIds); PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()).doSelect( - page -> resultRecordMapper.selectResultRankList(page,ids) + page -> resultRecordMapper.selectChartDetailList(page,ids,req.getStartId()) ); return pageUtils; } diff --git a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java index d39ab181..39457fce 100644 --- a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java +++ b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java @@ -77,7 +77,7 @@ public interface ResultRecordMapper extends BaseMapper { List countNumByScoreLevel(@Param("startId") Long startId); - List selectResultRankList(@Param("page") IPage page, @Param("staffIds") List staffIds); + List selectChartDetailList(@Param("page") IPage page, @Param("staffIds") List staffIds, @Param("startId")Long startId); void batchDeleteByStartId(@Param("startId")Long startId); diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index 67b67ce9..287d2d3f 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -360,11 +360,20 @@ SELECT count(score_level) num,case score_level WHEN 0 THEN '无等级' ELSE score_level END as 'desc' from lz_result_record where is_delete=0 and start_id =#{startId} GROUP BY score_level - + SELECT r.id recordId,all_score,department_name,staff_name,score_level,job_number staffNo from lz_result_record r LEFT JOIN lz_staff s on r.staff_id = s.id - where r.is_delete =0 and s.is_delete=0 ORDER BY all_score desc + where r.is_delete =0 and s.is_delete=0 + and r.start_id = #{startId} + + and r.staff_id in ( + + #{staff_id} + + ) + + ORDER BY all_score desc From 3e496962b1029596b0607c1f4f193fc8414ccb94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Tue, 27 Oct 2020 17:04:15 +0800 Subject: [PATCH 06/12] fix --- .../com/lz/modules/performance/req/ChartResultReq.java | 3 +++ .../com/lz/modules/performance/res/ChartStatistical.java | 3 +++ .../performance/service/impl/ChartResultServiceImpl.java | 7 +++++-- .../com/lz/modules/sys/dao/app/ResultRecordMapper.java | 2 +- src/main/resources/mapper/app/ResultRecordMapper.xml | 3 +++ 5 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java index 479b363c..5d49ac0c 100644 --- a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java +++ b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java @@ -19,4 +19,7 @@ public class ChartResultReq extends BasePage{ @ApiModelProperty(value = "考核id",name = "startId") private Long startId; + + @ApiModelProperty(value = "状态",name = "flowProcess") + private Long flowProcess; } diff --git a/src/main/java/com/lz/modules/performance/res/ChartStatistical.java b/src/main/java/com/lz/modules/performance/res/ChartStatistical.java index 6a6e8211..a894bc68 100644 --- a/src/main/java/com/lz/modules/performance/res/ChartStatistical.java +++ b/src/main/java/com/lz/modules/performance/res/ChartStatistical.java @@ -14,4 +14,7 @@ public class ChartStatistical { @ApiModelProperty(value = "人数",name = "num") private int num = 0; + + @ApiModelProperty(value = "状态",name = "flowProcess") + private Long flowProcess; } \ No newline at end of file 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 62e22f27..9a2a18f2 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 @@ -29,7 +29,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.*; -import java.util.function.Consumer; /** * @Author: djc @@ -139,7 +138,7 @@ public class ChartResultServiceImpl implements ChartResultService { List allDeparmentIds = staffService.selectAllDeparmentIdsByDepartmentParentId(req.getDepartmentId()); List ids = staffService.staffsByAllDeparmentIds(allDeparmentIds); PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()).doSelect( - page -> resultRecordMapper.selectChartDetailList(page,ids,req.getStartId()) + page -> resultRecordMapper.selectChartDetailList(page,ids,req.getStartId(),req.getFlowProcess()) ); return pageUtils; } @@ -197,6 +196,7 @@ public class ChartResultServiceImpl implements ChartResultService { ChartStatistical statistical = new ChartStatistical(); statistical.setDesc(flowProcessEnum.getDesc()); statistical.setNum(0); + statistical.setFlowProcess(Long.valueOf(flowProcessEnum.getStatus())); Object o = map.get(flowProcessEnum.getDesc()); if(o!=null){ statistical.setNum(Integer.valueOf(o.toString())); @@ -206,6 +206,9 @@ public class ChartResultServiceImpl implements ChartResultService { return data; } + + + private List buildDepStaffs(List depStaffs){ depStaffs.stream().forEach(chartStatistical -> { String desc = chartStatistical.getDesc(); diff --git a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java index 39457fce..8cb6a4de 100644 --- a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java +++ b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java @@ -77,7 +77,7 @@ public interface ResultRecordMapper extends BaseMapper { List countNumByScoreLevel(@Param("startId") Long startId); - List selectChartDetailList(@Param("page") IPage page, @Param("staffIds") List staffIds, @Param("startId")Long startId); + List selectChartDetailList(@Param("page") IPage page, @Param("staffIds") List staffIds, @Param("startId")Long startId,@Param("flowProcess")Long flowProcess); void batchDeleteByStartId(@Param("startId")Long startId); diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index 287d2d3f..0875ce92 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -373,6 +373,9 @@ ) + + and r.flow_process = #{flowProcess} + ORDER BY all_score desc From 15c82ace3ad988fe9dfa223ed6073ce3873825ac Mon Sep 17 00:00:00 2001 From: wulin Date: Tue, 27 Oct 2020 17:12:03 +0800 Subject: [PATCH 07/12] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=E7=BB=A9=E6=95=88=E8=AF=A6=E6=83=85=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ResultRecordController.java | 28 +++++++++++++++++-- .../flow/dao/EvaluationGroupMapper.java | 2 +- .../modules/flow/req/EvaluationGroupReq.java | 3 ++ .../impl/EvaluationGroupServiceImpl.java | 23 ++++++++++++++- .../mapper/flow/EvaluationGroupMapper.xml | 9 ++++++ .../resources/mapper/generator/StaffDao.xml | 6 +++- 6 files changed, 66 insertions(+), 5 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 b5b0f867..a5baeee0 100644 --- a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java +++ b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java @@ -367,8 +367,32 @@ public class ResultRecordController extends AbstractController { @PostMapping("/saveDetail") @ApiOperation("保存绩效详情-吴林") public R saveDetail(@RequestParam @ApiParam("绩效id") ResultRecordDetailDto dto) { - - + ResultRecord resultRecord = new ResultRecord(); + BeanUtils.copyProperties(dto, resultRecord); + List inserts = new ArrayList<>(); + List updates = new ArrayList<>(); + for (ResultRecortModelDto model:dto.getRecortModelDtos() + ) { + int index = 0; + for (ResultDetailDto detailDto:model.getDetailDtos() + ) {//排序 + ResultDetail resultDetail = new ResultDetail(); + BeanUtils.copyProperties(detailDto, resultDetail); + resultDetail.setPriority(index); + index++; + if(resultDetail.getId() != null){ + updates.add(resultDetail); + }else{ + inserts.add(resultDetail); + } + } + } + if(inserts.size() > 0){ + resultDetailService.saveBatch(inserts); + } + if(updates.size() > 0){ + resultDetailService.updateBatchById(updates); + } return R.ok(); diff --git a/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java b/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java index 70e9424b..b6418ff4 100644 --- a/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java +++ b/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java @@ -35,7 +35,7 @@ public interface EvaluationGroupMapper extends BaseMapper { int deleteEvaluationGroupById(@Param("id")Long id); - List seleteEvaluationGroupByReq(@Param("page") IPage page, @Param("req") EvaluationGroupReq req); + List seleteEvaluationGroupByReq(@Param("page") IPage page, @Param("req") EvaluationGroupReq req, @Param("list") List gIds); List selectEvaluationGroupByIds(@Param("ids") List ids); diff --git a/src/main/java/com/lz/modules/flow/req/EvaluationGroupReq.java b/src/main/java/com/lz/modules/flow/req/EvaluationGroupReq.java index 0cad1598..bc9ceb02 100644 --- a/src/main/java/com/lz/modules/flow/req/EvaluationGroupReq.java +++ b/src/main/java/com/lz/modules/flow/req/EvaluationGroupReq.java @@ -39,6 +39,9 @@ public class EvaluationGroupReq implements java.io.Serializable { @ApiModelProperty(value = "", name = "name") private String name; + @ApiModelProperty(value = "startId", name = "发起id,任务id") + private Long startId; + 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 97039d45..3193b78a 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 @@ -13,8 +13,10 @@ import com.lz.modules.app.service.StaffOccupationService; import com.lz.modules.app.service.StaffService; import com.lz.modules.flow.dao.EvaluationGroupMapper; import com.lz.modules.flow.entity.EvaluationGroup; +import com.lz.modules.flow.entity.FlowStart; import com.lz.modules.flow.req.EvaluationGroupReq; import com.lz.modules.flow.service.EvaluationGroupService; +import com.lz.modules.flow.service.FlowStartService; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -50,6 +52,9 @@ public class EvaluationGroupServiceImpl extends ServiceImpl gIds = null; + if(req.getStartId() != null){ + FlowStart flowStart = flowStartService.selectFlowStartById(req.getStartId()); + if(flowStart == null){ + return null; + } + gIds = Arrays.stream(flowStart.getGroupIds().split(",")) + .map(new Function() { + @Override + public Long apply(String s) { + return Long.parseLong(s); + } + }) + .collect(Collectors.toList()); + } + List finalGIds = gIds; PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()) - .doSelect(page -> evaluationGroupMapper.seleteEvaluationGroupByReq(page, req)); + .doSelect(page -> evaluationGroupMapper.seleteEvaluationGroupByReq(page, req, finalGIds)); //下面实时统计考核人数 List groups = pageUtils.getList(); for (EvaluationGroup group:groups diff --git a/src/main/resources/mapper/flow/EvaluationGroupMapper.xml b/src/main/resources/mapper/flow/EvaluationGroupMapper.xml index d4804e38..4dcafff2 100644 --- a/src/main/resources/mapper/flow/EvaluationGroupMapper.xml +++ b/src/main/resources/mapper/flow/EvaluationGroupMapper.xml @@ -96,9 +96,18 @@ + + + update lz_result_record set is_delete = 1 where + is_delete = 0 + and start_id = #{startId} + and staff_id in ( + + #{staff_id} + + ) + + From 2b2ab2ff07a79863ac46ae7f13d2470bf1f8de02 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, 28 Oct 2020 11:06:32 +0800 Subject: [PATCH 11/12] fix --- .../lz/modules/performance/req/ChartResultReq.java | 4 ++-- .../performance/res/AssessManagerDetailRes.java | 11 +++++++++++ .../service/impl/ChartResultServiceImpl.java | 2 +- .../lz/modules/sys/dao/app/ResultRecordMapper.java | 2 +- src/main/resources/mapper/app/ResultRecordMapper.xml | 6 +++--- 5 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java index 5d49ac0c..89921e5e 100644 --- a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java +++ b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java @@ -20,6 +20,6 @@ public class ChartResultReq extends BasePage{ @ApiModelProperty(value = "考核id",name = "startId") private Long startId; - @ApiModelProperty(value = "状态",name = "flowProcess") - private Long flowProcess; + @ApiModelProperty(value = "等级",name = "scoreLevel") + private Long scoreLevel; } diff --git a/src/main/java/com/lz/modules/performance/res/AssessManagerDetailRes.java b/src/main/java/com/lz/modules/performance/res/AssessManagerDetailRes.java index 81b67935..cc80f341 100644 --- a/src/main/java/com/lz/modules/performance/res/AssessManagerDetailRes.java +++ b/src/main/java/com/lz/modules/performance/res/AssessManagerDetailRes.java @@ -1,5 +1,7 @@ package com.lz.modules.performance.res; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.beans.factory.annotation.Autowired; @@ -11,15 +13,24 @@ import java.util.List; * @Date: 2020/10/21 11:35 */ @Data +@ApiModel("考核详情列表实体") public class AssessManagerDetailRes { + @ApiModelProperty(value = "姓名",name = "staffName") private String staffName; + @ApiModelProperty(value = "部门名称",name = "departmentName") private String departmentName; + @ApiModelProperty(value = "考核组",name = "evaluationName") private String evaluationName; + @ApiModelProperty(value = "考核结果",name = "allScore") private String allScore; + @ApiModelProperty(value = "绩效等级",name = "scoreLevel") private String scoreLevel; + + @ApiModelProperty(value = "id",name = "id") + private Long id; } 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 9a2a18f2..3beeeca5 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 @@ -138,7 +138,7 @@ public class ChartResultServiceImpl implements ChartResultService { List allDeparmentIds = staffService.selectAllDeparmentIdsByDepartmentParentId(req.getDepartmentId()); List ids = staffService.staffsByAllDeparmentIds(allDeparmentIds); PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()).doSelect( - page -> resultRecordMapper.selectChartDetailList(page,ids,req.getStartId(),req.getFlowProcess()) + page -> resultRecordMapper.selectChartDetailList(page,ids,req.getStartId(),req.getScoreLevel()) ); return pageUtils; } diff --git a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java index 1ac62e74..91ac06e9 100644 --- a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java +++ b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java @@ -77,7 +77,7 @@ public interface ResultRecordMapper extends BaseMapper { List countNumByScoreLevel(@Param("startId") Long startId); - List selectChartDetailList(@Param("page") IPage page, @Param("staffIds") List staffIds, @Param("startId")Long startId,@Param("flowProcess")Long flowProcess); + List selectChartDetailList(@Param("page") IPage page, @Param("staffIds") List staffIds, @Param("startId")Long startId,@Param("scoreLevel")Long scoreLevel); void batchDeleteByStartId(@Param("startId")Long startId); diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index 93c566d2..19403641 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -373,8 +373,8 @@ ) - - and r.flow_process = #{flowProcess} + + and r.score_level = #{scoreLevel} ORDER BY all_score desc @@ -395,7 +395,7 @@