From 478149e5abdd565d19dea80d4b8ac378c44d7782 Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Wed, 26 Jul 2023 18:07:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8F=90=E8=B4=A7=E7=BC=96?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/DistributionStockListEntity.java | 2 +- .../vo/DistributionStockListVO.java | 5 + .../vo/DistrilbutionBillLadingDetailsVO.java | 7 +- .../DistributionParcelListController.java | 9 +- .../DistributionStockArticleController.java | 8 + .../dto/DistrilbutionBillLadingDTO.java | 8 +- .../DistrilbutionBillLadingServiceImpl.java | 147 +++++++++++------- 7 files changed, 129 insertions(+), 57 deletions(-) diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java index 48fcc9918..9b8f90dda 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java @@ -283,7 +283,7 @@ public class DistributionStockListEntity extends TenantEntity { * 托盘名称 */ @ApiModelProperty(value = "托盘名称") - private Long trayName; + private String trayName; diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java index 8413987ca..b4afaf9af 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockListVO.java @@ -37,6 +37,11 @@ public class DistributionStockListVO extends DistributionStockListEntity { */ @ApiModelProperty(value = "备货数") private String deliveryNumber; + /** + * 添加数量 + */ + private Integer inventoryQuantity; + /** * 物料名称 */ diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingDetailsVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingDetailsVO.java index 3dcab685a..2052acc39 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingDetailsVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingDetailsVO.java @@ -17,6 +17,7 @@ package com.logpm.distribution.vo; import com.logpm.distribution.entity.DistributionDeliveryChargeEntity; +import com.logpm.distribution.entity.DistributionParcelListEntity; import com.logpm.distribution.entity.DistributionPrintEntity; import com.logpm.distribution.entity.DistrilbutionBillLadingEntity; import lombok.Data; @@ -37,7 +38,7 @@ public class DistrilbutionBillLadingDetailsVO extends DistrilbutionBillLadingEnt /** * 订单数据 */ - private List stockArticleVOS; + private List stockArticleVOS; /** * 库存品数据 */ @@ -46,6 +47,10 @@ public class DistrilbutionBillLadingDetailsVO extends DistrilbutionBillLadingEnt * 图片信息 */ private List printVOS; + /** + * 费用信息 + */ + private List chargeList; } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java index fda86fc7f..35e981db2 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionParcelListController.java @@ -75,7 +75,14 @@ public class DistributionParcelListController extends BladeController { @ApiOperationSupport(order = 2) @ApiOperation(value = "分页", notes = "传入distributionParcelList") public R> list(@ApiIgnore @RequestParam Map distributionParcelList, Query query) { - IPage pages = distributionParcelListService.page(Condition.getPage(query), Condition.getQueryWrapper(distributionParcelList, DistributionParcelListEntity.class)); + Object o = distributionParcelList.get("stockArticleId"); + distributionParcelList.remove("stockArticleId"); + QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionParcelList, DistributionParcelListEntity.class); + if(Func.isNotEmpty(o)){ + queryWrapper.in("stock_article_id",String.valueOf(o).split(",")); + } + + IPage pages = distributionParcelListService.page(Condition.getPage(query),queryWrapper ); return R.data(pages); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java index b8e2438cb..dcb2fe43a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java @@ -21,6 +21,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.logpm.distribution.dto.DistributionStockArticleDTO; import com.logpm.distribution.entity.DistributionStockArticleEntity; +import com.logpm.distribution.entity.DistrilbutionBillLadingEntity; import com.logpm.distribution.excel.DistributionStockArticleExcel; import com.logpm.distribution.service.IDistributionStockArticleService; import com.logpm.distribution.vo.DistributionStockArticleVO; @@ -37,6 +38,7 @@ import org.springblade.core.tool.api.R; import org.springblade.core.tool.constant.BladeConstant; import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.Func; +import org.springblade.core.tool.utils.ObjectUtil; import org.springblade.system.entity.DictBiz; import org.springblade.system.feign.IDictBizClient; import org.springframework.web.bind.annotation.*; @@ -85,10 +87,16 @@ public class DistributionStockArticleController extends BladeController { public R> list(@ApiIgnore @RequestParam Map distributionStockArticle, Query query) { Object o = distributionStockArticle.get("orderSelfNumbering"); distributionStockArticle.remove("orderSelfNumbering"); + Object d = distributionStockArticle.get("id"); + distributionStockArticle.remove("id"); QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionStockArticle, DistributionStockArticleEntity.class); if(Func.isNotEmpty(o)){ queryWrapper.in("order_self_numbering",String.valueOf(o).split(",")); } + + if(ObjectUtil.isNotEmpty(d)){ + queryWrapper.in("id",String.valueOf(d).split(",")); + } IPage pages = distributionStockArticleService.page(Condition.getPage(query), queryWrapper); return R.data(DistributionStockArticleWrapper.build().pageVO(pages)); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistrilbutionBillLadingDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistrilbutionBillLadingDTO.java index 89a17b9e0..23c104457 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistrilbutionBillLadingDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistrilbutionBillLadingDTO.java @@ -76,6 +76,10 @@ public class DistrilbutionBillLadingDTO extends DistrilbutionBillLadingEntity { * 品牌 */ private String brand; + /** + * 上传新图片标识 + */ + private Boolean mark; /** * 服务类型 */ @@ -113,10 +117,10 @@ public class DistrilbutionBillLadingDTO extends DistrilbutionBillLadingEntity { */ private List stockDTOList; - private List printList; + private List printList; @Data - public class print{ + public static class Print{ private String state; private String name; private String url; diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java index 5aa73ab2b..bd4ba1580 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java @@ -25,6 +25,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.logpm.distribution.dto.DistributionStockArticleDTO; +import com.logpm.distribution.dto.DistributionStockListDTO; import com.logpm.distribution.dto.DistrilbutionBillLadingDTO; import com.logpm.distribution.dto.app.BillLadingAppDTO; import com.logpm.distribution.entity.*; @@ -48,6 +49,7 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; /** * 提货单 服务实现类 @@ -96,26 +98,45 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl printEntityList = distributionPrintService.list(Wrappers.query().lambda().eq(DistributionPrintEntity::getBillLadingId, distrilbutionBillLading.getId())); + if(printEntityList.size() > 0){ + if(distrilbutionBillLading.getMark()){ + //要删除 + List collect = printEntityList.stream().map(DistributionPrintEntity::getId).collect(Collectors.toList()); + distributionPrintService.deleteLogic(collect); + //操作图片 + if(distrilbutionBillLading.getPrintList().size() > 0){ + addPrint(distrilbutionBillLading); + } + } + } //查询这个费用 List list = distributionDeliveryChargeService.list(Wrappers.query().lambda() .eq(DistributionDeliveryChargeEntity::getBillLading, distrilbutionBillLading.getId()) ); - list.forEach(i -> { - String s = distrilbutionBillLading.getFei().get(i.getCost()); - if (StringUtils.isNotBlank(s)) { - //修改 - DistributionDeliveryChargeEntity distributionDeliveryCharge = new DistributionDeliveryChargeEntity(); - distributionDeliveryCharge.setId(i.getId()); - distributionDeliveryCharge.setMoney(new BigDecimal(s)); - distributionDeliveryChargeService.updateById(distributionDeliveryCharge); - } else { - //删除 - distributionDeliveryChargeService.removeById(i.getId()); - } - }); + if(list.size() > 0){ + list.forEach(i -> { + String s = distrilbutionBillLading.getFei().get(i.getCost()); + if (StringUtils.isNotBlank(s)) { + //修改 + DistributionDeliveryChargeEntity distributionDeliveryCharge = new DistributionDeliveryChargeEntity(); + distributionDeliveryCharge.setId(i.getId()); + distributionDeliveryCharge.setMoney(new BigDecimal(s)); + distributionDeliveryChargeService.updateById(distributionDeliveryCharge); + distrilbutionBillLading.getFei().remove(i.getCost()); + } else { + //删除 + distributionDeliveryChargeService.removeById(i.getId()); + } + }); + } + + //修改库存品 if (distrilbutionBillLading.getStockDTOList().size() > 0) { //全部库存品数据 @@ -130,23 +151,28 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl i.getStockListId().equals(a.getId())); if (b) { //有 - distrilbutionBillLading.getStockDTOList().forEach(q -> { - if (i.getStockListId().equals(q.getId())) { + Iterator iterator = distrilbutionBillLading.getStockDTOList().iterator(); + while (iterator.hasNext()){ + DistributionStockListDTO next = iterator.next(); + if (i.getStockListId().equals(next.getId())) { DistributionDeliveryDetailsEntity deliveryDetails = new DistributionDeliveryDetailsEntity(); - deliveryDetails.setQuantity(q.getInventoryQuantity()); - deliveryDetails.setId(q.getId()); + deliveryDetails.setQuantity(next.getInventoryQuantity()); + deliveryDetails.setId(i.getId()); distributionDeliveryDetailsService.updateById(deliveryDetails); - distrilbutionBillLading.getStockDTOList().remove(q); - return; + iterator.remove(); } - }); + + } } else { //没有 删除 ids.add(i.getId()); } }); //删除没有的库存品 - distributionDeliveryDetailsService.deleteLogic(ids); + if(ids.size() > 0){ + distributionDeliveryDetailsService.deleteLogic(ids); + } + } } } else { @@ -154,10 +180,28 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl 0){ - addPrint(distrilbutionBillLading); + + //修改订单状态 + String[] split = distrilbutionBillLading.getStockArticleId().split(","); + for (String s : split) { + DistributionStockArticleEntity distributionStockArticle = new DistributionStockArticleEntity(); + distributionStockArticle.setId(Long.parseLong(s)); + distributionStockArticle.setState(2); + distributionStockArticleService.updateById(distributionStockArticle); + //添加订单和提货单关联 + DistrilbutionBillStockEntity distrilbutionBillStock = new DistrilbutionBillStockVO(); + distrilbutionBillStock.setBillLadingId(distrilbutionBillLading.getId()); + distrilbutionBillStock.setStockArticleId(Long.parseLong(s)); + distrilbutionBillStockService.save(distrilbutionBillStock); + } + + + + //操作图片 + if(distrilbutionBillLading.getPrintList().size() > 0){ + addPrint(distrilbutionBillLading); + } + } //添加库存品信息 @@ -173,6 +217,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl 0){ List listEntity = new ArrayList<>(); @@ -184,21 +229,11 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl list = distributionPrintService.list(Wrappers.query().lambda() - .eq(DistributionPrintEntity::getBillLadingId, distrilbutionBillLadingDTO.getId()) - ); - //删除 - List list1 = new ArrayList<>(); - list.forEach( i -> list1.add(i.getId())); - distributionPrintService.deleteLogic(list1); +// List list = distributionPrintService.list(Wrappers.query().lambda() +// .eq(DistributionPrintEntity::getBillLadingId, distrilbutionBillLadingDTO.getId()) +// ); +// //删除 +// if(list.size() > 0){ +// if(distrilbutionBillLadingDTO.getMark()){ +// List collect = list.stream().map(DistributionPrintEntity::getId).collect(Collectors.toList()); +// distributionPrintService.deleteLogic(collect); +// } +// } + //新增 List list2 = new ArrayList<>(); distrilbutionBillLadingDTO.getPrintList().forEach(print -> { @@ -523,18 +562,21 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl list1 = new ArrayList<>(); + List list1 = new ArrayList<>(); List stockListEntities = new ArrayList<>(); + //查询提货费用 + List list4 = distributionDeliveryChargeService.list(Wrappers.query().lambda() + .eq(DistributionDeliveryChargeEntity::getBillLading, distrilbutionBillLadingEntity.getId()) + ); + detailOne.setChargeList(list4.size() > 0 ? list4 : null); //查询提货信息 List list = distrilbutionBillStockService.list(Wrappers.query().lambda() .eq(DistrilbutionBillStockEntity::getBillLadingId, distrilbutionBillLadingEntity.getId()) ); list.forEach( i ->{ - DistributionStockArticleEntity one = distributionStockArticleService.getOne(Wrappers.query().lambda().eq(DistributionStockArticleEntity::getId, i.getStockArticleId())); - if(ObjectUtils.isNotNull(one)){ - DistributionStockArticleVO articleVO = new DistributionStockArticleVO(); - BeanUtils.copyProperties(one,articleVO); - list1.add(articleVO); + List list2 = distributionParcelListService.list(Wrappers.query().lambda().eq(DistributionParcelListEntity::getStockArticleId, i.getStockArticleId())); + if(list2.size() > 0){ + list1.addAll(list2); } }); @@ -556,6 +598,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl