From 5ef293e69cd4d84d01ec3d1a51865ef4cc5df44a Mon Sep 17 00:00:00 2001 From: jing's Date: Wed, 3 Jan 2024 22:36:25 +0800 Subject: [PATCH] =?UTF-8?q?=E9=97=AE=E9=A2=98=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nflg/product/bomnew/api/user/EbomApi.java | 2 +- .../nflg/product/bomnew/api/user/MBomApi.java | 48 +++++++------------ .../mapper/master/MaterialMainMapper.java | 4 ++ .../service/BomNewEbomParentService.java | 8 +++- .../bomnew/service/MaterialMainService.java | 10 ++++ .../service/aggreg/OptionalExcelService.java | 28 +++++++++-- .../service/domain/MBom/IndexListTree.java | 2 - .../mapper/master/MaterialMainMapper.xml | 9 ++++ 8 files changed, 72 insertions(+), 39 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/EbomApi.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/EbomApi.java index 6fdb9e5d..33c0d721 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/EbomApi.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/EbomApi.java @@ -326,7 +326,7 @@ public class EbomApi extends BaseApi { @PostMapping("temporary") @ApiOperation("暂存") - public ResultVO temporary(@RequestBody BomNewEBomParentEditDTO dto) { + public ResultVO temporary(@RequestBody BomNewEBomParentEditDTO dto) throws ExecutionException, InterruptedException { return ResultVO.success(bomNewEbomParentService.temporary(dto)); } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/MBomApi.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/MBomApi.java index 3ff1317e..cfc508d7 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/MBomApi.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/MBomApi.java @@ -29,7 +29,6 @@ import java.util.Objects; /** * t_bom_new_mbom_parent 表控制层 - * * * @author makejava * @since 2024-01-01 10:53:24 @@ -46,7 +45,7 @@ public class MBomApi extends BaseApi { private BomNewMbomParentService bomNewMbomParentService; @Resource - private BomNewMbomDetailService bomNewMbomDetailService ; + private BomNewMbomDetailService bomNewMbomDetailService; /** @@ -70,64 +69,53 @@ public class MBomApi extends BaseApi { @PostMapping("getChild") @ApiOperation("获取下级") public ResultVO> getChild(@RequestBody BomNewMBomChildDTO dto) { - if(Objects.isNull(dto.getBomRowId())){ - throw new NflgBusinessException(STATE.ParamErr,"bomRowId 不能为空"); + if (Objects.isNull(dto.getBomRowId())) { + throw new NflgBusinessException(STATE.ParamErr, "bomRowId 不能为空"); } - if(Objects.isNull(dto.getRowId())){ - throw new NflgBusinessException(STATE.ParamErr,"rowId 不能为空"); + if (Objects.isNull(dto.getRowId())) { + throw new NflgBusinessException(STATE.ParamErr, "rowId 不能为空"); } return ResultVO.success(bomNewMbomParentService.getChild(dto)); } - - @GetMapping("factoryList") @ApiOperation("工厂列表") public ResultVO factoryList() { - List list= EnumUtils.listEnum( FactoryCodeEnum.class); + List list = EnumUtils.listEnum(FactoryCodeEnum.class); return ResultVO.success(list); } - @PostMapping("superSaterialList") @ApiOperation("设置超级物料列表") - public ResultVO> superSaterialList(@RequestParam(value = "rowId") Long rowId ) { + public ResultVO> superSaterialList(@RequestParam(value = "rowId") Long rowId) { if (Objects.isNull(rowId)) { throw new NflgBusinessException(STATE.ParamErr, "选择行后操作"); } - return ResultVO.success(bomNewMbomDetailService.superSaterialList(rowId)); + return ResultVO.success(bomNewMbomDetailService.superSaterialList(rowId)); } - - - - - - - - @PostMapping("superSaterialStatus") @ApiOperation("设置超级物料") - public ResultVO superSaterialStatus(@ApiParam("超级物料 0-否 1-是") @RequestParam(value = "status") Integer status, @RequestParam(value = "rowId") Long rowId ) { - if(Objects.isNull(rowId)){ - throw new NflgBusinessException(STATE.ParamErr,"选择行后操作"); + public ResultVO superSaterialStatus(@ApiParam("超级物料 0-否 1-是") @RequestParam(value = "status") Integer status, @RequestParam(value = "rowId") Long rowId) { + if (Objects.isNull(rowId)) { + throw new NflgBusinessException(STATE.ParamErr, "选择行后操作"); } - if(Objects.isNull(status)){ - throw new NflgBusinessException(STATE.ParamErr,"status 不能为空"); + if (Objects.isNull(status)) { + throw new NflgBusinessException(STATE.ParamErr, "status 不能为空"); } - if(StrUtil.isEmpty(EnumUtils.getEnumDescription(MBomConstantEnum.MBomSuperMaterialStatusEnum.class,status))){ - throw new NflgBusinessException(STATE.ParamErr,"status 不在范围内"); + if (StrUtil.isEmpty(EnumUtils.getEnumDescription(MBomConstantEnum.MBomSuperMaterialStatusEnum.class, status))) { + throw new NflgBusinessException(STATE.ParamErr, "status 不在范围内"); } - bomNewMbomDetailService.superSaterialStatusTag(rowId,status); + bomNewMbomDetailService.superSaterialStatusTag(rowId, status); return ResultVO.success(true); } - - } + +} diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/MaterialMainMapper.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/MaterialMainMapper.java index cc1348ba..6ad30817 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/MaterialMainMapper.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/MaterialMainMapper.java @@ -39,6 +39,10 @@ public interface MaterialMainMapper extends BaseMapper { Integer getUserMultiplantFacRoleCount(@Param("userRowId") Long userRowId); + List getMaterialLikeByDrawingNo(@Param("drawingNo") String drawingNo); + + + } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java index 25f225c4..b634ab8e 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java @@ -1191,7 +1191,7 @@ public class BomNewEbomParentService extends ServiceImpl computeLevelNumAndRootState()); @@ -1268,7 +1272,7 @@ public class BomNewEbomParentService extends ServiceImpl computeLevelNumAndRootState()); return true; diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/MaterialMainService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/MaterialMainService.java index 8b3fb0da..b9d4b7a5 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/MaterialMainService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/MaterialMainService.java @@ -178,9 +178,19 @@ public class MaterialMainService extends ServiceImpl getMaterialLikeByDrawingNo( String drawingNo ) { + + List materialList = SpringUtil.getBean(MaterialMainMapper.class).getMaterialLikeByDrawingNo(drawingNo); + return materialList; } + /** * @param drawingNos 图号 或 物料号 * @return diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/aggreg/OptionalExcelService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/aggreg/OptionalExcelService.java index 6a15c714..4808df30 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/aggreg/OptionalExcelService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/aggreg/OptionalExcelService.java @@ -21,10 +21,12 @@ import com.nflg.product.bomnew.pojo.dto.OptionalEbomMainDTO; import com.nflg.product.bomnew.pojo.entity.OptionalEbomImportChildEntity; import com.nflg.product.bomnew.pojo.entity.OptionalEbomImportEntity; import com.nflg.product.bomnew.pojo.entity.OptionalEbomMainEntity; +import com.nflg.product.bomnew.pojo.vo.BaseMaterialVO; import com.nflg.product.bomnew.service.MaterialMainService; import com.nflg.product.bomnew.service.OptionalEbomImportChildService; import com.nflg.product.bomnew.service.OptionalEbomImportService; import com.nflg.product.bomnew.service.OptionalEbomMainService; +import lombok.extern.slf4j.Slf4j; import nflg.product.common.constant.STATE; import org.apache.commons.lang.StringUtils; import org.springframework.stereotype.Service; @@ -40,6 +42,7 @@ import java.util.stream.Collectors; * 导入移动破 */ @Service +@Slf4j public class OptionalExcelService { @Resource @@ -294,11 +297,27 @@ public class OptionalExcelService { for (OptionalEbomImportDTO item1 : listParent) { List listChild = item1.getChild(); + + // SpringUtil.getBean(MaterialMainService.class).initMaterialForDrawdingNoImmul(listChild, OptionalEbomImportChildDTO::getDrawingNo, OptionalEbomImportChildDTO::setMaterialNo, OptionalEbomImportChildDTO::setMaterialDesc); - //构建测试数据 无物料号 用图号代替 for (OptionalEbomImportChildDTO childDTO : listChild) { if (!childDTO.getTag() && StringUtils.isEmpty(childDTO.getMaterialNo())) { + //in 批量没匹配到 再模糊匹配一次 + List likeList= SpringUtil.getBean(MaterialMainService.class) + .getMaterialLikeByDrawingNo(StrUtil.format("{} {}",childDTO.getDrawingNo(),childDTO.getMaterialName())); + if(CollectionUtil.isNotEmpty(likeList) ) { + if (likeList.size() == 1) { + BaseMaterialVO materialVO = likeList.get(0); + childDTO.setMaterialNo(materialVO.getMaterialNo()); + childDTO.setMaterialDesc(materialVO.getMaterialDesc()); + continue; + } else if (likeList.size() > 1) { + throw new NflgBusinessException(STATE.BusinessError, StrUtil.format("第{}行,{} 图号匹配到多条物料数据", childDTO.getLineNo(), childDTO.getDrawingNo())); + } + + } + // childDTO.setMaterialNo(childDTO.getDrawingNo()); childDTO.setError(childDTO.getError() | OptionalBomConstant.ExcelErrorTagEnum.MATERIA_NO_UNKOWN.getValue()); item1.setError(true); @@ -308,7 +327,7 @@ public class OptionalExcelService { } }); - System.out.println(JSON.toJSON(optionalEbomInportExcelDTO)); + } @@ -318,9 +337,10 @@ public class OptionalExcelService { throw new NflgBusinessException(STATE.Error, hintMsg); } - // return true; + System.out.println(JSON.toJSONString(optionalEbomInportExcelDTO)); + // return true; //保存db - return batchExcelToRepertory(optionalEbomInportExcelDTO); + return batchExcelToRepertory(optionalEbomInportExcelDTO); } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/MBom/IndexListTree.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/MBom/IndexListTree.java index facb4180..6e5adedc 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/MBom/IndexListTree.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/MBom/IndexListTree.java @@ -23,9 +23,7 @@ public class IndexListTree { Map> groupMap = childs.stream().collect(Collectors.groupingBy(BomNewMbomMiddleVO::getParentRowId)); childs.forEach(child -> { - child.setChildNodes(groupMap.get(child.getRowId())); - sysnParentParam(parent,child); }); diff --git a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/MaterialMainMapper.xml b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/MaterialMainMapper.xml index 69c18a47..233c7cf3 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/MaterialMainMapper.xml +++ b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/MaterialMainMapper.xml @@ -108,6 +108,15 @@ + + +