diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelNumberClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelNumberClient.java index d68843fb1..b88cbd1e9 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelNumberClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelNumberClient.java @@ -21,8 +21,12 @@ import org.springblade.core.mp.support.BladePage; import com.logpm.distribution.entity.DistributionParcelNumberEntity; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; +import java.util.List; + /** * 订单零担包件数量记录 Feign接口类 * @@ -47,4 +51,7 @@ public interface IDistributionParcelNumberClient { @GetMapping(TOP) BladePage top(@RequestParam("current") Integer current, @RequestParam("size") Integer size); + @PostMapping(API_PREFIX + "/addBatch") + void addBatch(@RequestBody List parcelNumberList); + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelNumberClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelNumberClient.java index 2651687c8..495f02454 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelNumberClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelNumberClient.java @@ -27,6 +27,8 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; +import java.util.List; + /** * 订单零担包件数量记录 Feign实现类 * @@ -50,4 +52,9 @@ public class DistributionParcelNumberClient implements IDistributionParcelNumber return BladePage.of(page); } + @Override + public void addBatch(List parcelNumberList) { + distributionParcelNumberService.saveBatch(parcelNumberList); + } + } 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 9db2ffea4..86bba94a4 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 @@ -11,8 +11,10 @@ import com.logpm.basicdata.feign.IBasicdataClientClient; import com.logpm.basicdata.feign.IBasicdataStoreBusinessClient; import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.distribution.entity.DistributionParcelListEntity; +import com.logpm.distribution.entity.DistributionParcelNumberEntity; import com.logpm.distribution.entity.DistributionStockArticleEntity; import com.logpm.distribution.feign.IDistributionParcelListClient; +import com.logpm.distribution.feign.IDistributionParcelNumberClient; import com.logpm.distribution.feign.IDistributionStockArticleClient; import com.logpm.oldproject.entity.WayBillEntity; import com.logpm.oldproject.entity.WaybillDesEntity; @@ -61,6 +63,7 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl ls = new ArrayList<>(); for (WarehouseWayBillDetail warehouseWayBillDetail : details) { DistributionParcelListEntity entity = new DistributionParcelListEntity(); - entity.setMaterialName(warehouseWayBillDetail.getProductName()); + entity.setFirsts(warehouseWayBillDetail.getProductName()); + entity.setTenantId("627683"); + entity.setCreateUser(distributionStockArticleEntity.getCreateUser()); + entity.setUpdateUser(distributionStockArticleEntity.getCreateUser()); + entity.setCreateDept(distributionStockArticleEntity.getCreateDept()); + entity.setWarehouseId(distributionStockArticleEntity.getWarehouseId()); + entity.setWarehouse(distributionStockArticleEntity.getWarehouse()); entity.setQuantity(warehouseWayBillDetail.getNum()); - entity.setConditions(3); + entity.setConditions(1); entity.setStockArticleId(id); + entity.setOrderCode(distributionStockArticleEntity.getOrderCode()); + entity.setOrderPackageStatus("20"); + entity.setOrderPackageFreezeStatus("10"); + entity.setOrderPackageGroundingStatus("10"); + entity.setOrderPackageStockupStatus("10"); + entity.setOrderPackageReservationStatus("10"); + entity.setOrderPackageLoadingStatus("10"); + entity.setWaybillNumber(distributionStockArticleEntity.getWaybillNumber()); + entity.setWarehouseEntryTimeEnd(date); + entity.setSendWarehouseId(warehouseWaybill.getDepartureWarehouseId()); + entity.setSendWarehouseName(warehouseWaybill.getDepartureWarehouseName()); + entity.setAcceptWarehouseId(warehouseWaybill.getDestinationWarehouseId()); + entity.setAcceptWarehouseName(warehouseWaybill.getDestinationWarehouseName()); ls.add(entity); + } boolean b = distributionParcelListClient.addBatch(ls); if (!b) { @@ -252,12 +287,31 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl parcelNumberList = new ArrayList<>(); + for (DistributionParcelListEntity entity:ls){ + DistributionParcelNumberEntity parcelNumberEntity = new DistributionParcelNumberEntity(); + parcelNumberEntity.setStockArticleId(id); + parcelNumberEntity.setParcelListId(entity.getId()); + if(totalCount.equals(stockCount)){ + parcelNumberEntity.setHandQuantity(entity.getQuantity()); + }else{ + parcelNumberEntity.setHandQuantity(0); + } + parcelNumberEntity.setQuantity(entity.getQuantity()); + parcelNumberEntity.setDeliveryQuantity(0); + parcelNumberEntity.setSigninQuantity(0); + parcelNumberEntity.setOutboundQuantity(0); + parcelNumberList.add(parcelNumberEntity); + } + //存入零担订单包件数量 + distributionParcelNumberClient.addBatch(parcelNumberList); } else { id = distributionStockArticleEntity.getId(); distributionStockArticleEntity.setTotalNumber(totalCount); distributionStockArticleEntity.setHandQuantity(stockCount); + distributionStockArticleEntity.setWarehouseEntryTimeEnd(date); log.info(">>>> 更新订单"); checkStatus(distributionStockArticleEntity); distributionStockArticleClient.saveOrUpdate(distributionStockArticleEntity); @@ -338,8 +392,11 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl submitList = new ArrayList<>(); List articleList = distributionStockArticleClient.likeOrderSelfNumbering(orderSelfNum); + List parcelListEntityList = distributionParcelListClient.findEntityListByOrderCode(orderSelfNum, warehouseId); int size = articleList.size(); for (int i = 0; i < splitOrderDTOList.size(); i++) { SplitOrderDTO splitOrderDTO = splitOrderDTOList.get(i); @@ -366,7 +423,9 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl parcelNumberList = new ArrayList<>(); + for (DistributionParcelListEntity distributionParcelListEntity : list) { + DistributionParcelNumberEntity parcelNumberEntity = new DistributionParcelNumberEntity(); + parcelNumberEntity.setStockArticleId(distributionParcelListEntity.getStockArticleId()); + parcelNumberEntity.setParcelListId(distributionParcelListEntity.getId()); + parcelNumberEntity.setHandQuantity(distributionParcelListEntity.getQuantity()); + parcelNumberEntity.setQuantity(distributionParcelListEntity.getQuantity()); + parcelNumberEntity.setDeliveryQuantity(0); + parcelNumberEntity.setSigninQuantity(0); + parcelNumberEntity.setOutboundQuantity(0); + parcelNumberList.add(parcelNumberEntity); + } + //存入零担订单包件数量 + distributionParcelNumberClient.addBatch(parcelNumberList); + //减少主订单上在库数量 if (handQuantity - allNum < 0) { log.warn("###########splitOrder: 拆单数量大于在库数量");