diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/files/excel/DefaultOrderImportExcelListener.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/files/excel/DefaultOrderImportExcelListener.java index 1c8d657c7..e7186885a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/files/excel/DefaultOrderImportExcelListener.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/util/fileConversion/admin/files/excel/DefaultOrderImportExcelListener.java @@ -497,13 +497,11 @@ public final class DefaultOrderImportExcelListener extends AnalysisEventListener isEmpty(vo.getGoodType(), "类型", 32); isEmpty(vo.getGoodsNumber(), "数量", 10000000); - // 检查商品物料编码或是商品名称、规格、材质、颜色不可全为空 - if (StringUtils.isEmpty(vo.getGoodsName()) || StringUtils.isEmpty(vo.getSpec()) - || StringUtils.isEmpty(vo.getMaterial()) || StringUtils.isEmpty(vo.getColor()) || StringUtils.isEmpty(vo.getUnit())) { - throw new ServiceException(10000, "商品商品名称、规格、材质、颜色、单位不可为空"); + // 检查商品物料编码或是商品名称、材质、颜色不可全为空 + if (StringUtils.isEmpty(vo.getGoodsName()) || StringUtils.isEmpty(vo.getMaterial()) || StringUtils.isEmpty(vo.getColor()) || StringUtils.isEmpty(vo.getUnit())) { + throw new ServiceException(10000, "商品商品名称、材质、颜色、单位不可为空"); } - if (StringUtils.equals(vo.getGoodType(), "配件")) { // 复合部件 isNotEmptyAndBack(StringUtils.isNotEmpty(vo.getIsComposite()) ? vo.getIsComposite() : "否", QuarrelEnum.class, "是否复合部件", 1); // 判断传入的值,是否符合字典中的枚举类 @@ -566,7 +564,8 @@ public final class DefaultOrderImportExcelListener extends AnalysisEventListener // 数量类型判断 isEmptyAndPositiveNumber(vo.getGoodsNumber(), Integer.class, "板材数量"); // 板材纹理 - isNotEmptyAndBack(vo.getWave(), IsHavaeEnum.class, "板材纹理", 4); + String wave = vo.getWave(); + isNotEmptyAndBack(StringUtils.isNotEmpty(wave) ? wave : "有", IsHavaeEnum.class, "板材纹理", 4); // 大板的长宽厚存在以及是否符合数个 isEmptyAndPositiveNumberSize(vo.getGoodsWidth(), Double.class, 5, 3, "板材长度"); isEmptyAndPositiveNumberSize(vo.getGoodsHeight(), Double.class, 5, 3, "板材宽度"); @@ -582,9 +581,7 @@ public final class DefaultOrderImportExcelListener extends AnalysisEventListener isEmptyAndPositiveNumberSize(vo.getHeight(), Double.class, 5, 3, "成品长度"); isNotEmptyAndBack(vo.getWidth(), "成品宽度"); isEmptyAndPositiveNumberSize(vo.getWidth(), Double.class, 5, 3, "成品宽度"); - isNotEmptyAndBack(vo.getSplitHeight(), "拆单长度"); isEmptyAndPositiveNumberSize(vo.getSplitHeight(), Double.class, 5, 3, "拆单长度"); - isNotEmptyAndBack(vo.getSplitWidth(), "拆单宽度"); isEmptyAndPositiveNumberSize(vo.getSplitWidth(), Double.class, 5, 3, "拆单宽度"); isNotEmptyAndBack(vo.getThickness(), "厚度"); isEmptyAndPositiveNumberSize(vo.getThickness(), Double.class, 5, 3, "厚度"); diff --git a/cf-module-prod-plan/cf-module-prod-plan-biz/src/main/java/com/cf/imes/module/plan/service/orderImport/factory/DefaultExcelOrderImportFactory.java b/cf-module-prod-plan/cf-module-prod-plan-biz/src/main/java/com/cf/imes/module/plan/service/orderImport/factory/DefaultExcelOrderImportFactory.java index f6282ed94..bd479a4dc 100644 --- a/cf-module-prod-plan/cf-module-prod-plan-biz/src/main/java/com/cf/imes/module/plan/service/orderImport/factory/DefaultExcelOrderImportFactory.java +++ b/cf-module-prod-plan/cf-module-prod-plan-biz/src/main/java/com/cf/imes/module/plan/service/orderImport/factory/DefaultExcelOrderImportFactory.java @@ -17,6 +17,7 @@ import com.cf.imes.framework.common.util.object.BeanUtils; import com.cf.imes.framework.id.core.util.SnowflakeIdWorker3rd; import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator; import com.cf.imes.framework.mybatis.core.injector.BaseBatchMapper; +import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.framework.mybatis.core.query.LambdaUpdateWrapperX; import com.cf.imes.framework.organ.core.context.OrganContextHolder; import com.cf.imes.module.executor.enums.DictTypeConstants; @@ -674,8 +675,8 @@ public class DefaultExcelOrderImportFactory { .plateNo(((obtainingTime) + Long.toString(plateNo).substring(2))) .height(BigDecimal.valueOf(Double.parseDouble(height))) .thickness(BigDecimal.valueOf(Double.parseDouble(combination.getThickness()))) - .splitWidth(BigDecimal.valueOf(Double.parseDouble(combination.getSplitWidth()))) - .splitHeight(BigDecimal.valueOf(Double.parseDouble(combination.getSplitHeight()))) + .splitWidth(BigDecimal.valueOf(NumberUtil.parseDouble(combination.getSplitWidth()))) + .splitHeight(BigDecimal.valueOf(NumberUtil.parseDouble(combination.getSplitHeight()))) .splitThickness(BigDecimal.valueOf(Double.parseDouble(tempDataDO.getThickness()))) .sealLeft(BigDecimal.valueOf(Double.parseDouble(combination.getSealLeft()))) .sealRight(BigDecimal.valueOf(Double.parseDouble(combination.getSealRight()))) @@ -1054,11 +1055,15 @@ public class DefaultExcelOrderImportFactory { plateGoodDO = getPlateGood(goodsDO.getGoodsId()); } else { // 没有goodsId,大板属性匹配大板 - existPlateGoodDOS = plateGoodMapper.selectList(new LambdaQueryWrapper() - .eq(PlateGoodDO::getTexture, goodsDO.getTexture()) - .eq(PlateGoodDO::getWidth, goodsDO.getWidth()) - .eq(PlateGoodDO::getHeight, goodsDO.getHeight()) - .eq(PlateGoodDO::getSpec, goodsDO.getSpec()) + existPlateGoodDOS = plateGoodMapper.selectList(new LambdaQueryWrapperX() + .eq(PlateGoodDO::getGoodsName, goodsDO.getGoodsName()) + .eq(PlateGoodDO::getMaterial, goodsDO.getMaterial()) + .eq(PlateGoodDO::getColor, goodsDO.getColor()) + .eqIfPresent(PlateGoodDO::getTexture, goodsDO.getTexture()) + .eqIfPresent(PlateGoodDO::getWidth, goodsDO.getWidth()) + .eqIfPresent(PlateGoodDO::getHeight, goodsDO.getHeight()) + .eq(PlateGoodDO::getThickness, goodsDO.getThickness()) + .eqIfPresent(PlateGoodDO::getSpec, goodsDO.getSpec()) .eq(PlateGoodDO::getDeleted, 0) .eq(PlateGoodDO::getOrganId, organId)); }