From 44f3c27907a7bde4e2ea75bb48c2f2cdfefd5574 Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Sat, 21 Oct 2023 13:42:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8C=85=E4=BB=B6=E8=BD=AC?= =?UTF-8?q?=E5=BA=93=E5=AD=98=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/DistributionParcelListMapper.xml | 1 + .../mapper/DistributionStockArticleMapper.xml | 16 +-- .../DistributionParcelListServiceImpl.java | 124 +++++++++++------- 3 files changed, 85 insertions(+), 56 deletions(-) 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 18fa1058a..949dd35d4 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 @@ -436,6 +436,7 @@ and ldpl.stock_article_id = #{param.stockArticleIdsLike} and ldpl.stock_article_id = #{param.stockArticleId} + and ldpl.conditions = #{param.conditions} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml index 5c556cc85..e9b8a828a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockArticleMapper.xml @@ -416,18 +416,18 @@ and ldsa.available_quantity like concat('%',#{param.availableQuantity},'%') - and ldsa.grounding_status = #{param.groundingStatus} - and ldsa.genre = #{param.genre} - and ldsa.freeze_status = #{param.freezeStatus} - and ldsa.order_status = #{param.orderStatus} - and ldsa.reservation_status = #{param.reservationStatus} - and ldsa.stockup_status = #{param.stockupStatus} - and ldsa.order_receive_status = + and ldsa.grounding_status = #{param.groundingStatus} + and ldsa.genre = #{param.genre} + and ldsa.freeze_status = #{param.freezeStatus} + and ldsa.order_status = #{param.orderStatus} + and ldsa.reservation_status = #{param.reservationStatus} + and ldsa.stockup_status = #{param.stockupStatus} + and ldsa.order_receive_status = #{param.orderReceiveStatus} and ldsa.complete_set like concat('%',#{param.completeSet},'%') - and ldsa.type_service like concat('%',#{param.typeService},'%') + and ldsa.type_service like concat('%',#{param.typeService},'%') and ldsa.customer_name like concat('%',#{param.customerName},'%') 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 547e8f172..6e91587ca 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 @@ -395,6 +395,10 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl queryWrapper = new QueryWrapper<>(); String s = String.valueOf(o); if(s.contains(",")){ @@ -403,55 +407,79 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl list1 = baseMapper.selectList(queryWrapper); -// if (!list1.isEmpty()) { -// list1.stream().collect(Collectors.groupingBy(DistributionParcelListEntity::getMaterialId)) -// .forEach((k ,v) ->{ -// int sum = v.stream().mapToInt(DistributionParcelListEntity::getQuantity).sum(); -// v.stream().forEach( i -> { -// //查询有没有打托数据 -// -// //查询包件有没有物料 -// List list = distributionParcelDetailsService.list(Wrappers.query().lambda() -// .eq(DistributionParcelDetailsEntity::getParcelListId, i.getId()) -// ); -// if (!list.isEmpty()) { -// //有 -// list.stream().collect(Collectors.groupingBy(DistributionParcelDetailsEntity::getEncoded)) -// .forEach((kk,vv) ->{ -// DistributionParcelListEntity parcelListEntity = new DistributionParcelListEntity(); -// BeanUtil.copyProperties(vv.get(0),parcelListEntity); -// parcelListEntity.setQuantity(sum); -// parcelListEntity.setMaterialName(vv.get(0).getName()); -// parcelListEntity.setMaterialCode(vv.get(0).getEncoded()); -// parcelListEntity.setMaterialUnit(vv.get(0).getUnit()); -// // 添加库存品信息 -// addStockList(parcelListEntity, 1); -// }); -// } -// DistributionParcelListEntity parcelList = new DistributionParcelListEntity(); -// parcelList.setId(i.getId()); -// parcelList.setConditions(2); -// baseMapper.updateById(parcelList); -// -// }); -// DistributionParcelListEntity parcelListEntity = new DistributionParcelListEntity(); -// BeanUtil.copyProperties(v.get(0),parcelListEntity); -// parcelListEntity.setQuantity(sum); -// // 添加库存品信息 -// addStockList(parcelListEntity, 1); -// }); -// -//// for (int i = 0; i < split.length; i++) { -//// //修改订单状态 -//// DistributionStockArticleEntity stockArticleEntity = new DistributionStockArticleEntity(); -//// stockArticleEntity.setId(Long.parseLong(split[i])); -//// stockArticleEntity.setGenre(2); -//// baseMapper.updateById(stockArticleEntity); -//// } -// return R.success("操作成功!"); -// } - return null; + if (!list1.isEmpty()) { + Set listString = new HashSet<>(); + list1.stream().collect(Collectors.groupingBy(DistributionParcelListEntity::getMaterialId)) + .forEach((k ,v) ->{ + int sum = v.stream().mapToInt(DistributionParcelListEntity::getQuantity).sum(); + v.stream().forEach( i -> { + //查询有没有打托数据 + + //查询包件有没有物料 + List list = distributionParcelDetailsService.list(Wrappers.query().lambda() + .eq(DistributionParcelDetailsEntity::getParcelListId, i.getId()) + ); + if (!list.isEmpty()) { + //有 + list.stream().collect(Collectors.groupingBy(DistributionParcelDetailsEntity::getEncoded)) + .forEach((kk,vv) ->{ + DistributionParcelListEntity parcelListEntity = new DistributionParcelListEntity(); + BeanUtil.copyProperties(vv.get(0),parcelListEntity); + parcelListEntity.setQuantity(sum); + parcelListEntity.setMaterialName(vv.get(0).getName()); + parcelListEntity.setMaterialCode(vv.get(0).getEncoded()); + parcelListEntity.setMaterialUnit(vv.get(0).getUnit()); + // 添加库存品信息 + addStockList(parcelListEntity, 1); + }); + } + //修改状态 + DistributionParcelListEntity parcelList = new DistributionParcelListEntity(); + parcelList.setId(i.getId()); + parcelList.setConditions(2); + baseMapper.updateById(parcelList); + listString.add(i.getStockArticleId()); + + }); + DistributionParcelListEntity parcelListEntity = new DistributionParcelListEntity(); + BeanUtil.copyProperties(v.get(0),parcelListEntity); + parcelListEntity.setQuantity(sum); + // 添加库存品信息 + addStockList(parcelListEntity, 1); + }); + listString.forEach( oo -> { + DistributionStockArticleEntity stockArticleEntity1 = distributionStockArticleMapper.selectById(oo); + if(ObjectUtils.isNull(stockArticleEntity1)){ + throw new ServiceException("订单不存在!"); + } + if(stockArticleEntity1.getTotalNumber().equals(list1.size())){ + //修改订单状态 + DistributionStockArticleEntity stockArticleEntity = new DistributionStockArticleEntity(); + //修改 + stockArticleEntity.setId(oo); + stockArticleEntity.setGenre(2); + distributionStockArticleMapper.updateById(stockArticleEntity); + } + //查询库存品的订单 + List distributionParcelListEntities = baseMapper.selectList(Wrappers.query().lambda() + .eq(DistributionParcelListEntity::getStockArticleId, oo) + .eq(DistributionParcelListEntity::getWarehouseId, myCurrentWarehouse.getId()) + .eq(DistributionParcelListEntity::getConditions, 2) + ); + if(!distributionParcelListEntities.isEmpty() && stockArticleEntity1.getTotalNumber().equals(distributionParcelListEntities.size())){ + //修改订单状态 + DistributionStockArticleEntity stockArticleEntity = new DistributionStockArticleEntity(); + //修改 + stockArticleEntity.setId(oo); + stockArticleEntity.setGenre(2); + distributionStockArticleMapper.updateById(stockArticleEntity); + } + }); + return R.success("操作成功!"); + } + return R.fail("没有可用数据!"); }