From 45ece6ebb650810339a720588f74b65f502bd904 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, 10 Nov 2020 11:55:41 +0800 Subject: [PATCH 1/2] fix --- .../flow/dao/EvaluationGroupMapper.java | 2 +- .../flow/service/EvaluationGroupService.java | 3 + .../impl/EvaluationGroupServiceImpl.java | 13 ++++ .../impl/AssessManagerServiceImpl.java | 3 +- .../service/impl/ChartResultServiceImpl.java | 28 ++++++--- .../sys/dao/app/ResultRecordMapper.java | 2 + .../mapper/app/ResultRecordMapper.xml | 60 +++++++++++++++---- .../mapper/flow/EvaluationGroupMapper.xml | 1 + 8 files changed, 89 insertions(+), 23 deletions(-) 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 9f93486f..2f6db09b 100644 --- a/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java +++ b/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java @@ -45,7 +45,7 @@ public interface EvaluationGroupMapper extends BaseMapper { void deleteByCopyIds(@Param("ids") List ids); - List selectIdsByCopyIds(@Param("copyIds")String copyIds); + List selectIdsByCopyIds(@Param("copyIds")String copyIds,@Param("startId")Long startId); EvaluationGroup selectEvaluationGroupByCopyId(@Param("copyId")Long copyId,@Param("startId")Long startId); 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 2d6db490..543168f9 100644 --- a/src/main/java/com/lz/modules/flow/service/EvaluationGroupService.java +++ b/src/main/java/com/lz/modules/flow/service/EvaluationGroupService.java @@ -54,4 +54,7 @@ public interface EvaluationGroupService extends IService { void deleteByCopyIds(List ids); R checkStaff(CheckStaffReq checkStaffReq); + + String getEvaluationCopyIdsByEvaluationIds(String evaluationIds,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 ac58fc0a..b3468410 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 @@ -349,4 +349,17 @@ public class EvaluationGroupServiceImpl extends ServiceImpl ids = evaluationGroupMapper.selectIdsByCopyIds(evaluationIds,startId); + if(CollectionUtils.isEmpty(ids)){ + return StringUtil.EMPTY; + } + return StringUtils.join(ids,","); + } } 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 81eb257e..02ac4fc5 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 @@ -134,8 +134,7 @@ public class AssessManagerServiceImpl implements AssessManagerService { public PageUtils assessDetail(AssessDetailReq req) { //拼接拷贝组 if(StringUtil.isNotBlank(req.getEvaluationIds())){ - List evaluationIds = evaluationGroupMapper.selectIdsByCopyIds(req.getEvaluationIds()); - req.setCopyEvaluationIds(StringUtils.join(evaluationIds,",")); + req.setCopyEvaluationIds(evaluationGroupService.getEvaluationCopyIdsByEvaluationIds(req.getEvaluationIds(),req.getStartId())); } PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(),req.getPageSize()).doSelect( page -> resultRecordMapper.selectAssessListByStartId(page,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 f1ddd27e..a0329ee3 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 @@ -12,6 +12,7 @@ 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.EvaluationGroupMapper; import com.lz.modules.flow.dao.FlowChartMapper; import com.lz.modules.flow.dao.FlowStartMapper; import com.lz.modules.flow.entity.FlowChart; @@ -67,6 +68,8 @@ public class ChartResultServiceImpl implements ChartResultService { private FlowChartService flowChartService; @Autowired private AssessService assessService; + @Autowired + private EvaluationGroupMapper evaluationGroupMapper; private static final Long processId = 1L; @@ -97,7 +100,7 @@ public class ChartResultServiceImpl implements ChartResultService { res = new ChartStatisticalRes(); res.setType(0); - res.setStatisticals(buildProcess(process,startId,mandepartmentIds)); + res.setStatisticals(buildProcess(process,startId,mandepartmentIds,null)); res.setDefaultTime(defaultTime); if(StringUtil.isNotBlank(defaultTime)){ res.setDefaultId(startId); @@ -222,22 +225,29 @@ public class ChartResultServiceImpl implements ChartResultService { @Override public List countAssessNumByFlowProcess(AssessDetailReq req) { - List process = resultRecordMapper.countAssessNumByFlowProcess(req); + req.setCopyEvaluationIds(evaluationGroupService.getEvaluationCopyIdsByEvaluationIds(req.getEvaluationIds(),req.getStartId())); //获取自己管理的部门 List mandepartmentIds = assessService.roleDepartments(req.getLoginUserId()); - List data = buildProcess(process, req.getStartId(),mandepartmentIds); + req.setDepartmentIds(mandepartmentIds); + List process = resultRecordMapper.countAssessNumByFlowProcess(req); + List data = buildProcess(process, req.getStartId(),mandepartmentIds,req); return data; } //构建流程默认人数 - private List buildProcess(List process,Long startId,List mandepartmentIds){ + private List buildProcess(List process,Long startId,List mandepartmentIds,AssessDetailReq req){ List data = Lists.newArrayList(); Map map = Maps.newHashMap(); - int count = resultRecordService.count(new QueryWrapper() - .eq("is_delete", 0) - .eq("start_id", startId) - .in(CollectionUtils.isNotEmpty(mandepartmentIds),"department_id",mandepartmentIds)); - + int count; + if(req == null){ + count = resultRecordService.count(new QueryWrapper() + .eq("is_delete", 0) + .eq("start_id", startId) + .in(CollectionUtils.isNotEmpty(mandepartmentIds),"department_id",mandepartmentIds)); + } + else { + count = resultRecordMapper.countAssessNumJoin(req); + } ChartStatistical all = new ChartStatistical(); all.setDesc("参与人数"); all.setNum(count); 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 135d0210..4b129a6c 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 @@ -94,4 +94,6 @@ public interface ResultRecordMapper extends BaseMapper { int batchDeleteByStartIdAndStaffId(@Param("startId")Long startId,@Param("staffIds") List staffIds); List selectToScoreList(@Param("startId")Long startId, @Param("evaluationId")Long evaluationId); + + int countAssessNumJoin(@Param("req")AssessDetailReq 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 aac875cf..5f0d2b69 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -476,37 +476,75 @@ + + + diff --git a/src/main/resources/mapper/flow/EvaluationGroupMapper.xml b/src/main/resources/mapper/flow/EvaluationGroupMapper.xml index 411704b7..360bc4e6 100644 --- a/src/main/resources/mapper/flow/EvaluationGroupMapper.xml +++ b/src/main/resources/mapper/flow/EvaluationGroupMapper.xml @@ -155,6 +155,7 @@ #{copy_id} ) + and start_id = #{startId}