diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/SubProcessDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/SubProcessDTO.java index a5a8f871f8..4ef4534545 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/SubProcessDTO.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/SubProcessDTO.java @@ -30,6 +30,7 @@ public class SubProcessDTO implements Serializable { */ private String handleUserName; private String subId; + private String processId; /** * 处理内容 */ diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSubProcessDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSubProcessDao.java index dd887c38be..e030f34669 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSubProcessDao.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectSubProcessDao.java @@ -45,10 +45,10 @@ public interface ProjectSubProcessDao extends BaseDao { /** * @Description 查询进展和附件 - * @Param processId + * @Param processIds * @author zxc * @date 2021/3/18 下午2:57 */ - List selectSubProcessAndAttachment(@Param("processId") String processId); + List selectSubProcessAndAttachment(@Param("processIds")List processIds); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSubProcessService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSubProcessService.java index 9d1aba55f9..d822ed2c39 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSubProcessService.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectSubProcessService.java @@ -104,9 +104,9 @@ public interface ProjectSubProcessService extends BaseService selectSubProcessAndAttachment(String processId); + List selectSubProcessAndAttachment(List processIds); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSubProcessServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSubProcessServiceImpl.java index 3314826387..0bdbbdb8df 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSubProcessServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectSubProcessServiceImpl.java @@ -31,7 +31,9 @@ import com.epmet.service.ProjectSubProcessService; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -106,18 +108,24 @@ public class ProjectSubProcessServiceImpl extends BaseServiceImpl projectStaffIds) { + if (CollectionUtils.isEmpty(projectStaffIds)){ + return null; + } return baseDao.selectSubProcess(projectStaffIds); } /** * @Description 查询进展和附件 - * @Param processId + * @Param processIds * @author zxc * @date 2021/3/18 下午2:57 */ @Override - public List selectSubProcessAndAttachment(String processId) { - return baseDao.selectSubProcessAndAttachment(processId); + public List selectSubProcessAndAttachment(List processIds) { + if (CollectionUtils.isEmpty(processIds)){ + return new ArrayList<>(); + } + return baseDao.selectSubProcessAndAttachment(processIds); } } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java index 0faaefda73..c35a1e33fc 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java @@ -144,12 +144,20 @@ public class ProjectTraceServiceImpl implements ProjectTraceService { log.warn(ProjectConstant.NOT_EXIST_PROJECT); return new ArrayList<>(); } + List processIds = processList.stream().filter(f -> f.getIsSend().equals(NumConstant.ONE)).map(m -> m.getProcessId()).collect(Collectors.toList()); + List subProcess = projectSubProcessService.selectSubProcessAndAttachment(processIds); // 是否发送到外部系统 0否 1是 - processList.forEach(p -> { - if (p.getIsSend().equals(NumConstant.ONE)){ - p.setSubProcess(projectSubProcessService.selectSubProcessAndAttachment(p.getProcessId())); - } - }); + if (!CollectionUtils.isEmpty(subProcess)){ + processList.forEach(p -> { + subProcess.forEach(s -> { + if (p.getProcessId().equals(s.getProcessId())){ + List process = new ArrayList<>(); + process.add(s); + p.setSubProcess(process); + } + }); + }); + } // 查询进展附件列表 List files = attachmentDao.selectAttachByProjectId(formDTO.getProjectId()); diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSubProcessDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSubProcessDao.xml index 893fb54b1c..f503a81c5d 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSubProcessDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectSubProcessDao.xml @@ -51,6 +51,7 @@ + @@ -60,11 +61,15 @@ psp.EXTERNAL_STATUS as externalStatus, psp.CREATED_TIME AS processTime, psp.HANDLE_USER_NAME as handleUserName, - psp.RESULT as result + psp.RESULT as result, + psp.process_id as processId FROM project_sub_process psp - WHERE psp.DEL_FLAG = 0 - AND psp.PROCESS_ID = #{processId} + AND ( + + psp.PROCESS_ID = #{processId} + + )