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 cedc8e44..0f0942e4 100644 --- a/src/main/java/com/lz/modules/performance/controller/ChartController.java +++ b/src/main/java/com/lz/modules/performance/controller/ChartController.java @@ -1,10 +1,12 @@ package com.lz.modules.performance.controller; +import com.lz.common.utils.PageUtils; import com.lz.common.utils.R; import com.lz.modules.flow.entity.EvaluationGroup; import com.lz.modules.flow.service.EvaluationGroupService; import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.res.ChartStatisticalRes; +import com.lz.modules.performance.res.ResultRankListRes; import com.lz.modules.performance.res.TaskListRes; import com.lz.modules.performance.service.ChartResultService; import com.lz.modules.sys.controller.AbstractController; @@ -40,10 +42,12 @@ public class ChartController extends AbstractController{ return R.ok().put("data",chartStatisticalRes); } - - public R rankList(){ - - return R.ok(); + @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 index 80282077..abe2115b 100644 --- a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java +++ b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java @@ -1,5 +1,6 @@ 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; @@ -13,7 +14,7 @@ import java.time.YearMonth; */ @Data @ApiModel(value = "绩效报表请求实体") -public class ChartResultReq { +public class ChartResultReq extends BasePage{ //考核类型 月度 季度 @ApiModelProperty(value = "考核类型 月度,自定义",name = "type") private int type = 0; 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 d6bd42e8..610c3004 100644 --- a/src/main/java/com/lz/modules/performance/res/ResultRankListRes.java +++ b/src/main/java/com/lz/modules/performance/res/ResultRankListRes.java @@ -1,6 +1,7 @@ package com.lz.modules.performance.res; import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -12,15 +13,23 @@ import lombok.Data; @ApiModel(value = "绩效排名列表") public class ResultRankListRes { //姓名 + @ApiModelProperty(value = "姓名",name = "staffName") private String staffName; //工号 + @ApiModelProperty(value = "工号",name = "staffNo") private String staffNo; //部门 + @ApiModelProperty(value = "部门",name = "departmentName") private String departmentName; //绩效等级 + @ApiModelProperty(value = "绩效等级",name = "scoreLevel") private String scoreLevel; //绩效结果 + @ApiModelProperty(value = "绩效结果",name = "result") private String result; //绩效排名 + @ApiModelProperty(value = "绩效排名",name = "rank") private String rank; + @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 fd17174c..03f204fb 100644 --- a/src/main/java/com/lz/modules/performance/service/ChartResultService.java +++ b/src/main/java/com/lz/modules/performance/service/ChartResultService.java @@ -1,8 +1,10 @@ package com.lz.modules.performance.service; +import com.lz.common.utils.PageUtils; import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.res.ChartStatistical; import com.lz.modules.performance.res.ChartStatisticalRes; +import com.lz.modules.performance.res.ResultRankListRes; import java.math.BigDecimal; import java.util.List; @@ -18,4 +20,6 @@ public interface ChartResultService { List countDepartmentAndStaffNum(ListstaffIds); + PageUtils resultRankList(ChartResultReq 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 18db8af8..86b3deb5 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 @@ -2,17 +2,24 @@ package com.lz.modules.performance.service.impl; 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.DepartmentsStaffRelateEntity; +import com.lz.modules.app.entity.StaffEntity; import com.lz.modules.app.service.DepartmentsStaffRelateService; +import com.lz.modules.app.service.StaffService; import com.lz.modules.flow.entity.EvaluationGroup; import com.lz.modules.flow.service.EvaluationGroupService; import com.lz.modules.performance.req.AssessListReq; import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.res.ChartStatistical; import com.lz.modules.performance.res.ChartStatisticalRes; +import com.lz.modules.performance.res.ResultRankListRes; import com.lz.modules.performance.service.ChartResultService; +import com.lz.modules.sys.dao.app.ResultRecordMapper; +import com.lz.modules.sys.entity.app.ResultRecord; import com.lz.modules.sys.service.app.ResultRecordService; +import com.qcloud.cos.http.RequestBodyValue; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.ArrayUtils; import org.springframework.beans.BeanUtils; @@ -20,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.*; +import java.util.function.Consumer; /** * @Author: djc @@ -35,6 +43,10 @@ public class ChartResultServiceImpl implements ChartResultService { private DepartmentsStaffRelateService departmentsStaffRelateService; @Autowired private EvaluationGroupService evaluationGroupService; + @Autowired + private ResultRecordMapper resultRecordMapper; + @Autowired + private StaffService staffService; @Override public List chartReport(ChartResultReq req) { @@ -87,4 +99,11 @@ public class ChartResultServiceImpl implements ChartResultService { return data; } + @Override + public PageUtils resultRankList(ChartResultReq req) { + PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()).doSelect( + page -> resultRecordMapper.selectResultRankList(page,req) + ); + 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 7f6657ac..eee162d5 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 @@ -17,6 +17,7 @@ import com.lz.modules.app.req.ResultRecordReq; import com.lz.modules.app.resp.OwnResultResp; import com.lz.modules.flow.model.ResultRecordDto; import com.lz.modules.performance.req.AssessListReq; +import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.res.ChartStatistical; import com.lz.modules.performance.res.ChartStatisticalRes; import com.lz.modules.sys.entity.app.ResultRecord; @@ -77,4 +78,6 @@ public interface ResultRecordMapper extends BaseMapper { List countNumByScoreLevel(@Param("req") AssessListReq req); + List selectResultRankList(@Param("page") IPage page, @Param("req") ChartResultReq req); + } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java b/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java index 935a74ea..b6770d27 100644 --- a/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java +++ b/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java @@ -1,5 +1,6 @@ package com.lz.modules.sys.service.app; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.lz.common.emun.WorkMsgTypeEnum; import com.lz.common.utils.PageUtils; @@ -107,4 +108,5 @@ public interface ResultRecordService extends IService { List countNumByFlowProcess(AssessListReq req); List countNumByScoreLevel(AssessListReq req); + } \ No newline at end of file diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index 7055b659..b11df7f6 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -341,10 +341,16 @@ - +