From 69d25dd76b8c0a602a3cf4dee96498edbeed52e1 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" Date: Sat, 12 Oct 2024 18:06:57 +0800 Subject: [PATCH] =?UTF-8?q?add:=E5=A2=9E=E5=8A=A0=E5=8F=91=E8=BD=A6?= =?UTF-8?q?=E7=9A=84=E5=BC=82=E5=B8=B8=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DistributionDeliveryListServiceImpl.java | 149 +++++++++--------- 1 file changed, 77 insertions(+), 72 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 2e73c1354..46103a1d7 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -590,80 +590,85 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl>>>>>>>>{}", distributionDeliveryList); //获取关联的客户信息 - if (distributionDeliveryList.getSource() == 1) { - String reservationId = distributionDeliveryList.getReservationId(); - List reservationIds = Collections.singletonList(Long.valueOf(Arrays.toString(reservationId.split(",")))); - //查询客户信息,装车情况 -// List distributionDeliveryInfoEntities = distributionDeliveryInfoMapper.selectList(new QueryWrapper().lambda() -// .eq(DistributionDeliveryInfoEntity::getLoadedState, "2") -// .in(null != reservationIds && reservationIds.size() > 0, DistributionDeliveryInfoEntity::getReservationId, reservationIds) -// ); - //统计客户的配送数量,加入签收表(通过预约单查询总数量) - List distributionReservationEntities = distributionReservationMapper.selectBatchIds(reservationIds); - ArrayList distributionSignforEntities = new ArrayList(); - //TODO 冗余加入签收表 - distributionReservationEntities.forEach(e -> { - DistributionSignforEntity distributionSignforEntity = new DistributionSignforEntity(); - Func.copy(e, distributionSignforEntity); - distributionSignforEntity.setReservationId(e.getId()); - distributionSignforEntity.setConsignee(e.getConsignee()); - distributionSignforEntity.setWarehouseId(distributionDeliveryList.getWarehouseId()); - distributionSignforEntity.setWarehouseName(distributionDeliveryList.getWarehouseName()); - distributionSignforEntity.setTrainNumber(distributionDeliveryList.getTrainNumber()); - distributionSignforEntity.setDeliveryDriverName(distributionDeliveryList.getDriverName()); - distributionSignforEntity.setDeliveryDriverId(distributionDeliveryList.getDriverId()); - //配送时间 - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); - String format = simpleDateFormat.format(new Date()); - distributionSignforEntity.setDeliveryTime(format); - //通过客户查询已经上车的订单(待定) - // String orderIds = distributionDeliveryInfoMapper.selectorderIdList(e.getId()); -// distributionSignforEntity.setOrderId(e.getStockArticleId()); - //查询订单总数 -// Integer i = StringUtils.countMatches(e.getStockArticleId(), ",") + 1; -//// distributionSignforEntity.setOrderTotal(i); - //该客户总件数 - Integer i1 = distributionDeliveryInfoMapper.selectWrapCount(e.getId()); - distributionSignforEntity.setReservationNum(i1); - //装车件数 - Integer dre = distributionLoadscanMapper.selectWrapdreCount(e.getId()); - distributionSignforEntity.setLoadedNumber(dre); - //签收状态 - distributionSignforEntity.setSigningStatus("1"); - distributionSignforEntity.setReservationId(e.getId()); - distributionSignforEntities.add(distributionSignforEntity); - }); - distributionSignforService.saveBatch(distributionSignforEntities); - } else { + try { + if (distributionDeliveryList.getSource() == 1) { + String reservationId = distributionDeliveryList.getReservationId(); + List reservationIds = Collections.singletonList(Long.valueOf(Arrays.toString(reservationId.split(",")))); + //查询客户信息,装车情况 + // List distributionDeliveryInfoEntities = distributionDeliveryInfoMapper.selectList(new QueryWrapper().lambda() + // .eq(DistributionDeliveryInfoEntity::getLoadedState, "2") + // .in(null != reservationIds && reservationIds.size() > 0, DistributionDeliveryInfoEntity::getReservationId, reservationIds) + // ); + //统计客户的配送数量,加入签收表(通过预约单查询总数量) + List distributionReservationEntities = distributionReservationMapper.selectBatchIds(reservationIds); + ArrayList distributionSignforEntities = new ArrayList(); + //TODO 冗余加入签收表 + distributionReservationEntities.forEach(e -> { + DistributionSignforEntity distributionSignforEntity = new DistributionSignforEntity(); + Func.copy(e, distributionSignforEntity); + distributionSignforEntity.setReservationId(e.getId()); + distributionSignforEntity.setConsignee(e.getConsignee()); + distributionSignforEntity.setWarehouseId(distributionDeliveryList.getWarehouseId()); + distributionSignforEntity.setWarehouseName(distributionDeliveryList.getWarehouseName()); + distributionSignforEntity.setTrainNumber(distributionDeliveryList.getTrainNumber()); + distributionSignforEntity.setDeliveryDriverName(distributionDeliveryList.getDriverName()); + distributionSignforEntity.setDeliveryDriverId(distributionDeliveryList.getDriverId()); + //配送时间 + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + String format = simpleDateFormat.format(new Date()); + distributionSignforEntity.setDeliveryTime(format); + //通过客户查询已经上车的订单(待定) + // String orderIds = distributionDeliveryInfoMapper.selectorderIdList(e.getId()); + // distributionSignforEntity.setOrderId(e.getStockArticleId()); + //查询订单总数 + // Integer i = StringUtils.countMatches(e.getStockArticleId(), ",") + 1; + //// distributionSignforEntity.setOrderTotal(i); + //该客户总件数 + Integer i1 = distributionDeliveryInfoMapper.selectWrapCount(e.getId()); + distributionSignforEntity.setReservationNum(i1); + //装车件数 + Integer dre = distributionLoadscanMapper.selectWrapdreCount(e.getId()); + distributionSignforEntity.setLoadedNumber(dre); + //签收状态 + distributionSignforEntity.setSigningStatus("1"); + distributionSignforEntity.setReservationId(e.getId()); + distributionSignforEntities.add(distributionSignforEntity); + }); + distributionSignforService.saveBatch(distributionSignforEntities); + } else { + } + //获取关联订单 + String orderId = distributionDeliveryList.getOrderId(); + List orderIds = Collections.singletonList(Long.valueOf(Arrays.toString(orderId.split(",")))); + //查询在库订单 + List distributionStockArticleEntities = distributionStockArticleMapper.selectBatchIds(orderIds); + //插入配送详情表 + ArrayList arrayList = new ArrayList<>(); + distributionStockArticleEntities.forEach(e -> { + DistributionSigndetailEntity distributionSigndetailEntity = new DistributionSigndetailEntity(); + Func.copy(e, distributionSigndetailEntity); + //查询签收表id + Long masterId = distributionSignforService.selectIdByOrderId(e.getId()); + distributionSigndetailEntity.setMasterId(masterId); + distributionSigndetailEntity.setOrderId(e.getId()); + }); + distributionSigndetailService.saveBatch(arrayList); + //插入签收包条表 + ArrayList DistributionPackadeliEntitys = new ArrayList<>(); + List distributionLoadscanEntities = distributionLoadscanMapper.selectList(new QueryWrapper().lambda().eq(DistributionLoadscanEntity::getDeliveryId, distributionDeliveryList.getId()).ne(DistributionLoadscanEntity::getScanStatus, 1)); + distributionLoadscanEntities.forEach(e -> { + DistributionPackadeliEntity distributionPackadeliEntity = new DistributionPackadeliEntity(); + + DistributionPackadeliEntitys.add(distributionPackadeliEntity); + }); + distributionPackadeliService.saveBatch(DistributionPackadeliEntitys); + //TODO 修改配送表 + return this.update(new UpdateWrapper().lambda().eq(DistributionDeliveryListEntity::getId, distributionDeliveryList.getId()).set(DistributionDeliveryListEntity::getDeliveryStatus, DeliveryStatusConstant.peisongzhong.getValue())); + } catch (Exception e) { + log.error("发车异常", e); + throw new CustomerException("发车异常"); } - //获取关联订单 - String orderId = distributionDeliveryList.getOrderId(); - List orderIds = Collections.singletonList(Long.valueOf(Arrays.toString(orderId.split(",")))); - //查询在库订单 - List distributionStockArticleEntities = distributionStockArticleMapper.selectBatchIds(orderIds); - //插入配送详情表 - ArrayList arrayList = new ArrayList<>(); - distributionStockArticleEntities.forEach(e -> { - DistributionSigndetailEntity distributionSigndetailEntity = new DistributionSigndetailEntity(); - Func.copy(e, distributionSigndetailEntity); - //查询签收表id - Long masterId = distributionSignforService.selectIdByOrderId(e.getId()); - distributionSigndetailEntity.setMasterId(masterId); - distributionSigndetailEntity.setOrderId(e.getId()); - }); - distributionSigndetailService.saveBatch(arrayList); - //插入签收包条表 - ArrayList DistributionPackadeliEntitys = new ArrayList<>(); - List distributionLoadscanEntities = distributionLoadscanMapper.selectList(new QueryWrapper().lambda().eq(DistributionLoadscanEntity::getDeliveryId, distributionDeliveryList.getId()).ne(DistributionLoadscanEntity::getScanStatus, 1)); - distributionLoadscanEntities.forEach(e -> { - DistributionPackadeliEntity distributionPackadeliEntity = new DistributionPackadeliEntity(); - - DistributionPackadeliEntitys.add(distributionPackadeliEntity); - }); - distributionPackadeliService.saveBatch(DistributionPackadeliEntitys); - //TODO 修改配送表 - return this.update(new UpdateWrapper().lambda().eq(DistributionDeliveryListEntity::getId, distributionDeliveryList.getId()).set(DistributionDeliveryListEntity::getDeliveryStatus, DeliveryStatusConstant.peisongzhong.getValue())); }