feat(ebom): 从excel导入时,添加对T项物料的支持

This commit is contained in:
曹鹏飞 2024-05-13 10:47:34 +08:00
parent dd29a68c85
commit 01436b7b9c
1 changed files with 21 additions and 4 deletions

View File

@ -3,6 +3,7 @@ package com.nflg.product.bomnew.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.RandomUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
@ -194,13 +195,19 @@ public class EBomImportService {
return isSame;
}
private void handlerExcelRow(EbomExcelDTO dQbomExcelVO) {
private void handlerExcelRow(EbomExcelDTO dto) {
rowNum.set(rowNum.get() + 1);
log.debug("ebom导入excel第{}行,处理前:{}", rowNum.get(), JSON.toJSONString(dQbomExcelVO));
log.debug("ebom导入excel第{}行,处理前:{}", rowNum.get(), JSON.toJSONString(dto));
dQbomExcelVO.setRowNum(rowNum.get());
dto.setRowNum(rowNum.get());
excelContextTL.get().add(dQbomExcelVO);
if (StrUtil.equals(dto.getProjectType(), BomConstant.PROJECT_TYPE_TEMPORARY, true)) {
String id = RandomUtil.randomNumbers(9);
dto.setMaterialNo(BomConstant.PROJECT_TYPE_TEMPORARY + id);
dto.setDrawingNo(BomConstant.PROJECT_TYPE_TEMPORARY + id);
}
excelContextTL.get().add(dto);
}
private List<OperationErrorMsgVO> checkExcel(List<EbomExcelDTO> datas) {
@ -224,6 +231,16 @@ public class EBomImportService {
);
}
numError = datas.stream().filter(u -> StrUtil.equals(u.getProjectType(), BomConstant.PROJECT_TYPE_TEMPORARY, true)
&& StrUtil.isBlank(u.getMaterialDesc()))
.map(BaseImportExcelDTO::getRowNum)
.collect(Collectors.toList());
if (!numError.isEmpty()) {
errorMsg.addAll(numError.stream().map(n -> OperationErrorMsgVO.create("" + n + "", "T项目的物料描述为空"))
.collect(Collectors.toList())
);
}
numError = datas.stream().filter(u -> Objects.isNull(u.getNum()) || BigDecimal.ZERO.compareTo(u.getNum()) >= 0)
.map(BaseImportExcelDTO::getRowNum)
.collect(Collectors.toList());