From bad7c2e6184f02916eadc9c3daae5d8c8a2bf882 Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Tue, 5 Sep 2023 17:12:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/xml/ProblemManagementEOMapper.xml | 2 +- .../service/impl/NcrTrackServiceImpl.java | 67 ++++++++++++++++++- .../impl/ProblemManagementEOServiceImpl.java | 3 + 3 files changed, 68 insertions(+), 4 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProblemManagementEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProblemManagementEOMapper.xml index d0cf6982a..1a14817c0 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProblemManagementEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProblemManagementEOMapper.xml @@ -52,7 +52,7 @@ left join project_name_info as pni on plb.project_name_id=pni.id left join sys_user as studiouser on plb.studio_engineer=studiouser.id left join project_year_name_info as pyni on plb.year_name_id=pyni.id - where id in + where plb.id in #{item} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/NcrTrackServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/NcrTrackServiceImpl.java index 3d55b978d..5bda203a7 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/NcrTrackServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/NcrTrackServiceImpl.java @@ -9,13 +9,17 @@ import com.jero.common.constant.enums.CutEnum; import com.jero.common.exception.JeroBootException; import com.jero.common.system.vo.DictModel; import com.jero.common.system.vo.LoginUser; +import com.jero.modules.document.entity.BussDocumentLibraryEO; +import com.jero.modules.document.service.IBussDocumentLibraryEOService; import com.jero.modules.project.entity.ProblemManagementEO; +import com.jero.modules.project.entity.ProjectLibraryBase; import com.jero.modules.project.entity.ProjectTaskInventoryDetailEO; import com.jero.modules.project.enums.ColourEnum; import com.jero.modules.project.enums.ComplianceFlowStatusEnum; import com.jero.modules.project.enums.DataEnum; import com.jero.modules.project.enums.ReviewResultEnum; import com.jero.modules.project.mapper.NcrTrackMapper; +import com.jero.modules.project.mapper.ProblemManagementEOMapper; import com.jero.modules.project.service.INcrTrackService; import com.jero.modules.project.service.IProblemManagementEOService; import com.jero.modules.project.vo.NcrTrackInfoVO; @@ -47,6 +51,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.OutputStream; import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; import java.util.HashSet; import java.util.List; @@ -75,7 +80,11 @@ public class NcrTrackServiceImpl extends ServiceImpl @Autowired private IProjectUserDutyTerritoryService projectUserDutyTerritoryService; @Autowired - private IProblemManagementEOService problemManagementEOService; + private ProblemManagementEOServiceImpl problemManagementEOService; + @Autowired + private ProblemManagementEOMapper problemManagementEOMapper; + @Autowired + private IBussDocumentLibraryEOService bussDocumentLibraryEOService; @Override public List getPageInfo(NcrTrackVO ncrTrackVO) { @@ -306,7 +315,7 @@ public class NcrTrackServiceImpl extends ServiceImpl } } } - List ncrTrackVOList = getProblemManagementData(ncrTrackVOListTemp); + List ncrTrackVOList = getProblemManagementData(ncrTrackVOListTemp,ncrTrackVO.getCut()); if(trackVOListTemp.size() != 0){ //旧数据处理 @@ -347,7 +356,7 @@ public class NcrTrackServiceImpl extends ServiceImpl } @NotNull - private List getProblemManagementData(List ncrTrackVOListTemp) { + private List getProblemManagementData(List ncrTrackVOListTemp,String cut) { List idList = new ArrayList<>(); if(!ncrTrackVOListTemp.isEmpty()){ //处理导出时勾选数据 @@ -361,8 +370,60 @@ public class NcrTrackServiceImpl extends ServiceImpl }else{ managementEOList = problemManagementEOService.list(); } + List collect = managementEOList.stream().map(ProblemManagementEO::getLawsId).collect(Collectors.toList()); + List documentLibraryEOList = new ArrayList<>(); + if(!collect.isEmpty()){ + Set lawIdSet = new HashSet<>(); + for (String lawIds : collect) { + lawIdSet.addAll(Arrays.asList(lawIds.split(","))); + } + if(!lawIdSet.isEmpty()){ + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.in(BussDocumentLibraryEO::getId, lawIdSet); + documentLibraryEOList = bussDocumentLibraryEOService.list(wrapper); + } + } List ncrTrackVOList = new ArrayList<>(); for (ProblemManagementEO problemManagementEO : managementEOList) { + //相关法规 + if(StringUtils.isNotBlank(problemManagementEO.getLawsId())){ + if(!documentLibraryEOList.isEmpty()){ + documentLibraryEOList = documentLibraryEOList.stream().filter(e->problemManagementEO.getLawsId().contains(e.getId())).collect(Collectors.toList()); + List serialNumberList = documentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList()); + problemManagementEO.setLawsName(com.jero.modules.system.util.StringUtils.join(serialNumberList,",")); + } + } + //相关项目 + if(com.jero.modules.system.util.StringUtils.isNotBlank(problemManagementEO.getProjectId())){ + List projectLibraryBaseList = problemManagementEOMapper.queryByIds(problemManagementEO.getProjectId()); + //目标市场数据字典 + List targetMarketList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode()); + List projectNameList = new ArrayList<>(); + for (ProjectLibraryBase projectLibraryBase : projectLibraryBaseList) { + //目标市场 + String targetMarket = problemManagementEOService.getMarket(cut, targetMarketList, projectLibraryBase); + //主项目的版本号 + String projectVersion = ""; + if(com.jero.modules.system.util.StringUtils.isBlank(projectLibraryBase.getParentId())){ + projectVersion = "00"; + }else{ + projectVersion = projectLibraryBase.getProjectVersion(); + } + if(com.jero.modules.system.util.StringUtils.isNotBlank(projectLibraryBase.getYearName())){ + projectLibraryBase.setProjectName(projectLibraryBase.getProjectName() + + "-" + projectLibraryBase.getYearName() + + "-" + targetMarket); + } + projectNameList.add(projectLibraryBase.getProjectName() + + "-" + projectLibraryBase.getYearName() + + "-" + targetMarket + +"-"+projectVersion); + } + if(!projectNameList.isEmpty()){ + problemManagementEO.setProjectName(com.jero.modules.system.util.StringUtils.join(projectNameList,",")); + } + } + //相关文件连接 if(StringUtils.isNotBlank(problemManagementEO.getFileLink())){ List list = new ArrayList<>(); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProblemManagementEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProblemManagementEOServiceImpl.java index e5c48f5bd..5751478fe 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProblemManagementEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProblemManagementEOServiceImpl.java @@ -202,6 +202,9 @@ public class ProblemManagementEOServiceImpl extends ServiceImpl