diff --git a/nflg_project_dev/material/src/main/java/com/nflg/product/material/service/MaterialExcelService.java b/nflg_project_dev/material/src/main/java/com/nflg/product/material/service/MaterialExcelService.java index 5f9904ad..2c490305 100644 --- a/nflg_project_dev/material/src/main/java/com/nflg/product/material/service/MaterialExcelService.java +++ b/nflg_project_dev/material/src/main/java/com/nflg/product/material/service/MaterialExcelService.java @@ -248,7 +248,11 @@ public class MaterialExcelService { List cate22Ents = materialCategoryService.lambdaQuery() .eq(MaterialCategoryEntity::getRelCategoryCode, MaterialRelCategoryCodeEnum.relCategoryCode_22.getRelCategoryCode()).select(MaterialCategoryEntity::getCategoryCode).list(); List cate22List = cate22Ents.stream().map(MaterialCategoryEntity::getCategoryCode).collect(Collectors.toList()); + StringBuilder materialDescEnMsgBuilder = new StringBuilder(); + boolean materialDescEnPass = true; + int counter = 1; // 第一行是表头 for (MaterialSelfExcelDTO excelEnt : datas) { + counter++; if (StringUtils.isNotEmpty(excelEnt.getMaterialType())) { MaterialMainGetTypeEnum materialMainGetTypeEnum = MaterialMainGetTypeEnum.findCodeByDescription(excelEnt.getMaterialType()); if (materialMainGetTypeEnum == null) { @@ -297,8 +301,21 @@ public class MaterialExcelService { excelEnt.setMaterialDescEn("Assembly before Shipment"); } } + if (!"201301".equals(excelEnt.getMaterialCategoryCode()) && ObjectUtil.isEmpty(excelEnt.getMaterialDescEn())) { + materialDescEnMsgBuilder.append("第"); + materialDescEnMsgBuilder.append(counter); + materialDescEnMsgBuilder.append("行名称为“"); + materialDescEnMsgBuilder.append(excelEnt.getMaterialName()); + materialDescEnMsgBuilder.append("“"); + materialDescEnPass = false; + } } } + // 检查英文描述不能为空 + if (!materialDescEnPass) { + materialDescEnMsgBuilder.append("的物料命名不规范(未匹配到英文描述)"); + throw new NflgBusinessException(STATE.ParamErr, materialDescEnMsgBuilder.toString()); + } //检查图号不能重复 List drawingNoList = datas.stream().map(MaterialSelfExcelDTO::getDrawingNo).collect(Collectors.toList()); @@ -317,14 +334,6 @@ public class MaterialExcelService { List descDbExites = dbExitstDesc.stream().map(MaterialMainEntity::getMaterialDesc).collect(Collectors.toList()); throw new NflgBusinessException(STATE.ParamErr, StrUtil.join(",", descDbExites).concat("图号+名称在数据库中已存在")); } - // 检查英文描述不能为空 - List emptyMaterialDescEnList = datas.stream() - .filter(item -> !"201301".equals(item.getMaterialCategoryCode()) && ObjectUtil.isEmpty(item.getMaterialDescEn())) - .collect(Collectors.toList()); - if (CollUtil.isNotEmpty(emptyMaterialDescEnList)) { - List emptyDescEnList = emptyMaterialDescEnList.stream().map(MaterialSelfExcelDTO::getMaterialName).collect(Collectors.toList()); - throw new NflgBusinessException(STATE.ParamErr, StrUtil.join(",", emptyDescEnList).concat("未匹配到英文描述")); - } List result = Convert.convert(new TypeReference>() { }, datas);