Browse Source

商市配备货列表SQL优化

dist.1.3.0
汤建军 8 months ago
parent
commit
3853429415
  1. 49
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml
  2. 6
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  3. 4
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java

49
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml

@ -242,21 +242,44 @@
where is_deleted = 0
</select>
<select id="pageList" resultType="com.logpm.distribution.vo.DistributionStockupVO">
select DISTINCT lds.id,lds.stockup_date stockupDate, lds.stockup_user stockupUser, lds.stockup_status
stockupStatus, lds.stockup_area stockupArea,
lds.assign_status assignStatus, lds.goods_area_id goodsAreaId, lds.forklift_name forkliftName,
lds.loader_name loaderName, lds.forklift_id forkliftId,lds.loader_id loaderId,lds.fix_time
fixTime,lds.assign_time assignTime,
lds.type_service typeService,lds.outbound_date outboundDate,lds.stockup_code stockupCode,
COALESCE(GROUP_CONCAT(DISTINCT ldpl.goods_allocation SEPARATOR ','), '') stockipAllocation,
COALESCE(GROUP_CONCAT(DISTINCT ldpl.pallet SEPARATOR ','), '') pallet,
SELECT DISTINCT
lds.id,
lds.stockup_date stockupDate,
lds.stockup_user stockupUser,
lds.stockup_status stockupStatus,
lds.stockup_area stockupArea,
lds.assign_status assignStatus,
lds.goods_area_id goodsAreaId,
lds.forklift_name forkliftName,
lds.loader_name loaderName,
lds.forklift_id forkliftId,
lds.loader_id loaderId,
lds.fix_time fixTime,
lds.assign_time assignTime,
lds.type_service typeService,
lds.outbound_date outboundDate,
lds.stockup_code stockupCode,
GROUP_CONCAT((
SELECT
group_concat( DISTINCT pallet )
FROM
logpm_distribution_parcel_list
WHERE
id IN ( SELECT parce_list_id FROM logpm_distribution_reservation_package WHERE reservation_id = ldr.id AND packet_bar_status != 2 ))) AS pallet,
GROUP_CONCAT((
SELECT
group_concat( DISTINCT goods_allocation )
FROM
logpm_distribution_parcel_list
WHERE
id IN ( SELECT parce_list_id FROM logpm_distribution_reservation_package WHERE reservation_id = ldr.id AND packet_bar_status != 2 ))) AS stockipAllocation,
COALESCE ( group_concat( DISTINCT ldr.consignee SEPARATOR ',' ), '' ) AS consignee
from logpm_distribution_stockup lds
LEFT JOIN logpm_distribution_stockup_info ldsi on ldsi.stockup_id =lds.id
FROM
logpm_distribution_stockup lds
LEFT JOIN logpm_distribution_stockup_info ldsi ON ldsi.stockup_id = lds.id
LEFT JOIN logpm_distribution_reservation ldr ON ldsi.reservation_id = ldr.id
LEFT JOIN logpm_distribution_reservation_package ldrp on ldrp.reservation_id = ldsi.reservation_id
LEFT JOIN logpm_distribution_parcel_list ldpl on ldpl.id = ldrp.parce_list_id
LEFT JOIN logpm_distribution_reservation_package ldrp ON ldrp.reservation_id = ldsi.reservation_id
LEFT JOIN logpm_distribution_parcel_list ldpl ON ldpl.id = ldrp.parce_list_id
<where>
lds.is_deleted = 0 AND ldsi.stock_status != 4

6
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

@ -3224,6 +3224,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
//这里需要先进行是否满足
parcelNumberVOS.forEach(p -> {
if (Func.isNotEmpty(p.getReservationNum()) && p.getReservationNum() > 0) {
if (p.getReservationNum() > p.getQuantity()){
throw new RuntimeException(s.getOrderCode()+p.getFirsts() + "可用数量不足!!!");
}
DistributionReservationZeroPackageEntity distributionReservationZeroPackageEntity = new DistributionReservationZeroPackageEntity();
distributionReservationZeroPackageEntity.setZeroPackageStatus(ReservationOrderStatusConstant.zhengchang.getValue());
distributionReservationZeroPackageEntity.setQuantity(p.getReservationNum());
@ -3391,6 +3394,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
if (Func.isNotEmpty(oldZeroPackageList.get(pn.getParcelListId()))) {
//数量修改
if (Func.isNotEmpty(pn.getReservationNum()) && pn.getReservationNum() > 0) {
if (pn.getReservationNum() > pn.getQuantity()){
throw new RuntimeException(s.getOrderCode()+pn.getFirsts() + "可用数量不足!!!");
}
//修改该预约数量信息,维护零担订单品类数量信息
DistributionReservationZeroPackageEntity distributionReservationZeroPackageEntity = oldZeroPackageList.get(pn.getParcelListId()).get(0);
//维护零担品类

4
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java

@ -1193,7 +1193,6 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
if (Func.isNotEmpty(builder)){
String string = builder.deleteCharAt(builder.length() - 1).toString();
warehouseUpdownTypeClient.downPackageOrDelTray(string, myCurrentWarehouse.getId(), "签收下架解托");
}
if (!logList.isEmpty()) {
trunklinePackageTrackLogClient.addPackageTrackLog(logList);
@ -3416,6 +3415,9 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl<Distrilb
});
if (n.get()) {
distributionBillLadingScanService.save(distributionBillLadingScan);
//进行下架解托
warehouseUpdownTypeClient.downPackageOrDelTray(distributionBillLadingScan.getPacketBarCode(),myCurrentWarehouse.getId(),"自提下架解托");

Loading…
Cancel
Save