From ac08794ee72d71258aff10c6660dbcb1cfaeb931 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Wed, 19 Jun 2024 11:22:48 +0800 Subject: [PATCH 01/16] =?UTF-8?q?=E5=B7=B2=E7=AD=BE=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E8=AF=A6=E6=83=85=E5=8F=82=E6=95=B0=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vo/DistributionSignforStockArticleVO.java | 12 ++++++++++++ .../mapper/DistributionStockArticleMapper.xml | 4 +++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java index f73b55f7f..9def87bf1 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java @@ -266,6 +266,18 @@ public class DistributionSignforStockArticleVO implements Serializable { @ApiModelProperty(value = "签收时间") private Date signinTime; + /** + * 签收ID + */ + @ApiModelProperty(value = "签收ID") + private Date signforId; + + /** + * 配送ID + */ + @ApiModelProperty(value = "配送ID") + private Date deliveryId; + /** * 创建时间 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 8d0044eae..3f01fd839 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 @@ -1492,7 +1492,9 @@ lds.sjsigning_time AS sjsigningTime, lddl.train_number AS trainNumber, lddl.vehicle_name AS vehicleName, - lddl.driver_name AS driverName + lddl.driver_name AS driverName, + lds.id AS signforId, + lds.delivery_id AS deliveryId FROM logpm_distribution_reservation_stockarticle AS ldrs LEFT JOIN logpm_distribution_reservation AS ldr ON ldrs.reservation_id = ldr.id From 448ee9f18213cfe8e0bfee125ecb268f78612f31 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Wed, 19 Jun 2024 15:13:24 +0800 Subject: [PATCH 02/16] =?UTF-8?q?=E5=BC=82=E5=B8=B8=E8=A3=85=E8=BD=A6?= =?UTF-8?q?=E5=88=A4=E5=AE=9ABUG=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DistributionDeliveryAppController.java | 8 ++++- .../DistributionDeliveryListServiceImpl.java | 34 +++++++++++-------- 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionDeliveryAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionDeliveryAppController.java index cbbe1b91e..9a2ec87e9 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionDeliveryAppController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionDeliveryAppController.java @@ -137,7 +137,13 @@ public class DistributionDeliveryAppController { @ApiOperationSupport(order = 6) @ApiOperation(value = "装车扫描", notes = "传入DistrilbutionloadingscanDTO") public R loadingscan(@Valid @RequestBody DistrilbutionloadingscanDTO distrilbutionloadingscanDTO) { - R msg = distributionDeliveryListService.loadingscan(distrilbutionloadingscanDTO); + R msg = null; + try{ + msg = distributionDeliveryListService.loadingscan(distrilbutionloadingscanDTO); + + }catch (Exception e){ + e.printStackTrace(); + } return msg; } 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 b3bac65f3..8ba88f9d8 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 @@ -577,6 +577,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl reservationEntities = reservationEntityList.stream().filter(r -> Func.isNotEmpty(r.getConsignee()) && r.getConsignee().equals(stockArticleEntity.getCustomerName()) && r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) && r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) && r.getMallName().equals(stockArticleEntity.getMallName()) && r.getId().equals(distrilbutionloadingscanDTO.getReservationId())).collect(Collectors.toList()); //查看是否存在满足条件的预约单 - reservationEntities = reservationEntities.stream().filter(r -> r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && r.getMallName().equals(stockArticleEntity.getMallName())).collect(Collectors.toList()); + boolean flag = reservationEntityList.stream().anyMatch(r -> Func.isNotEmpty(r.getConsignee()) && r.getConsignee().equals(stockArticleEntity.getCustomerName()) && r.getDeliveryAddress().equals(stockArticleEntity.getCustomerAddress()) && r.getDeliveryPhone().equals(stockArticleEntity.getCustomerTelephone()) && r.getMallName().equals(stockArticleEntity.getMallName()) && r.getId().equals(distrilbutionloadingscanDTO.getReservationId())); //存在多个,操作人指定具体客户即可 - if (!reservationEntities.isEmpty() && reservationEntities.size() == 1) { - if (Func.isEmpty(distrilbutionloadingscanDTO.getReservationId())) { - log.info("异常装车未指定客户"); - return Resp.scanFail("请指定客户进行异常装车", "请指定客户进行异常装车"); - } + if ( reservationEntities.size() == 1 && flag) { return R.fail(5000, "异常装车"); -// return Resp.scanFail("装车失败","程序出错,请联系彪桑"); } else { - if (parcelListEntity.getConditions() == 2) { - return Resp.scanFail("此包件不是订制品", "此包件不是订制品"); - - } else { + if (flag){ + if (reservationEntities.isEmpty()){ + return Resp.scanFail("请指定客户进行异常装车", "请指定客户进行异常装车"); + } + }else { return Resp.scanFail("窜货", "窜货"); } } @@ -810,15 +811,18 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl reservationEntities = reservationEntityList.stream().filter(r -> r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && r.getMallName().equals(stockArticleEntity.getMallName()) && r.getId().equals(distrilbutionloadingscanDTO.getReservationId())).collect(Collectors.toList()); //查询是否满足商配异常装车 - boolean flag = reservationEntities.stream().anyMatch(r -> r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && r.getMallName().equals(stockArticleEntity.getMallName())); - if (flag){ + boolean flag = reservationEntityList.stream().anyMatch(r -> r.getReceivingUnit().equals(stockArticleEntity.getConsigneeUnit()) && r.getMallName().equals(stockArticleEntity.getMallName())); + if (reservationEntities.size() == 1 && flag){ return R.fail(5000, "异常装车"); }else { - if (Func.isEmpty(distrilbutionloadingscanDTO.getReservationId())){ - return Resp.scanFail("请指定客户进行异常装车", "请指定客户进行异常装车"); + if (flag){ + if (reservationEntities.isEmpty()){ + return Resp.scanFail("请指定客户进行异常装车", "请指定客户进行异常装车"); + } }else { return Resp.scanFail("窜货", "窜货"); + } } } else { From 95d517fce683aff7501cc291ce2185d20c6525ec Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Wed, 19 Jun 2024 16:05:29 +0800 Subject: [PATCH 03/16] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E9=85=8D=E9=80=81=E4=BB=BB=E5=8A=A1=E5=8F=96=E6=B6=88=E5=A4=87?= =?UTF-8?q?=E8=B4=A7BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../distribution/mapper/DistributionParcelListMapper.xml | 2 +- .../distribution/mapper/DistributionStockupMapper.xml | 1 + .../service/impl/DistributionReservationServiceImpl.java | 7 ++++++- .../service/impl/DistributionStockupServiceImpl.java | 2 -- 4 files changed, 8 insertions(+), 4 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 2187fab27..51a2f17be 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 @@ -543,7 +543,7 @@ LEFT JOIN logpm_warehouse_tray_goods lwtg on lwtg.association_id = ldpl.id and lwtg.association_type = '3' LEFT JOIN logpm_warehouse_tray lwt on lwtg.tray_id = lwt.id - ldsi.stockup_id =#{id} and ldpl.order_package_code is not null and ldsi.stock_status != 4 + ldsi.stockup_id =#{id} and ldpl.order_package_code is not null and ldsi.stock_status != 4 AND ldrp.packet_bar_status != 2 diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java index 5e9417e21..7a855d819 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java @@ -2589,7 +2589,12 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl entityList = distributionStockupInfoService.list(Wrappers.query().lambda() + .eq(DistributionStockupInfoEntity::getStockupId, stockupEntity.getId()) + .ne(DistributionStockupInfoEntity::getStockStatus, "4") + ); + if (stockupEntity.getAssignStatus().equals(StockAssignStatusConstant.weizhipai.getValue()) && entityList.size() == 1) { //物理删除关于预约的所有信息 distributionReservationStocklistMapper.deleteReservationStocklist(reservationEntity.getId()); distributionReservationPackageMapper.deleteReservationPackage(reservationEntity.getId()); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java index 4453a3551..0759a43b9 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java @@ -310,8 +310,6 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl Date: Wed, 19 Jun 2024 17:00:21 +0800 Subject: [PATCH 04/16] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E5=B8=88=E5=82=85?= =?UTF-8?q?=E7=AD=BE=E6=94=B6=E6=8E=A8=E9=80=81=E5=95=86=E5=AE=B6=E7=AB=AF?= =?UTF-8?q?=E4=BD=9C=E4=B8=9A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/IDistributionReservationClient.java | 2 + .../BusinessInOrderDataQueueHandler.java | 33 ++++- .../service/IBusinessPreOrderService.java | 8 +- .../impl/BusinessPreOrderServiceImpl.java | 45 +++++-- .../feign/DistributionReservationClient.java | 5 + .../impl/DistributionSignforServiceImpl.java | 124 ++++++++++++++---- 6 files changed, 179 insertions(+), 38 deletions(-) diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java index e305b927f..78e767c3f 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java @@ -61,6 +61,8 @@ public interface IDistributionReservationClient { */ @GetMapping(TOP+"/getReservationList") List getReservationList(@RequestParam("reservationIds") String reservationIds); + @GetMapping(TOP+"/getReservationByCodeAndWarehouseId") + DistributionReservationEntity getReservationByCodeAndWarehouseId(@RequestParam("reservationCode") String reservationCode,@RequestParam("warehouseId") String warehouseId); /** diff --git a/blade-service/logpm-business/src/main/java/com/logpm/business/receiver/BusinessInOrderDataQueueHandler.java b/blade-service/logpm-business/src/main/java/com/logpm/business/receiver/BusinessInOrderDataQueueHandler.java index fe7b021cc..7069eca34 100644 --- a/blade-service/logpm-business/src/main/java/com/logpm/business/receiver/BusinessInOrderDataQueueHandler.java +++ b/blade-service/logpm-business/src/main/java/com/logpm/business/receiver/BusinessInOrderDataQueueHandler.java @@ -1,16 +1,23 @@ package com.logpm.business.receiver; +import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.logpm.business.service.IBusinessPreOrderService; +import com.logpm.distribution.entity.DistributionReservationEntity; +import com.logpm.distribution.feign.IDistributionReservationClient; import com.rabbitmq.client.Channel; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.common.constant.RabbitConstant; +import org.springblade.core.tool.api.R; +import org.springblade.system.entity.Tenant; +import org.springblade.system.feign.ISysClient; import org.springframework.amqp.core.Message; import org.springframework.amqp.rabbit.annotation.RabbitHandler; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.stereotype.Component; +import java.util.List; import java.util.Map; /** @@ -23,7 +30,8 @@ import java.util.Map; public class BusinessInOrderDataQueueHandler { private final IBusinessPreOrderService businessPreOrderService; - + private final IDistributionReservationClient distributionReservationClient; + private final ISysClient sysClient; @RabbitHandler public void businessInOrderDataHandler(Map map, Message message, Channel channel) { // 获取 @@ -35,7 +43,9 @@ public class BusinessInOrderDataQueueHandler { String vehicleName = o.getString("vehicleName"); String driverName = o.getString("driverName"); String userName = o.getString("userName"); + // 当前作业仓库 Long warehouseId = o.getLong("warehouseId"); + // 作业 String tenantId = o.getString("tenantId"); //验证参数是否为null或者空串 @@ -59,9 +69,26 @@ public class BusinessInOrderDataQueueHandler { log.error("driverName is null"); return; } + // 判断目标租户 + DistributionReservationEntity reservationByCodeAndWarehouseId = distributionReservationClient.getReservationByCodeAndWarehouseId(reservationCode, warehouseId.toString()); + + // 判断是否存在租户 + R> tenantList = sysClient.getTenantList(); + Tenant tenant = null; + if (tenantList.isSuccess()) { + List data = tenantList.getData(); + for (Tenant datum : data) { + if (datum.getTenantType() == 2 && datum.getTenantName().equals(reservationByCodeAndWarehouseId.getMallName().trim())) { + tenant = datum; + break; + } + } + } + if(!ObjectUtil.isEmpty(tenant)){ + // 如果师傅签收 以师傅签收的车次为准 + businessPreOrderService.scanOrderPackageCodeByMaster(orderPackageCode, reservationCode, distrCarNumber, vehicleName, driverName, userName, warehouseId,tenant.getTenantId(),tenant.getTenantName(),tenantId); + } - // 如果师傅签收 以师傅签收的车次为准 - businessPreOrderService.scanOrderPackageCodeByMaster(orderPackageCode, reservationCode, distrCarNumber, vehicleName, driverName, userName, warehouseId, tenantId); } diff --git a/blade-service/logpm-business/src/main/java/com/logpm/business/service/IBusinessPreOrderService.java b/blade-service/logpm-business/src/main/java/com/logpm/business/service/IBusinessPreOrderService.java index 2c314b7dd..202762810 100644 --- a/blade-service/logpm-business/src/main/java/com/logpm/business/service/IBusinessPreOrderService.java +++ b/blade-service/logpm-business/src/main/java/com/logpm/business/service/IBusinessPreOrderService.java @@ -10,6 +10,7 @@ import com.logpm.trunkline.dto.InComingDTO; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseService; import org.springblade.core.tool.api.R; +import org.springblade.system.entity.Tenant; import java.util.List; import java.util.Map; @@ -88,8 +89,9 @@ public interface IBusinessPreOrderService extends BaseService queryWrapper1 = new LambdaQueryWrapper<>(); @@ -484,14 +497,22 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl>>>> 签收异常报错", e); @@ -2672,6 +2683,49 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl map = new HashMap<>(); + map.put("messageData", jsonObject); + rabbitTemplate.convertAndSend(RabbitConstant.BUSINESS_IN_CONVERSION_DATA_EXCHANGE, RabbitConstant.BUSINESS_IN_CONVERSION_DATA_ROUTING, map); + } catch (Exception e) { + log.error("签收商家推送:{}", e); + } + } + @Override @Transactional(rollbackFor = Exception.class) public R signforPC(DistrilbutionAppsignforDTO distrilbutionloadingscanDTO) { @@ -3704,8 +3758,10 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl getAppDeliveryorderListPage(DistributionAppDeliveryListDTO distributionDeliveryList) { + List orderVos = new ArrayList<>(); if (Func.isEmpty(distributionDeliveryList.getReservationId())) { log.error("参数缺失reservationId:{}", distributionDeliveryList.getReservationId()); + return orderVos; } //查询该客户装车 @@ -3731,32 +3787,40 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl> reservationOrderMap = reservationStockarticleEntityList.stream().collect(Collectors.groupingBy(DistributionReservationStockarticleEntity::getStockArticleId)); Map> loadingOrderMap = distributionLoadscanEntities.stream().collect(Collectors.groupingBy(DistributionLoadscanEntity::getOrderId)); - List orderVos = new ArrayList<>(); + if (Func.isNotEmpty(orderIds)) { orderIds = orderIds.stream().distinct().collect(Collectors.toList()); - for (Long orderId : orderIds) { - DistributionStockArticleEntity stockArticleEntity = distributionStockArticleService.getById(orderId); - DistributionAppStockArticleVO distributionAppStockArticleVO = Func.copy(stockArticleEntity, DistributionAppStockArticleVO.class); - distributionAppStockArticleVO.setTotalNumber(stockArticleEntity.getTotalNumber()); - distributionAppStockArticleVO.setStockArticleId(stockArticleEntity.getId()); - distributionAppStockArticleVO.setLoadingNub(0); + + List distributionStockArticleEntities = distributionStockArticleService.listByIds(orderIds); + + + + List reservationOrders = distributionReservationStockarticleService.list(Wrappers.query().lambda() + .eq(DistributionReservationStockarticleEntity::getReservationId, distributionDeliveryList.getReservationId()) + .in(DistributionReservationStockarticleEntity::getStockArticleId, orderIds) + .ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue()) + ); + + for (DistributionStockArticleEntity distributionStockArticleEntity : distributionStockArticleEntities) { + + +// DistributionStockArticleEntity stockArticleEntity = distributionStockArticleService.getById(orderId); + DistributionAppStockArticleVO distributionAppStockArticleVO = Func.copy(distributionStockArticleEntity, DistributionAppStockArticleVO.class); + assert distributionAppStockArticleVO != null; + distributionAppStockArticleVO.setLoadingNub(0); distributionAppStockArticleVO.setSignforNub(0); distributionAppStockArticleVO.setReservationNum(0); //查询预约该订单计划数量 - DistributionReservationStockarticleEntity reservationOrder = distributionReservationStockarticleService.getOne(Wrappers.query().lambda() - .eq(DistributionReservationStockarticleEntity::getReservationId, distributionDeliveryList.getReservationId()) - .eq(DistributionReservationStockarticleEntity::getStockArticleId, orderId) - .ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue()) - ); + DistributionReservationStockarticleEntity reservationOrder = findReservationOrders(reservationOrders, distributionStockArticleEntity.getId()); if (Func.isNotEmpty(reservationOrder)) { distributionAppStockArticleVO.setReservationNum(reservationOrder.getReservationNum()); } - if (stockArticleEntity.getIsZero().equals(IsOrNoConstant.no.getValue())) { + if (distributionStockArticleEntity.getIsZero().equals(IsOrNoConstant.no.getValue())) { //判断此订单是是否是异常装车 - if (Func.isEmpty(reservationOrderMap.get(orderId))) { + if (Func.isEmpty(reservationOrderMap.get(distributionStockArticleEntity.getId()))) { //不存在计划之中的订单装车 - List loadscanEntityList = loadingOrderMap.get(orderId); + List loadscanEntityList = loadingOrderMap.get(distributionStockArticleEntity.getId()); List abnormalPackageIds = loadscanEntityList.stream().map(DistributionLoadscanEntity::getPackageId).collect(Collectors.toList()); List distributionParcelListEntities = distributionParcelListService.listByIds(abnormalPackageIds); List distributionAppParcelListVOS = DistributionParcelListAppWrapper.build().listVO(distributionParcelListEntities); @@ -3778,7 +3842,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl reservationPackage = distributionReservationPackageService.list(Wrappers.query().lambda() .eq(DistributionReservationPackageEntity::getReservationId, distributionDeliveryList.getReservationId()) - .eq(DistributionReservationPackageEntity::getStockArticleId, orderId) + .eq(DistributionReservationPackageEntity::getStockArticleId, distributionStockArticleEntity.getId()) .ne(DistributionReservationPackageEntity::getPacketBarStatus, ReservationPackageStatusConstant.quxiao.getValue()) ); List packageIds = new ArrayList<>(); @@ -3788,8 +3852,8 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl collect = null; - if (Func.isNotEmpty(loadingOrderMap.get(orderId))) { - List loadscanEntityList = loadingOrderMap.get(orderId); + if (Func.isNotEmpty(loadingOrderMap.get(distributionStockArticleEntity.getId()))) { + List loadscanEntityList = loadingOrderMap.get(distributionStockArticleEntity.getId()); List loadingPackageIds = loadscanEntityList.stream().map(DistributionLoadscanEntity::getPackageId).collect(Collectors.toList()); packageIds.addAll(loadingPackageIds); collect = loadscanEntityList.stream().collect(Collectors.toMap(DistributionLoadscanEntity::getPackageId, Function.identity(), (k1, k2) -> k2)); @@ -3801,11 +3865,13 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl packageVOS = new ArrayList<>(); if (Func.isNotEmpty(packageIds)) { packageIds = packageIds.stream().distinct().collect(Collectors.toList()); - for (Long packageId : packageIds) { - DistributionParcelListEntity parcelListEntity = distributionParcelListService.getById(packageId); + + List parcelListEntitys = distributionParcelListService.listByIds(packageIds); + for (DistributionParcelListEntity parcelListEntity : parcelListEntitys) { +// DistributionParcelListEntity parcelListEntity = distributionParcelListService.getById(packageId); DistributionAppParcelListVO distributionAppParcelListVO = DistributionParcelListAppWrapper.build().entityVO(parcelListEntity); if (Func.isNotEmpty(collect)) { - DistributionLoadscanEntity distributionLoadscanEntity = collect.get(packageId); + DistributionLoadscanEntity distributionLoadscanEntity = collect.get(parcelListEntity.getId()); if (Func.isNotEmpty(distributionLoadscanEntity)) { distributionAppParcelListVO.setMaterialName(parcelListEntity.getMaterialName()); if (distributionLoadscanEntity.getIsAbnormalLoading().equals(2)) { @@ -3832,16 +3898,16 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl reservationZeroPackageEntityList = distributionReservationZeroPackageService.list(Wrappers.query().lambda() .eq(DistributionReservationZeroPackageEntity::getReservationId, distributionDeliveryList.getReservationId()) - .eq(DistributionReservationZeroPackageEntity::getStockArticleId, orderId) + .eq(DistributionReservationZeroPackageEntity::getStockArticleId, distributionStockArticleEntity.getId()) .ne(DistributionReservationZeroPackageEntity::getZeroPackageStatus, ReservationPackageStatusConstant.quxiao.getValue())); if (Func.isNotEmpty(reservationZeroPackageEntityList)) { int reservationTotal = reservationZeroPackageEntityList.stream().mapToInt(DistributionReservationZeroPackageEntity::getQuantity).sum(); distributionAppStockArticleVO.setReservationNum(reservationTotal); - List parcelNumberVOS = distributionReservationMapper.selectReservationZeroOrderDetail(orderId, Long.parseLong(distributionDeliveryList.getReservationId())); + List parcelNumberVOS = distributionReservationMapper.selectReservationZeroOrderDetail(distributionStockArticleEntity.getId(), Long.parseLong(distributionDeliveryList.getReservationId())); distributionAppStockArticleVO.setSignforNub(0); if (Func.isNotEmpty(parcelNumberVOS)) { parcelNumberVOS.forEach(p -> { - DistributionLoadscanEntity loadscanEntity = distributionLoadscanService.getOne(Wrappers.query().lambda().eq(DistributionLoadscanEntity::getReservationId, distributionDeliveryList.getReservationId()).eq(DistributionLoadscanEntity::getOrderId, orderId).eq(DistributionLoadscanEntity::getPackageId, p.getParcelListId()).ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); + DistributionLoadscanEntity loadscanEntity = distributionLoadscanService.getOne(Wrappers.query().lambda().eq(DistributionLoadscanEntity::getReservationId, distributionDeliveryList.getReservationId()).eq(DistributionLoadscanEntity::getOrderId, distributionStockArticleEntity.getId()).eq(DistributionLoadscanEntity::getPackageId, p.getParcelListId()).ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())); p.setLoadingNum(0); p.setSigningNum(0); if (Func.isNotEmpty(loadscanEntity)) { @@ -3866,6 +3932,16 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl reservationOrders , Long id) { + return reservationOrders.stream().filter(f -> f.getStockArticleId().equals(id)).findFirst().orElse(null); + } + // Map> orderMap = distributionLoadscanEntities.stream().collect(Collectors.groupingBy(DistributionLoadscanEntity::getOrderId)); // List distributionAppStockArticleVOS = new ArrayList<>(); From f4a46f5fd22e9150a0f4cc60c4ecf8fe1d09cf28 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Wed, 19 Jun 2024 17:22:06 +0800 Subject: [PATCH 05/16] =?UTF-8?q?=E5=B7=B2=E7=AD=BE=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../distribution/vo/DistributionSignforStockArticleVO.java | 4 ++-- .../controller/DistributionStockArticleController.java | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java index 9def87bf1..5357dca66 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionSignforStockArticleVO.java @@ -270,13 +270,13 @@ public class DistributionSignforStockArticleVO implements Serializable { * 签收ID */ @ApiModelProperty(value = "签收ID") - private Date signforId; + private Long signforId; /** * 配送ID */ @ApiModelProperty(value = "配送ID") - private Date deliveryId; + private Long deliveryId; /** 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 9ea6a4387..3beaa4c7e 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 @@ -387,6 +387,8 @@ public class DistributionStockArticleController extends BladeController { BeanUtil.copy(oldStockArticle,newStockArticle); String consigneePerson = stockArticleEntity.getConsigneePerson(); String customerName = stockArticleEntity.getCustomerName(); + String mallName = stockArticleEntity.getMallName(); + String consigneeUnit = stockArticleEntity.getConsigneeUnit(); if(StringUtil.isNotBlank(consigneePerson)){ newStockArticle.setConsigneePerson(consigneePerson); newStockArticle.setConsigneeMobile(stockArticleEntity.getConsigneeMobile()); @@ -396,8 +398,8 @@ public class DistributionStockArticleController extends BladeController { newStockArticle.setCustomerTelephone(stockArticleEntity.getCustomerTelephone()); newStockArticle.setCustomerAddress(stockArticleEntity.getCustomerAddress()); }else { - newStockArticle.setMallName(customerName); - newStockArticle.setConsigneeUnit(customerName); + newStockArticle.setMallName(mallName); + newStockArticle.setConsigneeUnit(consigneeUnit); } String content = oldStockArticle.compareCustomerInfo(newStockArticle); if(StringUtil.isNotBlank(content)){ From 383436d5f12542e7c6c070993e2b054b39b5aa4e Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Wed, 19 Jun 2024 17:37:29 +0800 Subject: [PATCH 06/16] =?UTF-8?q?=E9=85=8D=E9=80=81=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=80=BB=E4=BF=A1=E6=81=AF=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/DistributionDeliveryListMapper.xml | 29 +++++++++++++++---- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml index 704367e33..fbe63fa8b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml @@ -600,7 +600,7 @@ SELECT COALESCE(COUNT(*), 0) FROM logpm_distribution_delivery_list lddl - lddl.customers_number > 0 + lddl.type = '1' AND lddl.customers_number > 0 and lddl.train_number like concat('%',#{param.trainNumber},'%') @@ -637,9 +637,6 @@ and lddl.date_format(loading_time,'%y%m%d%') = date_format(#{param.loadingTime},'%y%m%d%') - - and lddl.type = #{param.type} - SELECT DISTINCT ldr.id id, - ldr.consignee consignee, + GROUP_CONCAT(DISTINCT CONCAT(ldr.receiving_unit,'(',ldr.consignee),')') AS consignee, COALESCE ( ldr.reservation_num + ldr.reservation_stock_list_num, 0 ) reservationNum, ( diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml index 704367e33..d64f05fc0 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml @@ -1046,7 +1046,8 @@ (SELECT COALESCE(sum(lds.loaded_number+lds.loadedin_number), 0) FROM logpm_distribution_signfor lds WHERE lddl.id = lds.delivery_id) scannedNumber, ( - select GROUP_CONCAT(ldr.consignee) + select + group_concat(CONCAT(ldr.mall_name ,'(',ldr.consignee,')')) from logpm_distribution_reservation ldr where ldr.id in (select lds.reservation_id diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml index d8d39150e..8eb6112b0 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSignforMapper.xml @@ -43,34 +43,49 @@ - UPDATE logpm_distribution_signfor lds set lds.loaded_number = ( lds.loaded_number + #{nub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id = #{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.loaded_number = ( lds.loaded_number + #{nub} ) WHERE + lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id = #{deliveryId} - UPDATE logpm_distribution_signfor lds set lds.loadedin_number = ( lds.loadedin_number + #{nub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id = #{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.loadedin_number = ( lds.loadedin_number + #{nub} ) WHERE + lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id = #{deliveryId} - UPDATE logpm_distribution_signfor lds set lds.loaded_number = ( lds.loaded_number - #{nub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and loaded_number !=0 and lds.delivery_id = #{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.loaded_number = ( lds.loaded_number - #{nub} ) WHERE + lds.is_deleted =0 and lds.reservation_id = #{reservationId} and loaded_number !=0 and lds.delivery_id = + #{deliveryId} - UPDATE logpm_distribution_signfor lds set lds.received_quantity = ( lds.received_quantity + #{packageNub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id =#{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.received_quantity = ( lds.received_quantity + #{packageNub} ) + WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id =#{deliveryId} - UPDATE logpm_distribution_signfor lds set lds.received_quantity = ( lds.received_quantity + #{packageNub} ),lds.loaded_number = ( lds.loaded_number + #{packageNub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id =#{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.received_quantity = ( lds.received_quantity + #{packageNub} + ),lds.loaded_number = ( lds.loaded_number + #{packageNub} ) WHERE lds.is_deleted =0 and lds.reservation_id = + #{reservationId} and lds.delivery_id =#{deliveryId} - UPDATE logpm_distribution_signfor lds set lds.loadedin_number = ( lds.loadedin_number + #{packageNub} ),lds.receivedin_quantity = ( lds.receivedin_quantity + #{packageNub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id =#{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.loadedin_number = ( lds.loadedin_number + #{packageNub} + ),lds.receivedin_quantity = ( lds.receivedin_quantity + #{packageNub} ) WHERE lds.is_deleted =0 and + lds.reservation_id = #{reservationId} and lds.delivery_id =#{deliveryId} - UPDATE logpm_distribution_signfor lds set lds.receivedin_quantity = ( lds.receivedin_quantity + #{packageNub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id =#{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.receivedin_quantity = ( lds.receivedin_quantity + #{packageNub} ) + WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and lds.delivery_id =#{deliveryId} - UPDATE logpm_distribution_signfor lds set lds.loaded_number = ( lds.loaded_number - #{nub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and loaded_number !=0 and lds.delivery_id = #{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.loaded_number = ( lds.loaded_number - #{nub} ) WHERE + lds.is_deleted =0 and lds.reservation_id = #{reservationId} and loaded_number !=0 and lds.delivery_id = + #{deliveryId} - UPDATE logpm_distribution_signfor lds set lds.loadedin_number = ( lds.loadedin_number - #{nub} ) WHERE lds.is_deleted =0 and lds.reservation_id = #{reservationId} and loadedin_number !=0 and lds.delivery_id = #{deliveryId} + UPDATE logpm_distribution_signfor lds set lds.loadedin_number = ( lds.loadedin_number - #{nub} ) WHERE + lds.is_deleted =0 and lds.reservation_id = #{reservationId} and loadedin_number !=0 and lds.delivery_id = + #{deliveryId} - UPDATE logpm_distribution_signfor SET signee_name = #{user.nickName},signee_id = #{user.userId} WHERE signee_name is null and delivery_id = #{deliveryId} and reservation_id = #{reservationId} + UPDATE logpm_distribution_signfor SET signee_name = #{user.nickName},signee_id = #{user.userId} WHERE + signee_name is null and delivery_id = #{deliveryId} and reservation_id = #{reservationId} DELETE FROM logpm_distribution_signfor @@ -84,198 +99,204 @@ - UPDATE logpm_distribution_reservation_package SET packet_bar_status = 2 ,cancel_remark = '异常审核取消原计划' WHERE parce_list_id = #{packageId} ; + UPDATE logpm_distribution_reservation_package SET packet_bar_status = 2 ,cancel_remark = '异常审核取消原计划' + WHERE parce_list_id = #{packageId} ; - UPDATE logpm_distribution_reservation_stockarticle SET reservation_num = (SELECT count(id) FROM logpm_distribution_reservation_package WHERE packet_bar_status != 2 AND reservation_id = #{reservationId} AND stock_article_id = #{stockArticleId} AND is_deleted = 0) WHERE reservation_id = #{reservationId} AND stock_article_id = #{stockArticleId}; + UPDATE logpm_distribution_reservation_stockarticle SET reservation_num = (SELECT count(id) FROM + logpm_distribution_reservation_package WHERE packet_bar_status != 2 AND reservation_id = #{reservationId} AND + stock_article_id = #{stockArticleId} AND is_deleted = 0) WHERE reservation_id = #{reservationId} AND + stock_article_id = #{stockArticleId}; - UPDATE logpm_distribution_reservation_stockarticle SET stock_article_status = 2 WHERE reservation_num = 0 AND reservation_id = #{reservationId} AND stock_article_id = #{stockArticleId}; + UPDATE logpm_distribution_reservation_stockarticle SET stock_article_status = 2 WHERE reservation_num = 0 AND + reservation_id = #{reservationId} AND stock_article_id = #{stockArticleId}; - UPDATE logpm_distribution_reservation SET reservation_num = (SELECT count(id) FROM logpm_distribution_reservation_package WHERE packet_bar_status != 2 AND reservation_id = #{reservationId} AND is_deleted =0 ) WHERE id = #{reservationId}; + UPDATE logpm_distribution_reservation SET reservation_num = (SELECT count(id) FROM + logpm_distribution_reservation_package WHERE packet_bar_status != 2 AND reservation_id = #{reservationId} AND + is_deleted =0 ) WHERE id = #{reservationId}; - UPDATE logpm_distribution_reservation SET reservation_status = '40',cancel_reason = '异常审核判定判定取消预约计划' WHERE id = #{reservationId} AND (reservation_num + reservation_stock_list_num) = 0; + UPDATE logpm_distribution_reservation SET reservation_status = '40',cancel_reason = '异常审核判定判定取消预约计划' + WHERE id = #{reservationId} AND (reservation_num + reservation_stock_list_num) = 0; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - SELECT DISTINCT lddl.id id, lddl.train_number trainNumber, @@ -752,128 +796,139 @@ (SELECT COALESCE (sum(ldr.reservation_num + ldr.reservation_stock_list_num),0) FROM logpm_distribution_signfor lds - join logpm_distribution_reservation ldr on lds.reservation_id =ldr.id - WHERE lds.delivery_id = lddl.id + join logpm_distribution_reservation ldr on lds.reservation_id =ldr.id + WHERE lds.delivery_id = lddl.id ) deliveryNumber, lddl.delivery_status deliveryStatus, lddl.preparation_time preparationTime, lddl.create_time createTime, - (SELECT COALESCE(COUNT(*), 0) FROM logpm_distribution_signfor lds WHERE lds.delivery_id =lddl.id) customersNumber, + (SELECT COALESCE(COUNT(*), 0) FROM logpm_distribution_signfor lds WHERE lds.delivery_id =lddl.id) + customersNumber, lddl.price price, lddl.added_services_id addedServicesId, (SELECT COALESCE (COUNT(*) ,0) FROM logpm_distribution_signfor lds - join logpm_distribution_reservation ldr on lds.reservation_id =ldr.id + join logpm_distribution_reservation ldr on lds.reservation_id =ldr.id join logpm_distribution_reservation_stockarticle ldrs on ldrs.reservation_id =ldr.id - WHERE lds.delivery_id = lddl.id + WHERE lds.delivery_id = lddl.id ) orderNumber, (SELECT COALESCE(sum(lds.loaded_number+lds.loadedin_number), 0) FROM logpm_distribution_signfor lds WHERE lddl.id = lds.delivery_id) scannedNumber, - (SELECT GROUP_CONCAT(DISTINCT ldsu.loader_name SEPARATOR ',') from logpm_distribution_signfor lds INNER JOIN logpm_distribution_stockup_info AS ldsi ON lds.reservation_id = ldsi.reservation_id - INNER JOIN logpm_distribution_stockup AS ldsu ON ldsu.id = ldsi.stockup_id WHERE lds.delivery_id = lddl.id) loadingTeamName, - lddl.lead_time leadTime, - lddl.loading_time loadingTime, - lddl.task_time taskTime, - (SELECT COALESCE(sum(lds.receivedin_quantity+lds.received_quantity), 0) FROM logpm_distribution_signfor lds WHERE - lddl.id = lds.delivery_id) signNub, - ( (SELECT COALESCE(count(*), 0) FROM logpm_distribution_loadscan ldl WHERE - lddl.id = ldl.delivery_id and ldl.signfor_state =2) + - (SELECT COALESCE(count(*), 0) FROM logpm_distribution_loadscaninvn ldl WHERE - lddl.id = ldl.delivery_id and ldl.signfor_state =2) ) signNubSr, - ( select GROUP_CONCAT(ldr.consignee) from logpm_distribution_reservation ldr - where ldr.id in (select lds.reservation_id from logpm_distribution_signfor lds where lds.delivery_id = lddl.id ) - ) consignee - FROM - logpm_distribution_delivery_list lddl - left join logpm_distribution_delivery_self ldds on lddl.id =ldds.delivery_id - left join logpm_distribution_signfor ldsf on ldsf.delivery_id = lddl.id - LEFT JOIN (SELECT count(ldr.id) AS num,lds.delivery_id FROM logpm_distribution_signfor AS lds LEFT JOIN logpm_distribution_reservation AS ldr ON lds.reservation_id = ldr.id WHERE lds.is_deleted = 0 AND ldr.is_deleted = 0 GROUP BY lds.delivery_id) AS t ON t.delivery_id = lddl.id - - lddl.is_deleted =0 AND t.num > 0 - - and lddl.id in - - #{item} - - - - and lddl.warehouse_id in - - #{item} - - - - and date_format(lddl.create_time,'%y%m%d%') = date_format(#{param.createTime_query},'%y%m%d%') - - - and lddl.type = #{param.type} - - - and date_format(lddl.task_time,'%y%m%d%') >= date_format(#{param.taskTime_start},'%y%m%d%') and date_format(lddl.task_time,'%y%m%d%') <= date_format(#{param.taskTime_end},'%y%m%d%') - - - ORDER BY lddl.task_time DESC + (SELECT GROUP_CONCAT(DISTINCT ldsu.loader_name SEPARATOR ',') from logpm_distribution_signfor lds INNER JOIN + logpm_distribution_stockup_info AS ldsi ON lds.reservation_id = ldsi.reservation_id + INNER JOIN logpm_distribution_stockup AS ldsu ON ldsu.id = ldsi.stockup_id WHERE lds.delivery_id = lddl.id) + loadingTeamName, + lddl.lead_time leadTime, + lddl.loading_time loadingTime, + lddl.task_time taskTime, + (SELECT COALESCE(sum(lds.receivedin_quantity+lds.received_quantity), 0) FROM logpm_distribution_signfor lds + WHERE + lddl.id = lds.delivery_id) signNub, + ( (SELECT COALESCE(count(*), 0) FROM logpm_distribution_loadscan ldl WHERE + lddl.id = ldl.delivery_id and ldl.signfor_state =2) + + (SELECT COALESCE(count(*), 0) FROM logpm_distribution_loadscaninvn ldl WHERE + lddl.id = ldl.delivery_id and ldl.signfor_state =2) ) signNubSr, + ( select GROUP_CONCAT(CONCAT(ldr.receiving_unit,'(',ldr.consignee),')') from logpm_distribution_reservation ldr + where ldr.id in (select lds.reservation_id from logpm_distribution_signfor lds where lds.delivery_id = lddl.id ) + ) consignee + FROM + logpm_distribution_delivery_list lddl + left join logpm_distribution_delivery_self ldds on lddl.id =ldds.delivery_id + left join logpm_distribution_signfor ldsf on ldsf.delivery_id = lddl.id + LEFT JOIN (SELECT count(ldr.id) AS num,lds.delivery_id FROM logpm_distribution_signfor AS lds LEFT JOIN + logpm_distribution_reservation AS ldr ON lds.reservation_id = ldr.id WHERE lds.is_deleted = 0 AND ldr.is_deleted + = 0 GROUP BY lds.delivery_id) AS t ON t.delivery_id = lddl.id + + lddl.is_deleted =0 AND t.num > 0 + + and lddl.id in + + #{item} + + + + and lddl.warehouse_id in + + #{item} + + + + and date_format(lddl.create_time,'%y%m%d%') = date_format(#{param.createTime_query},'%y%m%d%') + + + and lddl.type = #{param.type} + + + and date_format(lddl.task_time,'%y%m%d%') >= date_format(#{param.taskTime_start},'%y%m%d%') and + date_format(lddl.task_time,'%y%m%d%') <= date_format(#{param.taskTime_end},'%y%m%d%') + + + ORDER BY lddl.task_time DESC + + + - - - + SELECT distinct + ldsa.order_code AS orderCode, + ldrs.reservation_num AS reservationNum, + ldrs.stock_article_id stockArticleId, + (SELECT COALESCE(COUNT(*), 0) FROM logpm_distribution_loadscan ldl WHERE ldl.order_id = ldsa.id AND + ldl.scan_status != 1 AND ldl.signfor_state = 2) AS signforNub, + (SELECT COALESCE(COUNT(*), 0) FROM logpm_distribution_loadscan ldl WHERE ldl.order_id = ldsa.id AND + ldl.scan_status != 1 ) AS loadingNub + FROM + logpm_distribution_reservation ldr + JOIN logpm_distribution_reservation_stockarticle ldrs ON ldr.id = ldrs.reservation_id + JOIN logpm_distribution_stock_article ldsa ON ldsa.id = ldrs.stock_article_id + + ldr.is_deleted = 0 + - and ldsa.order_code like + and ldsa.order_code like concat('%',#{param.orderCode},'%') and ldr.id = #{param.reservationId} @@ -882,7 +937,7 @@ FROM logpm_distribution_loadscan ldl WHERE ldl.order_id = ldsa.id AND ldl.scan_status != 1 - AND ldl.signfor_state = 2) < ldrs.reservation_num and (SELECT COALESCE(COUNT(*), 0) + AND ldl.signfor_state = 2) < ldrs.reservation_num and (SELECT COALESCE(COUNT(*), 0) FROM logpm_distribution_loadscan ldl WHERE ldl.order_id = ldsa.id AND ldl.scan_status != 1 @@ -899,26 +954,27 @@ WHERE ldl.order_id = ldsa.id AND ldl.scan_status != 1 AND ldl.signfor_state = 2) AS signforNub, - (SELECT COALESCE(COUNT(*), 0) FROM logpm_distribution_loadscan ldl WHERE ldl.order_id = ldsa.id AND ldl.scan_status != 1 ) AS loadingNub + (SELECT COALESCE(COUNT(*), 0) FROM logpm_distribution_loadscan ldl WHERE ldl.order_id = ldsa.id AND + ldl.scan_status != 1 ) AS loadingNub FROM logpm_distribution_reservation ldr JOIN logpm_distribution_reservation_stockarticle ldrs ON ldr.id = ldrs.reservation_id JOIN logpm_distribution_stock_article ldsa ON ldsa.id = ldrs.stock_article_id - ldr.is_deleted = 0 - - - - - and ldsa.order_code like - concat('%',#{param.orderCode},'%') - - and ldr.id = #{param.reservationId} - and (SELECT COALESCE(COUNT(*), 0) - FROM logpm_distribution_loadscan ldl - WHERE ldl.order_id = ldsa.id - AND ldl.scan_status != 1 - AND ldl.signfor_state = 2) =0 + ldr.is_deleted = 0 + + + + + and ldsa.order_code like + concat('%',#{param.orderCode},'%') + + and ldr.id = #{param.reservationId} + and (SELECT COALESCE(COUNT(*), 0) + FROM logpm_distribution_loadscan ldl + WHERE ldl.order_id = ldsa.id + AND ldl.scan_status != 1 + AND ldl.signfor_state = 2) =0 @@ -981,20 +1038,34 @@ ldsl.cargo_norms AS cargoNorms, ldsl.description_goods AS descriptionGoods, ldrs.reservation_num AS planNum, - (SELECT IFNULL(sum(stock_quantity),0) FROM logpm_distribution_stock WHERE reservation_id = ldr.id AND stock_list_id = ldsl.id) AS stockupNum, - (SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id) AS loadingNum, - (SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id AND signfor_state = 2) AS signingNum, - (SELECT IFNULL(MAX(signing_time),'') FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id AND signfor_state = 2) AS signingTime, - (SELECT IFNULL(MAX(scan_time),'') FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id ) AS loadingTime, - (SELECT IFNULL(GROUP_CONCAT(DISTINCT scan_user),'') FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id GROUP BY scan_user) AS loadingUser, - (SELECT IFNULL(GROUP_CONCAT(DISTINCT signee_name),'') FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id GROUP BY scan_user) AS signingUser, - IF((SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id) = 0,'未装车',IF((SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id) = ldrs.reservation_num,'已装车','部分装车')) AS loadingStatus, + (SELECT IFNULL(sum(stock_quantity),0) FROM logpm_distribution_stock WHERE reservation_id = ldr.id AND + stock_list_id = ldsl.id) AS stockupNum, + (SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND + inventory_id = ldsl.id) AS loadingNum, + (SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND + inventory_id = ldsl.id AND signfor_state = 2) AS signingNum, + (SELECT IFNULL(MAX(signing_time),'') FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND + inventory_id = ldsl.id AND signfor_state = 2) AS signingTime, + (SELECT IFNULL(MAX(scan_time),'') FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND + inventory_id = ldsl.id ) AS loadingTime, + (SELECT IFNULL(GROUP_CONCAT(DISTINCT scan_user),'') FROM logpm_distribution_loadscaninvn WHERE reservation_id = + ldr.id AND inventory_id = ldsl.id GROUP BY scan_user) AS loadingUser, + (SELECT IFNULL(GROUP_CONCAT(DISTINCT signee_name),'') FROM logpm_distribution_loadscaninvn WHERE reservation_id + = ldr.id AND inventory_id = ldsl.id GROUP BY scan_user) AS signingUser, + IF((SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND + inventory_id = ldsl.id) = 0,'未装车',IF((SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn + WHERE reservation_id = ldr.id AND inventory_id = ldsl.id) = ldrs.reservation_num,'已装车','部分装车')) AS + loadingStatus, - IF((SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id AND signfor_state = 2) = 0,'未签收',IF((SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id AND signfor_state = 2) = ldrs.reservation_num,'已签收','部分签收')) AS signingStatus + IF((SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND + inventory_id = ldsl.id AND signfor_state = 2) = 0,'未签收',IF((SELECT IFNULL(SUM(package_nub),0) FROM + logpm_distribution_loadscaninvn WHERE reservation_id = ldr.id AND inventory_id = ldsl.id AND signfor_state = 2) + = ldrs.reservation_num,'已签收','部分签收')) AS signingStatus FROM logpm_distribution_signfor AS lds LEFT JOIN logpm_distribution_reservation AS ldr ON lds.reservation_id = ldr.id - LEFT JOIN logpm_distribution_reservation_stocklist AS ldrs ON ldrs.reservation_id = ldr.id AND ldrs.stock_list_status != 2 AND ldrs.is_deleted = 0 + LEFT JOIN logpm_distribution_reservation_stocklist AS ldrs ON ldrs.reservation_id = ldr.id AND + ldrs.stock_list_status != 2 AND ldrs.is_deleted = 0 LEFT JOIN logpm_distribution_stock_list AS ldsl ON ldrs.stocklist_id = ldsl.id WHERE lds.id = #{id} AND lds.is_deleted = 0 @@ -1002,44 +1073,45 @@ From 9b55c487221c22ef07df6be143a6b8e1ba6bfd61 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Thu, 20 Jun 2024 17:16:48 +0800 Subject: [PATCH 14/16] =?UTF-8?q?=E7=AD=BE=E6=94=B6=E6=89=AB=E6=8F=8F?= =?UTF-8?q?=E5=BC=82=E5=B8=B8=E6=94=AF=E6=8C=81=E6=9C=80=E5=90=8E=E7=8E=AF?= =?UTF-8?q?=E8=8A=82=E5=A2=9E=E5=8A=A0=E5=8D=95=E5=AD=90=E3=80=81=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=A4=8D=E6=A0=B8=E6=97=A0=E6=B3=95=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E7=AD=BE=E6=94=B6=E6=89=AB=E6=8F=8F=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/DistributionSignforServiceImpl.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java index 9aeed4732..219890ef3 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java @@ -2407,6 +2407,21 @@ public class DistributionSignforServiceImpl extends BaseServiceImplquery().lambda() + .eq(DistributionSignforEntity::getReservationId, distrilbutionloadingscanDTO.getReservationId()) + ); + if (Objects.isNull(signforEntity)){ + //查询签收信息错误 + log.error("签收扫描查询签收表信息错误reservationId:{}",distrilbutionloadingscanDTO.getReservationId()); + return R.fail(403, "配送任务错误"); + } + if (SignforStatusConstant.yiqianshou.getValue().equals(signforEntity.getSigningStatus())){ + return Resp.scanFail("此任务已完成复核", "此任务已完成复核"); + } + + + List packageLockIds = new ArrayList<>(); try { From e92ac0bbef53ca7eb10f54519cc381484a6e4413 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Thu, 20 Jun 2024 17:35:11 +0800 Subject: [PATCH 15/16] =?UTF-8?q?=E5=AE=A2=E6=88=B7=E7=BC=96=E7=A0=81BUG?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/logpm/basicdata/mapper/BasicdataClientMapper.java | 2 +- .../java/com/logpm/basicdata/mapper/BasicdataClientMapper.xml | 2 +- .../basicdata/service/impl/BasicdataClientServiceImpl.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataClientMapper.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataClientMapper.java index 19b326ba1..75c5912aa 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataClientMapper.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataClientMapper.java @@ -75,6 +75,6 @@ public interface BasicdataClientMapper extends BaseMapper * 查询规则生成的客户编码列表 * @return */ - List getFinallyClientCode(); + List getFinallyClientCode(@Param("tenantCode")String tenantCode); } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataClientMapper.xml b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataClientMapper.xml index c23861cef..936756058 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataClientMapper.xml +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataClientMapper.xml @@ -169,7 +169,7 @@ DESC diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataClientServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataClientServiceImpl.java index 704f58530..9d4f442b4 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataClientServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataClientServiceImpl.java @@ -688,7 +688,7 @@ public class BasicdataClientServiceImpl extends BaseServiceImpl str = baseMapper.getFinallyClientCode(); + List str = baseMapper.getFinallyClientCode(tenantCode); if(!str.isEmpty()){ finaClientCode = str.get(0); }else{ From da734966128c93deea442f7013eacaa0f2d1a876 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" Date: Thu, 20 Jun 2024 18:16:21 +0800 Subject: [PATCH 16/16] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E9=A1=B5=E9=9D=A2=E8=A1=A8=E6=A0=BC=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../springblade/common/cache/CacheNames.java | 5 ++ .../java/com/logpm/basic/vo/TableSetVo.java | 28 +++++++++++ .../CommonFrontTableController.java | 50 +++++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100644 blade-service-api/logpm-basic-api/src/main/java/com/logpm/basic/vo/TableSetVo.java create mode 100644 blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/CommonFrontTableController.java diff --git a/blade-biz-common/src/main/java/org/springblade/common/cache/CacheNames.java b/blade-biz-common/src/main/java/org/springblade/common/cache/CacheNames.java index b2f1599ab..77adba6a8 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/cache/CacheNames.java +++ b/blade-biz-common/src/main/java/org/springblade/common/cache/CacheNames.java @@ -83,4 +83,9 @@ public interface CacheNames { * 模拟登录缓存对象 */ String LOCAL_SERVER_USER = "logpm:user:local:user:"; + + /** + * 模拟登录缓存对象 + */ + String USER_TABLE_SET = "user:table:set:"; } diff --git a/blade-service-api/logpm-basic-api/src/main/java/com/logpm/basic/vo/TableSetVo.java b/blade-service-api/logpm-basic-api/src/main/java/com/logpm/basic/vo/TableSetVo.java new file mode 100644 index 000000000..2fe6d3b70 --- /dev/null +++ b/blade-service-api/logpm-basic-api/src/main/java/com/logpm/basic/vo/TableSetVo.java @@ -0,0 +1,28 @@ +package com.logpm.basic.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * 前端页面 表格字段保存对象 + */ +@Data +@ApiModel(value = "TableSetVo", description = "表格设置对象") +public class TableSetVo implements Serializable { + + /** + * 表格key + */ + @ApiModelProperty(value = "表格key") + private String tableKey; + + /** + * 表格表头设置内容 + */ + @ApiModelProperty(value = "表格设置内容") + private String tableSetCongig; + +} diff --git a/blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/CommonFrontTableController.java b/blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/CommonFrontTableController.java new file mode 100644 index 000000000..6f7e50e7c --- /dev/null +++ b/blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/CommonFrontTableController.java @@ -0,0 +1,50 @@ +package com.logpm.basic.controller; + +import com.logpm.basic.vo.TableSetVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.common.cache.CacheNames; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.redis.cache.BladeRedis; +import org.springblade.core.secure.utils.AuthUtil; +import org.springblade.core.tool.api.R; +import org.springframework.web.bind.annotation.*; + +@RestController +@Slf4j +@AllArgsConstructor +@RequestMapping("/commonTable") +@Api(value = "自定义表格内容", tags = "自定义表格内容") +public class CommonFrontTableController extends BladeController { + + private final BladeRedis bladeRedis; + + @PostMapping("/saveTableSeting") + @ApiOperation(value = "保存表格配置", notes = "传入tableSetVo") + public R saveTableSeting(@RequestBody TableSetVo tableSetVo){ + + + try { + String key = CacheNames.tenantKey(AuthUtil.getTenantId(),CacheNames.USER_TABLE_SET+tableSetVo.getTableKey(),AuthUtil.getUserId().toString()); + bladeRedis.setEx(key, tableSetVo.getTableSetCongig(),3*30*24*60*60L); + return R.success("保存成功"); + } catch (Exception e) { + log.error("saveTableSeting",e); + return R.fail("保存失败"); + } + + } + + @GetMapping ("/getTableSeting") + @ApiOperation(value = "获取表格配置", notes = "tableKey") + public R getTableSeting(@RequestParam("tableKey") String tableKey){ + + String key = CacheNames.tenantKey(AuthUtil.getTenantId(),CacheNames.USER_TABLE_SET+tableKey,AuthUtil.getUserId().toString()); + Object o = bladeRedis.get(key); + return R.data(o); + + } + +}