diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java index 42b30a509..1ed80ace4 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java @@ -6332,6 +6332,12 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl implements IProjectLawsInventoryEOService { @@ -710,6 +712,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl queryList(ProjectLawsInventoryEO projectLawsInventoryEO, HttpServletRequest req) { + long startTime = System.currentTimeMillis(); String dutyTerritoryStr = ""; if (StringUtils.isNotEmpty(projectLawsInventoryEO.getDutyTerritory())) { dutyTerritoryStr = projectLawsInventoryEO.getDutyTerritory(); @@ -749,6 +752,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl result = super.baseMapper.selectList(projectLawsInventoryEOQueryWrapper); + log.info("二阶段消耗时间:" + (System.currentTimeMillis() - startTime)); dataDispose(result,currentUser,isProjectRole,projectLawsInventoryEO.getCut()); - long startTime = System.currentTimeMillis(); + log.info("三阶段消耗时间:" + (System.currentTimeMillis() - startTime)); dataDictDispose(result,projectLawsInventoryEO.getCut()); - log.debug("处理数据字典消耗时间:" + (System.currentTimeMillis() - startTime)); + log.info("四阶段消耗时间:" + (System.currentTimeMillis() - startTime)); return result; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/mapper/xml/ProcessInfoEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/mapper/xml/ProcessInfoEOMapper.xml index 0d7e61b3d..d85aad48a 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/mapper/xml/ProcessInfoEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/mapper/xml/ProcessInfoEOMapper.xml @@ -57,22 +57,8 @@ concat(pli.serial_number,'、',bdl.title_en) as standard_info, pi.flow_type, - createBy.username as "create_by", + pi.create_by, pi.end_time, - ( - select - detail.task_id - from - process_info_detail detail - where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} order by submit_time desc limit 1 - ) as task_id, - ( - select - detail.task_definition_key - from - process_info_detail detail - where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} order by submit_time desc limit 1 - ) as task_definition_key, pi.status, pi.prc_num, pi.prc_name, @@ -87,7 +73,6 @@ left join project_name_info pni on pni.id = plb.project_name_id left join project_year_name_info pyni on pyni.id = plb.year_name_id left join project_laws_inventory pli on pi.project_laws_inventory_id = pli.id - LEFT JOIN sys_user createBy on createBy.id = pi.create_by LEFT JOIN buss_document_library bdl ON pi.buss_document_library_id = bdl.id @@ -141,22 +126,8 @@ concat(pli.serial_number,'、',bdl.title_en) as standard_info, pi.flow_type, - createBy.username AS "create_by", + pi.create_by, pi.end_time, - ( - select - detail.task_id - from - process_info_detail detail - where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} and detail.`status` = 'NotDone' limit 1 - ) as task_id, - ( - select - detail.task_definition_key - from - process_info_detail detail - where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} and detail.`status` = 'NotDone' limit 1 - ) as task_definition_key, pi.STATUS, pi.prc_num, pi.prc_name, @@ -171,7 +142,6 @@ LEFT JOIN project_name_info pni ON pni.id = plb.project_name_id LEFT JOIN project_year_name_info pyni ON pyni.id = plb.year_name_id LEFT JOIN project_laws_inventory pli ON pi.project_laws_inventory_id = pli.id - LEFT JOIN sys_user createBy ON createBy.id = pi.create_by LEFT JOIN buss_document_library bdl ON pi.buss_document_library_id = bdl.id where ( @@ -201,7 +171,7 @@ '' as title, '' as title_en, pi.flow_type, - createBy.username AS "create_by", + pi.create_by, ( select pid.end_time @@ -209,8 +179,6 @@ process_info_detail pid where pid.process_info_id = pi.id and pid.STATUS = 'NotDone' order by pid.end_time asc limit 1 ) as end_time, - '' as task_id, - '' as task_definition_key, pi.STATUS, pi.prc_num, pi.prc_name, @@ -225,7 +193,6 @@ LEFT JOIN project_name_info pni ON pni.id = plb.project_name_id LEFT JOIN project_year_name_info pyni ON pyni.id = plb.year_name_id LEFT JOIN project_laws_inventory pli ON pi.project_laws_inventory_id = pli.id - LEFT JOIN sys_user createBy ON createBy.id = pi.create_by WHERE ( pi.id IN ( @@ -260,37 +227,12 @@ pi.STATUS, pi.prc_num, pi.prc_name, - ( - select - detail.task_id - from - process_info_detail detail - where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} - - and detail.`status` = #{params.taskStatus} - - order by detail.submit_time desc - limit 1 - ) as task_id, - ( - select - detail.task_definition_key - from - process_info_detail detail - where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} - - and detail.`status` = #{params.taskStatus} - - order by detail.submit_time desc - limit 1 - ) as task_definition_key, - createBy.username AS create_by, + pi.create_by, pi.acti_proc_inst_id, pi.create_time FROM process_info pi LEFT JOIN buss_document_library bdl ON pi.buss_document_library_id = bdl.id - LEFT JOIN sys_user createBy on createBy.id = pi.create_by pi.flow_type IN diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java index b2f1ca3d4..24a6429d7 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/todoCenter/service/impl/ProcessInfoEOServiceImpl.java @@ -206,7 +206,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl result = this.baseMapper.queryProjectProcessTodoTaskListList(page,params); - this.disposeData(result.getRecords(),cut); + this.disposeData(result.getRecords(),cut,TaskStatusEnum.NOT_DONE.getValue()); return result; } @@ -226,7 +226,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl result = this.baseMapper.queryProjectProcessPageList(page,params); - this.disposeData(result.getRecords(),cut); + this.disposeData(result.getRecords(),cut,""); return result; } @@ -248,7 +248,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl result = this.baseMapper.queryProjectProcessPageList(page,params); - this.disposeData(result.getRecords(),cut); + this.disposeData(result.getRecords(),cut,""); return result; } @@ -340,7 +340,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl result = this.baseMapper.queryLawsAssessPageList(page,params); - this.disposeData(result.getRecords(),cut); + this.disposeData(result.getRecords(),cut,TaskStatusEnum.NOT_DONE.getValue()); return result; } @@ -363,7 +363,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl result = this.baseMapper.queryLawsAssessPageList(page,params); - this.disposeData(result.getRecords(),cut); + this.disposeData(result.getRecords(),cut,TaskStatusEnum.HAVE_DONE.getValue()); return result; } @@ -386,7 +386,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl result = this.baseMapper.queryLawsAssessPageList(page,params); - this.disposeData(result.getRecords(),cut); + this.disposeData(result.getRecords(),cut,TaskStatusEnum.HAVE_DONE.getValue()); return result; } @@ -403,7 +403,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl datas, String cut){ + public void disposeData(List datas, String cut, String taskStatus){ if(CollectionUtils.isNotEmpty(datas)){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date currentDate = new Date(); @@ -557,6 +557,45 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl createByUserIdList = datas.stream().map(ProcessInfoVO::getCreateBy).distinct().collect(Collectors.toList()); + List createByUserList = this.sysUserService.querySysUserListByIdList(createByUserIdList); + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + + datas.forEach(data -> { + // 设置发起人的名称 + if(CollectionUtils.isNotEmpty(createByUserList) && StringUtils.isNotEmpty(data.getCreateBy())){ + String createBy = createByUserList.stream().filter(createByUser -> { + boolean flag = false; + if(StringUtils.equals(createByUser.getId(),data.getCreateBy())){ + flag = true; + } + return flag; + }).map(SysUser::getUsername).distinct().collect(Collectors.joining(",")); + data.setCreateBy(createBy); + } + + if(!StringUtils.equals(data.getFlowType(),FlowTypeEnum.QDQR.getValue())){ + // 获取当前用户所拥有的待办任务信息 + List currentUserProcessInfoDetailInfos = processInfoDetailEOList.stream().filter(detail -> { + boolean flag = false; + if (StringUtils.isNotEmpty(taskStatus)) { + flag = (StringUtils.equals(detail.getProcessInfoId(), data.getId()) && StringUtils.equals(detail.getUserId(), currentUser.getId()) && StringUtils.equals(taskStatus, detail.getStatus())); + } else { + flag = (StringUtils.equals(detail.getProcessInfoId(), data.getId()) && StringUtils.equals(detail.getUserId(), currentUser.getId())); + } + return flag; + }).collect(Collectors.toList()); + + if(CollectionUtils.isNotEmpty(currentUserProcessInfoDetailInfos)){ + // 设置taskId + data.setTaskId(currentUserProcessInfoDetailInfos.get(0).getTaskId()); + // 设置taskDefinitionKey + data.setTaskDefinitionKey(currentUserProcessInfoDetailInfos.get(0).getTaskDefinitionKey()); + } + } + }); } }