From 53f0d1276864b21c7710f1b58d9d7a8023adab03 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Mon, 17 Jul 2023 14:19:09 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=A2=A6=E5=A4=A9=E8=8E=B7=E5=8F=96token?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9=202.=E5=9C=A8=E5=BA=93?= =?UTF-8?q?=E8=BF=90=E5=8D=95=E7=94=9F=E6=88=90=E6=95=B0=E6=8D=AE=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/IDistributionParcelListClient.java | 4 ++++ .../feign/DistributionParcelListClient.java | 6 ++++++ .../feign/DistributionStockArticleClient.java | 20 ++++++++++++++++--- .../mapper/DistributionParcelListMapper.java | 1 + .../mapper/DistributionParcelListMapper.xml | 9 +++++++++ .../IDistributionParcelListService.java | 2 ++ .../DistributionParcelListServiceImpl.java | 19 ++++++++++++++---- .../impl/MtFactoryDataServiceImpl.java | 4 ++-- .../WarehouseWaybillController.java | 10 +++++----- .../impl/WarehouseWaybillServiceImpl.java | 17 +++++++++++++++- 10 files changed, 77 insertions(+), 15 deletions(-) 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 b1c9cc63d..86e487926 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 @@ -59,4 +59,8 @@ public interface IDistributionParcelListClient { @PostMapping(API_PREFIX+"/add") boolean add(@RequestBody DistributionParcelListEntity entity); + + @PostMapping(API_PREFIX+"/submitNumByOrderIdAndName") + boolean submitNumByOrderIdAndName(Long articleId, String productName, Integer num); + } 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 9d876234a..1a2e79680 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 @@ -74,4 +74,10 @@ public class DistributionParcelListClient implements IDistributionParcelListClie return distributionParcelListService.save(entity); } + @Override + @PostMapping(API_PREFIX+"/submitNumByOrderIdAndName") + public boolean submitNumByOrderIdAndName(Long articleId, String productName, Integer num) { + return distributionParcelListService.submitNumByOrderIdAndName(articleId,productName,num); + } + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java index 45ae90b3c..1a470420e 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java @@ -18,7 +18,9 @@ package com.logpm.distribution.feign; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.distribution.entity.DistributionParcelListEntity; import com.logpm.distribution.entity.DistributionStockArticleEntity; +import com.logpm.distribution.service.IDistributionParcelListService; import com.logpm.distribution.service.IDistributionStockArticleService; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.BladePage; @@ -29,6 +31,8 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; +import java.util.List; + /** * 配送在库订单 Feign实现类 * @@ -41,6 +45,7 @@ import springfox.documentation.annotations.ApiIgnore; public class DistributionStockArticleClient implements IDistributionStockArticleClient { private final IDistributionStockArticleService distributionStockArticleService; + private final IDistributionParcelListService distributionParcelListService; @Override @GetMapping(TOP) @@ -93,9 +98,18 @@ public class DistributionStockArticleClient implements IDistributionStockArticle @Override public void deleteById(Long orderId) { - DistributionStockArticleEntity entity = distributionStockArticleService.getById(orderId); - entity.setIsDeleted(1); - distributionStockArticleService.saveOrUpdate(entity); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("stock_article_id",orderId); + List list = distributionParcelListService.list(queryWrapper); + Integer num = new Integer("0"); + for (DistributionParcelListEntity distributionParcelListEntity:list){ + num = num + distributionParcelListEntity.getQuantity(); + } + if(num.compareTo(new Integer("0")) == 0){ + DistributionStockArticleEntity entity = distributionStockArticleService.getById(orderId); + entity.setIsDeleted(1); + distributionStockArticleService.saveOrUpdate(entity); + } } } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java index 65a99a805..d2f188860 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java @@ -51,4 +51,5 @@ public interface DistributionParcelListMapper extends BaseMapper exportDistributionParcelList(@Param("ew") Wrapper queryWrapper); + int submitNumByOrderIdAndName(@Param("articleId") Long articleId,@Param("productName") String productName, @Param("num") Integer num); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml index 343cb2bf6..ce093e0c3 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml @@ -42,4 +42,13 @@ SELECT * FROM logpm_distribution_parcel_list ${ew.customSqlSegment} + + update logpm_distribution_parcel_list + set quantity = quantity - #{num} + where stock_article_id = #{articleId} + and material_name = #{productName} + and quantity - #{num} >= 0 + + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java index 4010a5080..08bd765c7 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java @@ -49,4 +49,6 @@ public interface IDistributionParcelListService extends BaseService exportDistributionParcelList(Wrapper queryWrapper); + boolean submitNumByOrderIdAndName(Long articleId, String productName, Integer num); + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java index 0736a8905..12b7dcdb0 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java @@ -16,15 +16,16 @@ */ package com.logpm.distribution.service.impl; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.distribution.entity.DistributionParcelListEntity; -import com.logpm.distribution.vo.DistributionParcelListVO; import com.logpm.distribution.excel.DistributionParcelListExcel; import com.logpm.distribution.mapper.DistributionParcelListMapper; import com.logpm.distribution.service.IDistributionParcelListService; -import org.springframework.stereotype.Service; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; +import com.logpm.distribution.vo.DistributionParcelListVO; import org.springblade.core.mp.base.BaseServiceImpl; +import org.springframework.stereotype.Service; + import java.util.List; /** @@ -51,4 +52,14 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl products = splitOrderDTO.getProducts(); for (ProductDTO productDTO:products){ total = total + productDTO.getNum(); } } - if(!totalCount.equals(total)){ - log.warn("################splitOrder: 拆单数量不等于总数量 waybillNo={}",waybillNo); - return R.fail(405,"拆单数量不等于总数量"); - } +// if(!totalCount.equals(total)){ +// log.warn("################splitOrder: 拆单数量不等于总数量 waybillNo={}",waybillNo); +// return R.fail(405,"拆单数量不等于总数量"); +// } try{ //拆单操作 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 209eb1972..424b7dbb6 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 @@ -179,6 +179,9 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl splitOrderDTOList, DistributionStockArticleEntity distributionStockArticleEntity) { log.info("###########splitOrder: 开始拆单 "); + Long articleId = distributionStockArticleEntity.getId(); + List submitList = new ArrayList<>(); for (int i = 0; i < splitOrderDTOList.size();i++){ SplitOrderDTO splitOrderDTO = splitOrderDTOList.get(i); DistributionStockArticleEntity entity = new DistributionStockArticleEntity(); @@ -354,6 +359,7 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl