法规清单关联平台件
This commit is contained in:
+13
@@ -62,6 +62,19 @@ public class ProjectLibraryBaseController extends JeroController<ProjectLibraryB
|
||||
return Result.OK(params.get("cut").toString(),pages);
|
||||
}
|
||||
|
||||
/**
|
||||
* 法规清单关联平台件
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@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);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
|
||||
+3
-2
@@ -1,12 +1,10 @@
|
||||
package com.jero.modules.project.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.jero.common.aspect.annotation.Dict;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
@@ -538,4 +536,7 @@ public class ProjectLawsInventoryEO implements Serializable {
|
||||
/**一级责任领域**/
|
||||
@TableField(exist = false)
|
||||
private String firstLevelDutyTerritory;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String projectName;//项目名称
|
||||
}
|
||||
|
||||
+7
@@ -85,6 +85,13 @@ public interface IProjectLibraryBaseService extends IService<ProjectLibraryBase>
|
||||
* @return
|
||||
*/
|
||||
List<ProjectLibraryBase> queryPageList(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 法规清单关联平台件
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
List<Map<String,Object>> listPlatform(Map<String, Object> params);
|
||||
// IPage<ProjectLibraryBase> queryPageList(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
|
||||
+82
@@ -1261,6 +1261,88 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
hearSort(params, resultLast);
|
||||
return resultLast;
|
||||
}
|
||||
/**
|
||||
* 法规清单关联平台件
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String,Object>> listPlatform(Map<String,Object> params) {
|
||||
String cut = (String) params.get("cut");//法规清单id
|
||||
String ids = (String) params.get("ids");//法规清单id
|
||||
String projectLibraryIds = (String) params.get("projectLibraryIds");//平台件项目id
|
||||
|
||||
//法规清单数据
|
||||
LambdaQueryWrapper<ProjectLawsInventoryEO> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(ProjectLawsInventoryEO::getId,Arrays.asList(ids.split(",")));
|
||||
List<ProjectLawsInventoryEO> lawsInventoryEOList = projectLawsInventoryEOService.list(wrapper);
|
||||
|
||||
//平台件项目对应的法规清单数据
|
||||
LambdaQueryWrapper<ProjectLawsInventoryEO> wrapper1 = new LambdaQueryWrapper<>();
|
||||
wrapper1.in(ProjectLawsInventoryEO::getProjectLibraryId,Arrays.asList(projectLibraryIds.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<>();
|
||||
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();
|
||||
|
||||
//责任领域
|
||||
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, ",");
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
projectLawsInventoryEOS.add(lawsInventoryEO);
|
||||
}
|
||||
}
|
||||
|
||||
if(!projectLawsInventoryEOS.isEmpty()){
|
||||
map.put("title",serialNumber+" "+dutyTerritoryNew+"在平台件项目中包含多条匹配内容,请选择关联");
|
||||
map.put("result",projectLawsInventoryEOS);
|
||||
mapList.add(map);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return mapList;
|
||||
}
|
||||
|
||||
private void hearSort(Map<String, Object> params, List<ProjectLibraryBase> resultLast) {
|
||||
if(ObjectUtils.isNotEmpty(params.get("orderByField"))){
|
||||
|
||||
Reference in New Issue
Block a user