Merge remote-tracking branch 'origin/dev_20230912_Platform' into dev_20230912_Platform
This commit is contained in:
+15
-3
@@ -63,17 +63,29 @@ public class ProjectLibraryBaseController extends JeroController<ProjectLibraryB
|
||||
}
|
||||
|
||||
/**
|
||||
* 法规清单关联平台件
|
||||
* 勾选法规清单进行关联平台件
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "法规清单关联平台件")
|
||||
@ApiOperation(value="法规清单关联平台件", notes="法规清单关联平台件")
|
||||
@AutoLog(value = "勾选法规清单进行关联平台件")
|
||||
@ApiOperation(value="勾选法规清单进行关联平台件", notes="勾选法规清单进行关联平台件")
|
||||
@PostMapping(value = "/listPlatform")
|
||||
public Result<?> listPlatform(@RequestBody Map<String,Object> params) {
|
||||
List<Map<String, Object>> mapList = projectLibraryBaseService.listPlatform(params);
|
||||
return Result.OK(params.get("cut").toString(),mapList);
|
||||
}
|
||||
/**
|
||||
* 不勾选法规清单进行关联平台件
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "不勾选法规清单进行关联平台件")
|
||||
@ApiOperation(value="不勾选法规清单进行关联平台件", notes="不勾选法规清单进行关联平台件")
|
||||
@PostMapping(value = "/listPlatformAll")
|
||||
public Result<?> listPlatformAll(@RequestBody Map<String,Object> params) {
|
||||
List<Map<String, Object>> mapList = projectLibraryBaseService.listPlatformAll(params);
|
||||
return Result.OK(params.get("cut").toString(),mapList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
|
||||
+8
-1
@@ -87,11 +87,18 @@ public interface IProjectLibraryBaseService extends IService<ProjectLibraryBase>
|
||||
List<ProjectLibraryBase> queryPageList(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 法规清单关联平台件
|
||||
* 勾选法规清单进行关联平台件
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
List<Map<String,Object>> listPlatform(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 不勾选法规清单进行关联平台件
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
List<Map<String,Object>> listPlatformAll(Map<String, Object> params);
|
||||
// IPage<ProjectLibraryBase> queryPageList(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
|
||||
+1
-1
@@ -1827,7 +1827,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
}
|
||||
}
|
||||
|
||||
private String getTreeName(String cut, List<SysCategory> categoryList, List<String> technologyTerritoryList) {
|
||||
public String getTreeName(String cut, List<SysCategory> categoryList, List<String> technologyTerritoryList) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (String technologyTerritory : technologyTerritoryList) {
|
||||
List<SysCategory> collect = categoryList.stream().filter(e -> technologyTerritory.equals(e.getId())).collect(Collectors.toList());
|
||||
|
||||
+130
-1
@@ -61,6 +61,7 @@ import com.jero.modules.project.service.IProjectLibraryRoleRelEOService;
|
||||
import com.jero.modules.project.service.IProjectLibraryStatisticsService;
|
||||
import com.jero.modules.project.service.IProjectUserPermissionService;
|
||||
import com.jero.modules.project.vo.TimeNodeVO;
|
||||
import com.jero.modules.system.entity.SysCategory;
|
||||
import com.jero.modules.system.entity.SysDictItem;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.enums.DicCodeEnum;
|
||||
@@ -70,6 +71,7 @@ import com.jero.modules.system.mapper.SysUserMapper;
|
||||
import com.jero.modules.system.service.IProjectUserBrandService;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.modules.system.service.impl.SysCategoryServiceImpl;
|
||||
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
||||
import com.jero.modules.system.util.StringUtils;
|
||||
import com.jero.modules.todoCenter.entity.ProcessInfoDetailEO;
|
||||
@@ -206,6 +208,8 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
private OtaManageApplyEOServiceImpl otaManageApplyEOService;
|
||||
@Autowired
|
||||
private LawsInventoryPlatformEOServiceImpl lawsInventoryPlatformEOService;
|
||||
@Autowired
|
||||
private SysCategoryServiceImpl sysCategoryService;
|
||||
|
||||
private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
private static DecimalFormat df = new DecimalFormat("#.00");
|
||||
@@ -1265,7 +1269,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
return resultLast;
|
||||
}
|
||||
/**
|
||||
* 法规清单关联平台件
|
||||
* 勾选法规清单进行关联平台件
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@@ -1294,6 +1298,131 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
projectLibraryBaseList = this.list(wrapper2);
|
||||
}
|
||||
|
||||
//普通数据字典
|
||||
List<SysDictItem> sysDictItemList = sysDictItemMapper.selectItemsByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue());
|
||||
List<SysCategory> categoryList = sysCategoryService.list();
|
||||
List<Map<String,Object>> mapList = new ArrayList<>();
|
||||
List<Map<String,Object>> mapListOne = new ArrayList<>();
|
||||
for (ProjectLawsInventoryEO projectLawsInventoryEO : lawsInventoryEOList) {
|
||||
Map<String,Object> map = new HashMap<>();
|
||||
List<ProjectLawsInventoryEO> projectLawsInventoryEOS = new ArrayList<>();
|
||||
//serialNumber dutyTerritory
|
||||
String serialNumber = projectLawsInventoryEO.getSerialNumber();
|
||||
String dutyTerritory = projectLawsInventoryEO.getDutyTerritory();
|
||||
String subtitle = projectLawsInventoryEO.getSubtitle();
|
||||
|
||||
//责任领域
|
||||
List<String> list = new LinkedList<>();
|
||||
if(StringUtils.isNotBlank(dutyTerritory)){
|
||||
for (String s : dutyTerritory.split(",")) {
|
||||
List<SysDictItem> collect = sysDictItemList.stream().filter(e -> e.getItemValue().equals(s)).collect(Collectors.toList());
|
||||
if(CutEnum.CN.getValue().equals(cut) && !collect.isEmpty()){
|
||||
list.add(collect.get(0).getItemText());
|
||||
}else if(CutEnum.EN.getValue().equals(cut) && !collect.isEmpty()){
|
||||
list.add(collect.get(0).getEnName());
|
||||
}
|
||||
}
|
||||
}
|
||||
String dutyTerritoryNew = "";
|
||||
if(!list.isEmpty()){
|
||||
dutyTerritoryNew = StringUtils.join(list, ",");
|
||||
}
|
||||
//设计-交付物类型
|
||||
String designDeliverableTypeName = "";
|
||||
String verifyDeliverableTypeName = "";
|
||||
String designDeliverableType = projectLawsInventoryEO.getDesignDeliverableType();
|
||||
if(StringUtils.isNotBlank(designDeliverableType)){
|
||||
designDeliverableTypeName = projectLawsInventoryEOService.getTreeName(cut, categoryList, Arrays.asList(designDeliverableType.split(",")));
|
||||
}
|
||||
|
||||
//验证-交付物类型
|
||||
String verifyDeliverableType = projectLawsInventoryEO.getVerifyDeliverableType();
|
||||
if(StringUtils.isNotBlank(verifyDeliverableType)){
|
||||
verifyDeliverableTypeName = projectLawsInventoryEOService.getTreeName(cut, categoryList, Arrays.asList(verifyDeliverableType.split(",")));
|
||||
}
|
||||
|
||||
for (ProjectLawsInventoryEO lawsInventoryEO : lawsInventoryEOS) {
|
||||
String serialNumberTemp = lawsInventoryEO.getSerialNumber();
|
||||
String dutyTerritoryTemp = lawsInventoryEO.getDutyTerritory();
|
||||
if(serialNumber.equals(serialNumberTemp) && StringUtils.isNotBlank(dutyTerritory) && dutyTerritory.equals(dutyTerritoryTemp)){
|
||||
List<ProjectLibraryBase> projectLibraryBases = projectLibraryBaseList.stream().filter(e -> e.getId().equals(lawsInventoryEO.getProjectLibraryId())).collect(Collectors.toList());
|
||||
if(!projectLibraryBases.isEmpty()){
|
||||
lawsInventoryEO.setProjectName(projectLibraryBases.get(0).getProjectNameId());
|
||||
}
|
||||
if(!list.isEmpty()){
|
||||
lawsInventoryEO.setDutyTerritory_dictText(dutyTerritoryNew);
|
||||
}
|
||||
lawsInventoryEO.setDesignDeliverableTypeName(designDeliverableTypeName);
|
||||
lawsInventoryEO.setVerifyDeliverableTypeName(verifyDeliverableTypeName);
|
||||
projectLawsInventoryEOS.add(lawsInventoryEO);
|
||||
}
|
||||
}
|
||||
|
||||
if(!projectLawsInventoryEOS.isEmpty() && projectLawsInventoryEOS.size() > 1){
|
||||
map.put("lawsInventoryId",projectLawsInventoryEO.getId());
|
||||
map.put("title",serialNumber+" "+dutyTerritoryNew+" "+subtitle+"在平台件项目中包含多条匹配内容,请选择关联");
|
||||
map.put("result",projectLawsInventoryEOS);
|
||||
mapList.add(map);
|
||||
}else if(!projectLawsInventoryEOS.isEmpty() && projectLawsInventoryEOS.size() == 1){
|
||||
Map<String,Object> mapTemp = new HashMap<>();
|
||||
mapTemp.put("lawsInventoryId",projectLawsInventoryEO.getId());
|
||||
mapTemp.put("result",projectLawsInventoryEOS);
|
||||
mapListOne.add(mapTemp);
|
||||
}
|
||||
}
|
||||
if(!mapListOne.isEmpty()){
|
||||
//匹配一条平台件时直接新增
|
||||
List<LawsInventoryPlatformEO> lawsInventoryPlatformEOS = new ArrayList<>();
|
||||
for (Map<String, Object> map : mapListOne) {
|
||||
LawsInventoryPlatformEO inventoryPlatformEO = new LawsInventoryPlatformEO();
|
||||
inventoryPlatformEO.setCreateTime(new Date());
|
||||
inventoryPlatformEO.setUpdateTime(new Date());
|
||||
inventoryPlatformEO.setLawsInventoryId((String) map.get("lawsInventoryId"));
|
||||
List<ProjectLawsInventoryEO> projectLawsInventoryEOS = (List<ProjectLawsInventoryEO>) map.get("result");
|
||||
inventoryPlatformEO.setPlatformLawsInventoryId(projectLawsInventoryEOS.get(0).getId());
|
||||
lawsInventoryPlatformEOS.add(inventoryPlatformEO);
|
||||
}
|
||||
|
||||
if (!lawsInventoryPlatformEOS.isEmpty()) {
|
||||
lawsInventoryPlatformEOService.saveBatch(lawsInventoryPlatformEOS);
|
||||
}
|
||||
}
|
||||
return mapList;
|
||||
}
|
||||
/**
|
||||
* 不勾选法规清单进行关联平台件
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String,Object>> listPlatformAll(Map<String,Object> params) {
|
||||
String cut = (String) params.get("cut");//
|
||||
String projectLibraryIds = (String) params.get("projectLibraryIds");//法规清单id
|
||||
String platformProjectLibraryIds = (String) params.get("platformProjectLibraryIds");//平台件法规id
|
||||
|
||||
//法规清单数据
|
||||
LambdaQueryWrapper<ProjectLawsInventoryEO> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(ProjectLawsInventoryEO::getId,Arrays.asList(projectLibraryIds.split(",")));
|
||||
List<ProjectLawsInventoryEO> lawsInventoryEOList = projectLawsInventoryEOService.list(wrapper);
|
||||
//只有法规的设计符合性确认和验证符合性确认中的流程状态均为清单待发布的时候,才能关联平台件数据
|
||||
lawsInventoryEOList = lawsInventoryEOList.stream()
|
||||
.filter(e->ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue().equals(e.getDesignFlowStatus())
|
||||
&& ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue().equals(e.getVerifyFlowStatus())).collect(Collectors.toList());
|
||||
|
||||
//平台件项目对应的法规清单数据
|
||||
LambdaQueryWrapper<ProjectLawsInventoryEO> wrapper1 = new LambdaQueryWrapper<>();
|
||||
wrapper1.in(ProjectLawsInventoryEO::getId,Arrays.asList(platformProjectLibraryIds.split(",")));
|
||||
List<ProjectLawsInventoryEO> lawsInventoryEOS = projectLawsInventoryEOService.list(wrapper1);
|
||||
|
||||
//平台件项目信息
|
||||
List<ProjectLibraryBase> projectLibraryBaseList = new ArrayList<>();
|
||||
if(!lawsInventoryEOList.isEmpty()){
|
||||
List<String> projectIdList = lawsInventoryEOS.stream().map(ProjectLawsInventoryEO::getProjectLibraryId).distinct().collect(Collectors.toList());
|
||||
LambdaQueryWrapper<ProjectLibraryBase> wrapper2 = new LambdaQueryWrapper<>();
|
||||
wrapper2.in(ProjectLibraryBase::getId,projectIdList);
|
||||
projectLibraryBaseList = this.list(wrapper2);
|
||||
}
|
||||
|
||||
//普通数据字典
|
||||
List<SysDictItem> sysDictItemList = sysDictItemMapper.selectItemsByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue());
|
||||
List<Map<String,Object>> mapList = new ArrayList<>();
|
||||
|
||||
Reference in New Issue
Block a user