项目库相关人员-导入校验
This commit is contained in:
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.jero.modules.project.enums;
|
||||
package com.jero.modules.enums;
|
||||
|
||||
public enum DictCodeEnum {
|
||||
|
||||
+3
@@ -164,4 +164,7 @@ public interface ISysDictService extends IService<SysDict> {
|
||||
Integer queryExitDictName(SysDict sysDict);
|
||||
|
||||
IPage<SysDict> queryPageList(Map<String, Object> params);
|
||||
|
||||
/**根据字典code查询中英文名*/
|
||||
String queryDictItemByName(String code, String itemName, String cut);
|
||||
}
|
||||
|
||||
+16
@@ -422,4 +422,20 @@ public class SysDictServiceImpl extends ServiceImpl<SysDictMapper, SysDict> impl
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据字典code查询中英文名
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public String queryDictItemByName(String code,String itemName,String cut) {
|
||||
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
String dictItemsCnName = sysDictMapper.queryDictTextByKey(code,itemName);
|
||||
return dictItemsCnName;
|
||||
}else {
|
||||
String dictItemsEnName = sysDictMapper.queryDictTextByKeyEn(code,itemName);
|
||||
return dictItemsEnName;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -79,5 +79,5 @@ public interface IProjectRelatedPersonnelService extends IService<ProjectRelated
|
||||
|
||||
Result<?> importExcel(HttpServletRequest request, HttpServletResponse response, Class<ProjectRelatedPersonnel> clazz, String projectId,String cut);
|
||||
|
||||
List<ProjectRelatedPersonnel> oppositeDisposeData(List<ProjectRelatedPersonnel> records);
|
||||
List<ProjectRelatedPersonnel> oppositeDisposeData(List<ProjectRelatedPersonnel> records,String projectId,String cut);
|
||||
}
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.project.entity.ProjectLibraryBase;
|
||||
import com.jero.modules.project.enums.DictCodeEnum;
|
||||
import com.jero.modules.enums.DictCodeEnum;
|
||||
import com.jero.modules.project.mapper.ProjectLibraryBaseMapper;
|
||||
import com.jero.modules.project.service.IProjectLibraryBaseService;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
|
||||
+88
-10
@@ -7,6 +7,7 @@ import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.enums.DictCodeEnum;
|
||||
import com.jero.modules.project.entity.ProjectRelatedPersonnel;
|
||||
import com.jero.modules.project.enums.ExportTemplateEnum;
|
||||
import com.jero.modules.project.mapper.ProjectRelatedPersonnelMapper;
|
||||
@@ -14,6 +15,7 @@ import com.jero.modules.project.service.IProjectRelatedPersonnelService;
|
||||
import com.jero.modules.project.util.ExcelLangUtils;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.mapper.SysUserMapper;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.modules.system.util.StringUtils;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
@@ -52,6 +54,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
@Autowired
|
||||
private ISysUserService sysUserService;
|
||||
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
@@ -173,9 +178,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
lawEngineerName = lawEngineerUsers.stream().filter(e -> data.equals(e.getId()))
|
||||
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
||||
}
|
||||
lawName.append(lawEngineerName).append(" ");
|
||||
lawName.append(lawEngineerName).append(" , ");
|
||||
}
|
||||
projectRelatedPersonnel.setLawEngineerName(lawName.toString());
|
||||
projectRelatedPersonnel.setLawEngineerName(lawName.substring(0,lawName.toString().length()-3));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -199,9 +204,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
engineeringInterfacePersonName = engineeringInterfacePersonUsers.stream().filter(e -> data.equals(e.getId()))
|
||||
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
||||
}
|
||||
engineeringName.append(engineeringInterfacePersonName).append(" ");
|
||||
engineeringName.append(engineeringInterfacePersonName).append(" , ");
|
||||
}
|
||||
projectRelatedPersonnel.setEngineeringInterfacePersonName(engineeringName.toString());
|
||||
projectRelatedPersonnel.setEngineeringInterfacePersonName(engineeringName.substring(0,engineeringName.toString().length()-3));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -224,9 +229,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
certificationEngineerName = certificationEngineerUsers.stream().filter(e -> data.equals(e.getId()))
|
||||
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
||||
}
|
||||
certificationName.append(certificationEngineerName).append(" ");
|
||||
certificationName.append(certificationEngineerName).append(" , ");
|
||||
}
|
||||
projectRelatedPersonnel.setCertificationEngineerName(certificationName.toString());
|
||||
projectRelatedPersonnel.setCertificationEngineerName(certificationName.substring(0,certificationName.toString().length()-3));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -451,7 +456,7 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
//接收导入数据
|
||||
List<ProjectRelatedPersonnel> records = ExcelImportUtil.importExcel(file.getInputStream(), clazz, params);
|
||||
if(CollectionUtils.isNotEmpty(records)) {
|
||||
oppositeDisposeData(records);
|
||||
oppositeDisposeData(records,projectId,cut);
|
||||
saveBatch(records);
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
@@ -490,9 +495,37 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
* 把导入的数据翻译成对应的id
|
||||
* @return
|
||||
*/
|
||||
public List<ProjectRelatedPersonnel> oppositeDisposeData(List<ProjectRelatedPersonnel> records) {
|
||||
|
||||
public List<ProjectRelatedPersonnel> oppositeDisposeData(List<ProjectRelatedPersonnel> records,String projectId,String cut) {
|
||||
int row=1;
|
||||
for (ProjectRelatedPersonnel projectRelatedPersonnel:records) {
|
||||
//责任领域
|
||||
if(!projectRelatedPersonnel.getDutyTerritory().isEmpty()) {
|
||||
if (projectRelatedPersonnel.getDutyTerritory().contains(",")) {
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的责任领域只能填一个.请检查第" + row + "行");
|
||||
}else{
|
||||
throw new JeroBootException("Only one duty territory can be filled in for import. Please check line " + row);
|
||||
}
|
||||
}
|
||||
String dictItemsName = sysDictService.queryDictItemByName(DictCodeEnum.DUTY_TERRITORY.getValue(), projectRelatedPersonnel.getDutyTerritory(), cut);
|
||||
if (dictItemsName.isEmpty()) {
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的责任领域不存在.请检查第" + row + "行");
|
||||
}else{
|
||||
throw new JeroBootException("The imported duty territory does not exist. Please check line " + row );
|
||||
}
|
||||
}
|
||||
}else{
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的责任领域不能为空.请检查第" + row + "行");
|
||||
}else{
|
||||
throw new JeroBootException("The imported duty territory cannot be empty.Please check line " + row );
|
||||
}
|
||||
}
|
||||
|
||||
//法规工程师
|
||||
List<SysUser> lawEngineerUsers = new ArrayList<>();
|
||||
if (StringUtils.isNotEmpty(projectRelatedPersonnel.getLawEngineerName())){
|
||||
@@ -500,6 +533,14 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
if (CollectionUtils.isNotEmpty(lawEngineerNameList)) {
|
||||
lawEngineerNameList = lawEngineerNameList.stream().distinct().collect(Collectors.toList());
|
||||
lawEngineerUsers=sysUserService.queryUserIdListByNameList(lawEngineerNameList);
|
||||
if(lawEngineerUsers.size()!=lawEngineerNameList.size()){
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的法规工程师姓名有误,请检查第" + row + "行");
|
||||
}else{
|
||||
throw new JeroBootException("The imported law engineer is wrong.Please check line " + row );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(CollectionUtils.isNotEmpty(lawEngineerUsers)) {
|
||||
@@ -515,6 +556,13 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
}
|
||||
projectRelatedPersonnel.setLawEngineer(midId.substring(0,midId.toString().length()-1));
|
||||
}
|
||||
}else{
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的法规工程师不能为空,请检查第" + row + "行");
|
||||
}else{
|
||||
throw new JeroBootException("The imported law engineer cannot be empty.Please check line " + row );
|
||||
}
|
||||
}
|
||||
|
||||
//工程接口人
|
||||
@@ -524,6 +572,14 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
if (CollectionUtils.isNotEmpty(engineeringInterfacePersonNameList)) {
|
||||
engineeringInterfacePersonNameList = engineeringInterfacePersonNameList.stream().distinct().collect(Collectors.toList());
|
||||
engineeringInterfacePersonUsers=sysUserService.queryUserIdListByNameList(engineeringInterfacePersonNameList);
|
||||
if(engineeringInterfacePersonUsers.size()!=engineeringInterfacePersonNameList.size()){
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的工程接口人姓名有误,请检查第" + row + "行");
|
||||
}else{
|
||||
throw new JeroBootException("The imported engineering interface person is wrong.Please check line " + row );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(CollectionUtils.isNotEmpty(engineeringInterfacePersonUsers)) {
|
||||
@@ -539,6 +595,13 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
}
|
||||
projectRelatedPersonnel.setEngineeringInterfacePerson(midId.substring(0,midId.toString().length()-1));
|
||||
}
|
||||
}else{
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的工程接口人不能为空,请检查第" + row + "行");
|
||||
}else {
|
||||
throw new JeroBootException("The imported engineering interface person cannot be empty.Please check line " + row );
|
||||
}
|
||||
}
|
||||
|
||||
//认证工程师
|
||||
@@ -548,6 +611,14 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
if (CollectionUtils.isNotEmpty(certificationEngineerNameList)) {
|
||||
certificationEngineerNameList = certificationEngineerNameList.stream().distinct().collect(Collectors.toList());
|
||||
certificationEngineerUsers=sysUserService.queryUserIdListByNameList(certificationEngineerNameList);
|
||||
if(certificationEngineerUsers.size()!=certificationEngineerNameList.size()){
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的认证工程师姓名有误,请检查第" + row + "行");
|
||||
}else {
|
||||
throw new JeroBootException("The imported certification engineer is wrong.Please check line " + row );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(CollectionUtils.isNotEmpty(certificationEngineerUsers)) {
|
||||
@@ -563,8 +634,15 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
||||
}
|
||||
projectRelatedPersonnel.setCertificationEngineer(midId.substring(0,midId.toString().length()-1));
|
||||
}
|
||||
}else{
|
||||
//中英切换提示语
|
||||
if(CutEnum.CN.getValue().equals(cut)) {
|
||||
throw new JeroBootException("导入的认证工程师不能为空,请检查第" + row + "行");
|
||||
}else {
|
||||
throw new JeroBootException("The imported certification engineer cannot be empty.Please check line " + row );
|
||||
}
|
||||
}
|
||||
|
||||
projectRelatedPersonnel.setProjectId(projectId);
|
||||
|
||||
}
|
||||
return records;
|
||||
|
||||
Reference in New Issue
Block a user