This commit is contained in:
zhn
2023-09-05 17:12:01 +08:00
parent 6feb61c256
commit bad7c2e618
3 changed files with 68 additions and 4 deletions
@@ -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
<foreach collection="ids.split(',')" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
@@ -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<NcrTrackMapper, NcrTrackVO>
@Autowired
private IProjectUserDutyTerritoryService projectUserDutyTerritoryService;
@Autowired
private IProblemManagementEOService problemManagementEOService;
private ProblemManagementEOServiceImpl problemManagementEOService;
@Autowired
private ProblemManagementEOMapper problemManagementEOMapper;
@Autowired
private IBussDocumentLibraryEOService bussDocumentLibraryEOService;
@Override
public List<NcrTrackVO> getPageInfo(NcrTrackVO ncrTrackVO) {
@@ -306,7 +315,7 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
}
}
}
List<NcrTrackVO> ncrTrackVOList = getProblemManagementData(ncrTrackVOListTemp);
List<NcrTrackVO> ncrTrackVOList = getProblemManagementData(ncrTrackVOListTemp,ncrTrackVO.getCut());
if(trackVOListTemp.size() != 0){
//旧数据处理
@@ -347,7 +356,7 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
}
@NotNull
private List<NcrTrackVO> getProblemManagementData(List<NcrTrackVO> ncrTrackVOListTemp) {
private List<NcrTrackVO> getProblemManagementData(List<NcrTrackVO> ncrTrackVOListTemp,String cut) {
List<String> idList = new ArrayList<>();
if(!ncrTrackVOListTemp.isEmpty()){
//处理导出时勾选数据
@@ -361,8 +370,60 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
}else{
managementEOList = problemManagementEOService.list();
}
List<String> collect = managementEOList.stream().map(ProblemManagementEO::getLawsId).collect(Collectors.toList());
List<BussDocumentLibraryEO> documentLibraryEOList = new ArrayList<>();
if(!collect.isEmpty()){
Set<String> lawIdSet = new HashSet<>();
for (String lawIds : collect) {
lawIdSet.addAll(Arrays.asList(lawIds.split(",")));
}
if(!lawIdSet.isEmpty()){
LambdaQueryWrapper<BussDocumentLibraryEO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(BussDocumentLibraryEO::getId, lawIdSet);
documentLibraryEOList = bussDocumentLibraryEOService.list(wrapper);
}
}
List<NcrTrackVO> 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<String> 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<ProjectLibraryBase> projectLibraryBaseList = problemManagementEOMapper.queryByIds(problemManagementEO.getProjectId());
//目标市场数据字典
List<DictModel> targetMarketList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode());
List<String> 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<ProblemManagementVO> list = new ArrayList<>();
@@ -202,6 +202,9 @@ public class ProblemManagementEOServiceImpl extends ServiceImpl<ProblemManagemen
+ "-" + targetMarket
+"-"+projectVersion);
}
if(!projectNameList.isEmpty()){
problemManagementEO.setProjectName(StringUtils.join(projectNameList,","));
}
}