问题管理-相关项目下拉
This commit is contained in:
+6
-4
@@ -1,11 +1,11 @@
|
||||
package com.jero.modules.project.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.jero.modules.project.entity.ProblemManagementEO;
|
||||
import com.jero.modules.project.entity.ProjectLibraryBase;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import com.jero.modules.project.entity.ProblemManagementEO;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 问题管理
|
||||
@@ -17,4 +17,6 @@ public interface ProblemManagementEOMapper extends BaseMapper<ProblemManagementE
|
||||
|
||||
List<ProjectLibraryBase> queryByIds(@Param("ids") String ids);
|
||||
|
||||
List<ProjectLibraryBase> queryByIdsProblem(@Param("ids") String ids);
|
||||
|
||||
}
|
||||
|
||||
+39
@@ -62,4 +62,43 @@
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
<select id="queryByIdsProblem" resultType="com.jero.modules.project.entity.ProjectLibraryBase">
|
||||
select
|
||||
plb.id,
|
||||
plb.project_name_id,
|
||||
pni.project_name as project_name,
|
||||
pyni.id as year_name_id,
|
||||
pyni.year_name,
|
||||
plb.target_market,
|
||||
plb.project_status,
|
||||
plb.studio_engineer,
|
||||
studiouser.username as studio_engineer_name,
|
||||
plb.certification_engineer,
|
||||
plb.vehicle_platform,
|
||||
plb.digital_platform,
|
||||
plb.ipd_info,
|
||||
plb.vehicle_development_plan,
|
||||
plb.attestation_plan,
|
||||
plb.create_by,
|
||||
plb.create_time,
|
||||
plb.sys_org_code,
|
||||
plb.update_by,
|
||||
plb.update_time,
|
||||
plb.parent_id,
|
||||
plb.project_version,
|
||||
plb.platform
|
||||
from project_library_base as plb
|
||||
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>
|
||||
<if test="ids != null and ids !=''">
|
||||
plb.id in
|
||||
<foreach collection="ids.split(',')" index="index" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
</where>
|
||||
order by plb.platform
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
+6
-4
@@ -265,10 +265,12 @@ public class ProblemManagementEOServiceImpl extends ServiceImpl<ProblemManagemen
|
||||
|
||||
public String getMarket(String cut, List<DictModel> targetMarketList, ProjectLibraryBase projectLibraryBase) {
|
||||
List<DictModel> dictModelList = new ArrayList<>();
|
||||
for (String s : projectLibraryBase.getTargetMarket().split(",")) {
|
||||
List<DictModel> dictModelListTemp = targetMarketList.stream()
|
||||
.filter(e -> s.equals(e.getValue())).collect(Collectors.toList());
|
||||
dictModelList.addAll(dictModelListTemp);
|
||||
if(StringUtils.isNotBlank(projectLibraryBase.getTargetMarket())){
|
||||
for (String s : projectLibraryBase.getTargetMarket().split(",")) {
|
||||
List<DictModel> dictModelListTemp = targetMarketList.stream()
|
||||
.filter(e -> s.equals(e.getValue())).collect(Collectors.toList());
|
||||
dictModelList.addAll(dictModelListTemp);
|
||||
}
|
||||
}
|
||||
String targetMarket = "";
|
||||
if(dictModelList.size() != 0){
|
||||
|
||||
+48
-17
@@ -17,9 +17,11 @@ import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: 项目名信息表
|
||||
@@ -132,27 +134,56 @@ public class ProjectNameInfoEOServiceImpl extends ServiceImpl<ProjectNameInfoEOM
|
||||
*/
|
||||
@Override
|
||||
public List<ProjectLibraryBase> queryProjectNameList(String cut) {
|
||||
List<ProjectLibraryBase> projectLibraryBaseList = problemManagementEOMapper.queryByIds(null);
|
||||
List<ProjectLibraryBase> projectLibraryBaseList = problemManagementEOMapper.queryByIdsProblem(null);
|
||||
//目标市场数据字典
|
||||
List<DictModel> targetMarketList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode());
|
||||
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";
|
||||
|
||||
List<ProjectLibraryBase> projectLibraryBaseParentList = projectLibraryBaseList.stream().filter(e -> StringUtils.isBlank(e.getParentId())).distinct().collect(Collectors.toList());
|
||||
|
||||
List<ProjectLibraryBase> result = new LinkedList<>();
|
||||
for (ProjectLibraryBase projectLibraryBase : projectLibraryBaseParentList) {
|
||||
//子项目
|
||||
List<ProjectLibraryBase> children = projectLibraryBaseList.stream()
|
||||
.filter(e -> StringUtils.isNotBlank(e.getParentId()) && projectLibraryBase.getId().equals(e.getParentId())).collect(Collectors.toList());
|
||||
if(children.size() != 0){
|
||||
//子项目的基础上添加的子项目
|
||||
List<String> childrenIdList = children.stream().map(ProjectLibraryBase::getId).distinct().collect(Collectors.toList());
|
||||
List<ProjectLibraryBase> childrenList = projectLibraryBaseList.stream()
|
||||
.filter(e -> StringUtils.isNotBlank(e.getParentId()) && childrenIdList.contains(e.getParentId())).collect(Collectors.toList());
|
||||
children.addAll(childrenList);
|
||||
|
||||
//按版本排序
|
||||
Collections.sort(children);
|
||||
result.add(projectLibraryBase);
|
||||
result.addAll(children);
|
||||
}else{
|
||||
projectVersion = projectLibraryBase.getProjectVersion();
|
||||
}
|
||||
if(StringUtils.isNotBlank(projectLibraryBase.getYearName())){
|
||||
projectLibraryBase.setProjectName(projectLibraryBase.getProjectName()
|
||||
+ "-" + projectLibraryBase.getYearName()
|
||||
+ "-" + targetMarket
|
||||
+"-"+projectVersion);
|
||||
result.add(projectLibraryBase);
|
||||
}
|
||||
}
|
||||
return projectLibraryBaseList;
|
||||
for (ProjectLibraryBase projectLibraryBase : result) {
|
||||
if(StringUtils.isBlank(projectLibraryBase.getPlatform())){
|
||||
//目标市场
|
||||
String targetMarket = problemManagementEOService.getMarket(cut, targetMarketList, projectLibraryBase);
|
||||
//主项目的版本号
|
||||
String projectVersion = "";
|
||||
if(StringUtils.isBlank(projectLibraryBase.getParentId())){
|
||||
projectVersion = "00";
|
||||
}else{
|
||||
projectVersion = projectLibraryBase.getProjectVersion();
|
||||
}
|
||||
if(StringUtils.isNotBlank(projectLibraryBase.getYearName())){
|
||||
String projectName = projectLibraryBase.getProjectName();
|
||||
String yearName = projectLibraryBase.getYearName();
|
||||
projectLibraryBase.setProjectName(projectLibraryBase.getProjectName()
|
||||
+ "-" + projectLibraryBase.getYearName()
|
||||
+ "-" + targetMarket
|
||||
+"-"+projectVersion);
|
||||
}
|
||||
}else{
|
||||
projectLibraryBase.setProjectName(projectLibraryBase.getProjectNameId());
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/* @Override
|
||||
|
||||
Reference in New Issue
Block a user