diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java index f6fae33d5..4869bb67e 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java @@ -74,4 +74,6 @@ public interface IDistributionParcelListClient { @GetMapping(API_PREFIX+"/getListByOrderCodeAndgroundingStatus") List getListByOrderCodeAndgroundingStatus(@RequestParam String orderCode, @RequestParam String groundingStatus); + @PostMapping(API_PREFIX+"/update") + void update(@RequestBody DistributionParcelListEntity distributionParcelListEntity); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java index c56c191d4..385a46e80 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java @@ -110,4 +110,9 @@ public class DistributionParcelListClient implements IDistributionParcelListClie return distributionParcelListService.list(queryWrapper); } + @Override + @PostMapping(API_PREFIX+"/update") + public void update(DistributionParcelListEntity distributionParcelListEntity) { + distributionParcelListService.updateById(distributionParcelListEntity); + } } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java index 83150fe49..4b38338d5 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java @@ -93,8 +93,8 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl waybillQueryWrapper = new QueryWrapper<>(); @@ -128,7 +128,7 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl details = warehouseWayBillDetailService.findByWaybillId(waybillId); + StringBuilder sb = new StringBuilder(); + for (WarehouseWayBillDetail warehouseWayBillDetail : details) { + if (!sb.toString().isEmpty()) { + sb.append(","); + } + sb.append(warehouseWayBillDetail.getProductName()); + } + + distributionStockArticleEntity.setDescriptionGoods(sb.toString()); + id = distributionStockArticleClient.addData(distributionStockArticleEntity); if (id == 0) { log.warn("#################createStockArticle: 保存订单信息失败 orderSelfNum={}", waybillNo); throw new CustomerException(405, "保存订单信息失败"); } } else { + id = distributionStockArticleEntity.getId(); - } - //存入包件信息 - List details = warehouseWayBillDetailService.findByWaybillId(waybillId); - List ls = new ArrayList<>(); - for (WarehouseWayBillDetail warehouseWayBillDetail : details) { - DistributionParcelListEntity entity = new DistributionParcelListEntity(); - entity.setMaterialName(warehouseWayBillDetail.getProductName()); - entity.setQuantity(warehouseWayBillDetail.getNum()); - entity.setConditions(3); - entity.setStockArticleId(id); - ls.add(entity); - } - boolean b = distributionParcelListClient.addBatch(ls); - if (!b) { - log.warn("#################createStockArticle: 保存包件信息失败 orderSelfNum={}", waybillNo); - throw new CustomerException(405, "保存包件信息失败"); + distributionStockArticleEntity.setTotalNumber(totalCount); + distributionStockArticleEntity.setHandQuantity(stockCount); + log.info(">>>> 更新订单"); + checkStatus(distributionStockArticleEntity); + distributionStockArticleClient.saveOrUpdate(distributionStockArticleEntity); + } - // 判断运单的货物是否齐套 - // todo 目前这里无法判断零担货物是否齐套 默认已到期 +// 存入包件信息 +// List details = warehouseWayBillDetailService.findByWaybillId(waybillId); +// +// +// // 查询运单的附件 +// List tesmn = distributionParcelListClient.findEntityListByOrderCode(distributionStockArticleEntity.getOrderCode()); +// +// if(ObjectUtils.isEmpty(tesmn)||tesmn.isEmpty()){ +// // 新增 +// DistributionParcelListEntity entity = new DistributionParcelListEntity(); +// +// entity.setQuantity(stockCount); +// entity.setConditions(3); +// entity.setStockArticleId(id); +// entity.setWarehouse(distributionStockArticleEntity.getWarehouse()); +// entity.setWarehouseId(distributionStockArticleEntity.getWarehouseId()); +// entity.setOrderCode(distributionStockArticleEntity.getOrderCode()); +// +// +// +// +// for (WarehouseWayBillDetail warehouseWayBillDetail : details) { +// entity.setMaterialName((StringUtil.isBlank(entity.getMaterialName())?"":entity.getMaterialName())+warehouseWayBillDetail.getProductName()); +// } +// distributionParcelListClient.add(entity); +// }else{ +// // 更新 +// DistributionParcelListEntity distributionParcelListEntity = tesmn.get(0); +// distributionParcelListEntity.setQuantity(stockCount); +// distributionParcelListClient.update(distributionParcelListEntity); +// } +// List ls = new ArrayList<>(); +// for (WarehouseWayBillDetail warehouseWayBillDetail : details) { +// DistributionParcelListEntity entity = new DistributionParcelListEntity(); +// entity.setMaterialName(warehouseWayBillDetail.getProductName()); +// entity.setQuantity(warehouseWayBillDetail.getNum()); +// entity.setConditions(3); +// entity.setStockArticleId(id); +// ls.add(entity); +// } +// boolean b = distributionParcelListClient.addBatch(ls); +// if (!b) { +// log.warn("#################createStockArticle: 保存包件信息失败 orderSelfNum={}", waybillNo); +// throw new CustomerException(405, "保存包件信息失败"); +// } + // 判断运单的货物是否齐套 + } + private void checkStatus(DistributionStockArticleEntity distributionStockArticleEntity) { + // 判断数联 + if (distributionStockArticleEntity.getTotalNumber().equals(distributionStockArticleEntity.getHandQuantity())) { + distributionStockArticleEntity.setOrderStatus(OrderStatusConstant.ruku.getValue()); + distributionStockArticleEntity.setOrderReceiveStatus(OrderReceiveStatusConstant.yishouhuo.getValue()); + } } - @Override public WarehouseWaybillEntity findByWaybillNo(String waybillNo) { QueryWrapper queryWrapper = new QueryWrapper<>(); @@ -464,6 +515,6 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl selectPage(IPage page, QueryWrapper queryWrapper) { - return this.page(page,queryWrapper); + return this.page(page, queryWrapper); } }