合并分支 'fix_20230508' 到 'master'

Fix 20230508

查看合并请求 laws-nio/laws-weilai!324
This commit is contained in:
高嵩
2023-05-15 09:01:54 +08:00
18 changed files with 611 additions and 267 deletions
@@ -106,4 +106,8 @@ public class ProjectRelatedPersonnel implements Serializable {
//批量设置传参ids
@TableField(exist = false)
private String ids;
// 一级责任领域(统计节点)
@TableField(exist = false)
private String firstLevelDutyTerritory;
}
@@ -28,8 +28,10 @@ import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.mapper.SysDictItemMapper;
import com.jero.modules.system.mapper.SysDictMapper;
import com.jero.modules.system.mapper.SysUserMapper;
import com.jero.modules.system.service.ISysDictItemService;
import com.jero.modules.system.service.ISysDictService;
import com.jero.modules.system.service.ISysUserService;
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
import com.jero.modules.system.util.StringUtils;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.io.IOUtils;
@@ -108,6 +110,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
@Autowired
private ProjectLibraryBaseMapper projectLibraryBaseMapper;
@Autowired
private ISysDictItemService sysDictItemService;
/**
* 保存
*
@@ -334,6 +339,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
}
public void disposeData(List<ProjectRelatedPersonnel> records) {
List<SysDictItem> sysDictItems = this.sysDictItemService.selectItemsAll();
Map<String, List<SysDictItem>> firstLevelDutyTerritoryMap = this.sysDictItemService.getFirstLevelSysDictItemByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue(),sysDictItems);
for (ProjectRelatedPersonnel projectRelatedPersonnel:records) {
//法规工程师
List<SysUser> lawEngineerUsers = new ArrayList<>();
@@ -459,6 +467,28 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
projectRelatedPersonnel.setEngineerAttSetName(AttSetName.substring(0,AttSetName.toString().length()-1));
}
}
String dutyTerritory = projectRelatedPersonnel.getDutyTerritory();
for (Map.Entry<String, List<SysDictItem>> firstLevelMap : firstLevelDutyTerritoryMap.entrySet()) {
String firstLevel = firstLevelMap.getKey();
List<SysDictItem> dutyTerritoryList = firstLevelMap.getValue();
if(StringUtils.isEmpty(firstLevel) && CollectionUtils.isEmpty(dutyTerritoryList)){
continue;
}
List<SysDictItem> dutyTerritoryListTemp = dutyTerritoryList.stream().filter(sysDictItem -> {
boolean flag = false;
if (StringUtils.equals(sysDictItem.getItemValue(), dutyTerritory)) {
flag = true;
}
return flag;
}).collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(dutyTerritoryListTemp)){
projectRelatedPersonnel.setFirstLevelDutyTerritory(firstLevel);
break;
}
}
}
}