Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH

This commit is contained in:
zyx.net
2023-03-31 10:39:06 +08:00
3 changed files with 130 additions and 50 deletions
@@ -319,4 +319,6 @@ public interface ISysUserService extends IService<SysUser> {
* @return
*/
String getUsernameByUserId(List<SysUser> sysUserList, String userId);
List<SysUser> querySysUserByUserNameList(List<String> userNameList);
}
@@ -797,4 +797,17 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
}
return result;
}
@Override
public List<SysUser> querySysUserByUserNameList(List<String> userNameList) {
List<SysUser> result = new ArrayList<>();
if(CollectionUtils.isNotEmpty(userNameList)){
userNameList = userNameList.stream().distinct().collect(Collectors.toList());
QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().in(SysUser::getUsername,userNameList);
result = this.list(queryWrapper);
}
return result;
}
}
@@ -6790,6 +6790,13 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
String value = "";
boolean flag = true;
List<String> userNameList = new ArrayList<>();
String designDutyIds = dataList.stream().map(ProjectLawsInventoryEO::getDesignDutyId).collect(Collectors.joining(","));
String verifyDutyIds = dataList.stream().map(ProjectLawsInventoryEO::getVerifyDutyId).collect(Collectors.joining(","));
userNameList.addAll(Arrays.asList(designDutyIds.split(",")));
userNameList.addAll(Arrays.asList(verifyDutyIds.split(",")));
List<SysUser> sysUserList = this.sysUserService.querySysUserByUserNameList(userNameList);
//编号验证
verifySerialNumber(dataList,projectLawsInventoryEOTemp,dataSource);
for (ProjectLawsInventoryEO projectLawsInventoryEO : dataList) {
@@ -6917,52 +6924,54 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
}
String nameCn = "";
String nameEn = "";
//责任领域(多选必填)
flag = must(projectLawsInventoryEO, errorMsg, msgList, dutyTerritory,"责任领域","Responsible Field");
if(flag){
value = pullMore(dictItemList, projectLawsInventoryEO, errorMsg, dutyTerritory,msgList,"责任领域","Responsible Field","duty_territory");
if(StringUtils.isNotBlank(value)){
//工程接口人(责任领域下的工程接口人)
Map<String, Object> objectMap = iProjectRelatedPersonnelService.queryPersonByProjectId(projectLawsInventoryEOTemp.getProjectLibraryId(), value);
//法规工程师
List<Map<String, String>> mapLawList = (List<Map<String, String>>) objectMap.get("lawEngineerList");
//认证工程师
List<Map<String, String>> mapCertificationList = (List<Map<String, String>>) objectMap.get("certificationEngineerList");
//工程接口人
List<Map<String, String>> mapPersonList = (List<Map<String, String>>) objectMap.get("engineeringInterfacePersonList");
//所有人
List<Map<String, String>> allPersonList = (List<Map<String, String>>) objectMap.get("allPersonList");
projectLawsInventoryEO.setDutyTerritory(value);
// 如果责任领域存在再匹配这些人员
//法规工程师
if(StringUtils.isNotBlank(regulationOwnerId)){
nameCn = "法规工程师";
nameEn = "regulatory engineer";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, regulationOwnerId, mapLawList,nameCn,nameEn, ProjectRoleEnum.REGULATI_ENGINEER.getValue());
}
//认证工程师
if(StringUtils.isNotBlank(homologationEngineerId)){
nameCn = "认证工程师";
nameEn = "certification engineer ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, homologationEngineerId, mapCertificationList,nameCn,nameEn,ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue());
}
//工程接口人
if(StringUtils.isNotBlank(engineeringInterfacePerson)){
nameCn = "工程接口人";
nameEn = "Engineering Interface ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, engineeringInterfacePerson, mapPersonList,nameCn,nameEn,ProjectRoleEnum.ENGINEERING_INTERFACE_PERSON.getValue());
}
}
}
//工程接口人(责任领域下的工程接口人)
Map<String, Object> objectMap = iProjectRelatedPersonnelService.queryPersonByProjectId(projectLawsInventoryEOTemp.getProjectLibraryId(), value);
//法规工程师
List<Map<String, String>> mapLawList = (List<Map<String, String>>) objectMap.get("lawEngineerList");
//认证工程师
List<Map<String, String>> mapCertificationList = (List<Map<String, String>>) objectMap.get("certificationEngineerList");
//工程接口人
List<Map<String, String>> mapPersonList = (List<Map<String, String>>) objectMap.get("engineeringInterfacePersonList");
//所有人
List<Map<String, String>> allPersonList = (List<Map<String, String>>) objectMap.get("allPersonList");
String nameCn = "";
String nameEn = "";
//法规工程师
if(StringUtils.isNotBlank(regulationOwnerId)){
nameCn = "法规工程师";
nameEn = "regulatory engineer";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, regulationOwnerId, mapLawList,nameCn,nameEn, ProjectRoleEnum.REGULATI_ENGINEER.getValue());
}
//认证工程师
if(StringUtils.isNotBlank(homologationEngineerId)){
nameCn = "认证工程师";
nameEn = "certification engineer ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, homologationEngineerId, mapCertificationList,nameCn,nameEn,ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue());
}
//工程接口人
if(StringUtils.isNotBlank(engineeringInterfacePerson)){
nameCn = "工程接口人";
nameEn = "Engineering Interface ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, engineeringInterfacePerson, mapPersonList,nameCn,nameEn,ProjectRoleEnum.ENGINEERING_INTERFACE_PERSON.getValue());
}
//设计
//交付物类型
@@ -6979,19 +6988,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
//发起人
if(StringUtils.isNotBlank(designInitiator)){
/*if(StringUtils.isNotBlank(designInitiator)){
nameCn = "设计符合性确认发起人";
nameEn = "confirm design conformance initiator ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, designInitiator, allPersonList,nameCn,nameEn,ProjectRoleEnum.DESIGNINITIATOR.getValue());
}
}*/
//责任人
if(StringUtils.isNotBlank(designDuty)){
nameCn = "设计符合性确认责任人";
nameEn = "confirm design conformance responsible";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, designDuty, allPersonList,nameCn,nameEn,ProjectRoleEnum.DESIGNDUTY.getValue());
sysUserVerify(projectLawsInventoryEO, errorMsg, msgList, designDuty, sysUserList,nameCn,nameEn,ProjectRoleEnum.DESIGNDUTY.getValue());
}
//截止时间
@@ -7016,7 +7025,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
//发起人
if(StringUtils.isNotBlank(prehomoInitiator)){
/*if(StringUtils.isNotBlank(prehomoInitiator)){
nameCn = "Pre-homo确认发起人";
nameEn = "Pre-homo identifies the initiator ";
//验证人员是否存在
@@ -7029,7 +7038,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
nameEn = "Pre-homo identifies the person responsible ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,prehomoDuty, allPersonList,nameCn,nameEn,ProjectRoleEnum.PREHOMODUTY.getValue());
}
}*/
//截止时间
flag = dateVerify(projectLawsInventoryEO, errorMsg, prehomoDueDate,msgList,"截止时间","due date");
@@ -7053,19 +7062,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//发起人
if(StringUtils.isNotBlank(verifyInitiator)){
/*if(StringUtils.isNotBlank(verifyInitiator)){
nameCn = "验证符合性确认发起人";
nameEn = "verify conformance validates the originator ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,verifyInitiator, allPersonList,nameCn,nameEn,ProjectRoleEnum.VERIFYINITIATOR.getValue());
}
}*/
//责任人
if(StringUtils.isNotBlank(verifyDuty)){
nameCn = "验证符合性确认责任人";
nameEn = "verify conformance to confirm the responsible person ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,verifyDuty, allPersonList,nameCn,nameEn,ProjectRoleEnum.VERIFYDUTY.getValue());
sysUserVerify(projectLawsInventoryEO, errorMsg, msgList,verifyDuty, sysUserList,nameCn,nameEn,ProjectRoleEnum.VERIFYDUTY.getValue());
}
@@ -7591,17 +7600,17 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
if(count == 0){
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += nameCn+regulationOwnerId+"与相关人员名单中责任领域下的人员不匹配";
errorMsg += nameCn+regulationOwnerId+"与相关人员名单中责任领域下的人员不匹配 ";
}else{
errorMsg += nameEn+regulationOwnerId+"does not match a person under the Responsible Field in the relevant person list";
errorMsg += nameEn+regulationOwnerId+"does not match a person under the Responsible Field in the relevant person list, ";
}
msgList.add(errorMsg);
}
}else{
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += nameCn+regulationOwnerId+"与相关人员名单中责任领域下的人员不匹配";
errorMsg += nameCn+regulationOwnerId+"与相关人员名单中责任领域下的人员不匹配 ";
}else{
errorMsg += nameEn+regulationOwnerId+"does not match a person under the Responsible Field in the relevant person list";
errorMsg += nameEn+regulationOwnerId+"does not match a person under the Responsible Field in the relevant person list, ";
}
msgList.add(errorMsg);
}
@@ -11077,5 +11086,61 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
});
}
/**
* 系统内所有用户验证
* @param projectLawsInventoryEO
* @param errorMsg
* @param msgList
* @param regulationOwnerId
* @param sysUserList
* @param nameCn
* @param nameEn
* @param fieldNumber
*/
private void sysUserVerify(ProjectLawsInventoryEO projectLawsInventoryEO,
String errorMsg, List<String> msgList,
String userName,
List<SysUser> sysUserList,
String nameCn,String nameEn,
String fieldNumber) {
//单选
if(userName.contains(",")){
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += nameCn + "导入只能填写一个用户名, ";
}else{
errorMsg += "Only one user name can be entered for"+ nameEn +"import, ";
}
msgList.add(errorMsg);
}
if(sysUserList.size() != 0){
int count = 0;
for (SysUser sysUser : sysUserList) {
if(StringUtils.equals(userName,sysUser.getUsername())){
count ++;
if(ProjectRoleEnum.DESIGNDUTY.getValue().equals(fieldNumber)) {
projectLawsInventoryEO.setDesignDutyId(sysUser.getId());
}else if(ProjectRoleEnum.VERIFYDUTY.getValue().equals(fieldNumber)){
projectLawsInventoryEO.setVerifyDutyId(sysUser.getId());
}
break;
}
}
if(count == 0){
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += nameCn+userName+"在系统中不存在, ";
}else{
errorMsg += nameEn+userName+"Does not exist in the system, ";
}
msgList.add(errorMsg);
}
}else{
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += nameCn+userName+"在系统中不存在, ";
}else{
errorMsg += nameEn+userName+"Does not exist in the system, ";
}
msgList.add(errorMsg);
}
}
}