diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/factorydata/FactoryDataConstants.java b/blade-biz-common/src/main/java/org/springblade/common/constant/factorydata/FactoryDataConstants.java
index c9540d3df..cdee1349d 100644
--- a/blade-biz-common/src/main/java/org/springblade/common/constant/factorydata/FactoryDataConstants.java
+++ b/blade-biz-common/src/main/java/org/springblade/common/constant/factorydata/FactoryDataConstants.java
@@ -68,6 +68,7 @@ public abstract class FactoryDataConstants {
/**
* 索菲亚工厂订单
*/
+ String SFY_NODE_DATA_PUSH = "factory.data.queue.sfy.nodeDataPush" + DEVAUTH;
String SFY_FACTORY_ORDER = "factory.data.queue.sfy.factoryOrder" + DEVAUTH;
/**
* 我乐工厂订单
@@ -117,6 +118,7 @@ public abstract class FactoryDataConstants {
/**
* 索菲亚工厂订单
*/
+ String SFY_NODE_DATA_PUSH = "sfy.nodeDataPush" + DEVAUTH;
String SFY_FACTORY_ORDER = "sfy.factoryOrder" + DEVAUTH;
/**
* 我乐工厂订单
diff --git a/blade-service-api/logpm-factory-data-api/src/main/java/com/logpm/factorydata/util/FactoryDataUtil.java b/blade-service-api/logpm-factory-data-api/src/main/java/com/logpm/factorydata/util/FactoryDataUtil.java
index 8e3935afb..6b3f206e9 100644
--- a/blade-service-api/logpm-factory-data-api/src/main/java/com/logpm/factorydata/util/FactoryDataUtil.java
+++ b/blade-service-api/logpm-factory-data-api/src/main/java/com/logpm/factorydata/util/FactoryDataUtil.java
@@ -25,6 +25,7 @@ public class FactoryDataUtil {
factorys.put(BrandEnums.ZB.getValue(), FactoryDataConstants.Mq.RoutingKeys.ZBOM_NODE_DATA_PUSH);
factorys.put(BrandEnums.LINSY.getValue(), FactoryDataConstants.Mq.RoutingKeys.LINSY_NODE_DATA_PUSH);
factorys.put(BrandEnums.OLO.getValue(), FactoryDataConstants.Mq.RoutingKeys.OLO_NODE_DATA_PUSH);
+ factorys.put(BrandEnums.SFY.getValue(), FactoryDataConstants.Mq.RoutingKeys.SFY_NODE_DATA_PUSH);
}
diff --git a/blade-service-api/logpm-factory-data-api/src/main/java/com/logpm/factorydata/vo/NodePushMsg.java b/blade-service-api/logpm-factory-data-api/src/main/java/com/logpm/factorydata/vo/NodePushMsg.java
index 5eee16854..f2f6ed2e2 100644
--- a/blade-service-api/logpm-factory-data-api/src/main/java/com/logpm/factorydata/vo/NodePushMsg.java
+++ b/blade-service-api/logpm-factory-data-api/src/main/java/com/logpm/factorydata/vo/NodePushMsg.java
@@ -55,6 +55,11 @@ public class NodePushMsg implements Serializable {
*/
private SignForStatusEnums signForStatusEnums;
+ /**
+ * 主单数据
+ */
+ private Object main;
+
/**
* 内容
*/
diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java
index 7de939d18..a887077e4 100644
--- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java
+++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineBillladingWaybillEntity.java
@@ -57,6 +57,9 @@ public class TrunklineBillladingWaybillEntity extends TenantEntity {
/** 提货费用 */
@ApiModelProperty(name = "提货费用",notes = "")
private BigDecimal billladingFee ;
+ /** 计划件数 */
+ @ApiModelProperty(name = "计划件数",notes = "")
+ private Integer planNum ;
}
diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingNumVO.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingNumVO.java
new file mode 100644
index 000000000..fb0cef0ca
--- /dev/null
+++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingNumVO.java
@@ -0,0 +1,15 @@
+package com.logpm.trunkline.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+@Data
+public class TrunklineBillladingNumVO implements Serializable {
+
+ private Integer num;
+ private BigDecimal weight;
+ private BigDecimal volume;
+
+}
diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingWaybillVO.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingWaybillVO.java
index 05f0b421e..01bb905d5 100644
--- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingWaybillVO.java
+++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineBillladingWaybillVO.java
@@ -32,5 +32,6 @@ public class TrunklineBillladingWaybillVO extends TrunklineBillladingWaybillEnti
private Integer stockCount;
private Long billladingWaybillId;
+ private Integer totalPlanNum;
}
diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseWaybillEntity.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseWaybillEntity.java
index d9f93f9f6..a02f1ba66 100644
--- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseWaybillEntity.java
+++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/entity/WarehouseWaybillEntity.java
@@ -489,4 +489,7 @@ public class WarehouseWaybillEntity extends TenantEntity {
@ApiModelProperty(value = "冻结时间 ")
private Date freezeTime;
+ @ApiModelProperty(value = "提货件数 ")
+ private Integer billladingNum;
+
}
diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseWaybillVO.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseWaybillVO.java
index abf5bf291..5ba77c4af 100644
--- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseWaybillVO.java
+++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseWaybillVO.java
@@ -39,6 +39,9 @@ public class WarehouseWaybillVO extends WarehouseWaybillEntity {
private Integer handleNum;
+ private Integer planNum;
+ private Integer totalPlanNum;
+
private Long waybillId;
}
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 8f3370086..30ebeae06 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
@@ -2038,7 +2038,7 @@
LEFT JOIN logpm_distribution_reservation_package AS ldrp ON ldrp.stock_article_id = ldrs.stock_article_id and ldrp.reservation_id = ldr.id
LEFT JOIN logpm_distribution_parcel_list AS ldpl ON ldpl.id = ldrp.parce_list_id and ldpl.stock_article_id = ldsa.id
WHERE
- lddl.id=#{deliveryId} AND ldrp.packet_bar_status in ('1','3') AND ldrs.is_zero = 0 AND ldpl.order_package_code = #{orderPackageCode}
+ lddl.id=#{deliveryId} AND ldrp.packet_bar_status in ('1','3') AND ldrs.is_zero = 0 AND ldpl.order_package_code = #{orderPackageCode} AND ldr.reservation_status != 40
@@ -82,9 +80,27 @@
update logpm_trunkline_billlading_waybill
- set is_deleted = 0
+ set is_deleted = 0,
+ plan_num = #{planNum}
where billlading_id = #{billladingId}
and waybill_no = #{waybillNo}
+
+
+
+
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingWaybillService.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingWaybillService.java
index c960ff80a..2251baff1 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingWaybillService.java
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineBillladingWaybillService.java
@@ -3,6 +3,7 @@ package com.logpm.trunkline.service;
import com.logpm.trunkline.entity.TrunklineBillladingEntity;
import com.logpm.trunkline.entity.TrunklineBillladingWaybillEntity;
import com.logpm.trunkline.entity.TrunklineWaybillOrderEntity;
+import com.logpm.trunkline.vo.TrunklineBillladingNumVO;
import com.logpm.trunkline.vo.TrunklineBillladingWaybillVO;
import org.springblade.core.mp.base.BaseService;
@@ -33,5 +34,9 @@ public interface ITrunklineBillladingWaybillService extends BaseService findNoFinishWaybillByBillladingId(Long billladingId);
+
+ TrunklineBillladingNumVO getNumVOByBillladingId(Long billladingId);
}
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java
index b1bf48a77..cee666a21 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java
@@ -925,6 +925,7 @@ public class TrunklineAdvanceServiceImpl extends BaseServiceImpl> parcelListEntityMap = parcelListEntityList.stream().collect(Collectors.groupingBy(DistributionParcelListEntity::getWaybillNumber));
+
+ List updateWaybillList = new ArrayList<>();
+ parcelListEntityMap.keySet().forEach(waybillNo->{
+ WarehouseWaybillEntity waybillEntity = waybillEntityMap.get(waybillNo);
+
+ if(!Objects.isNull(waybillEntity)){
+ List pl = parcelListEntityMap.get(waybillNo);
+ Integer size = 0;
+ if(!pl.isEmpty()){
+ size = pl.size();
+ }
+ waybillEntity.setStockCount(waybillEntity.getStockCount() + size);
+ updateWaybillList.add(waybillEntity);
+ }
+ });
+
+ warehouseWaybillClient.updateList(updateWaybillList);
+
orderCodeSet.forEach(orderCode->{
stockArticleClient.updateOrderInfo(orderCode,warehouseId);
});
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingPackageServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingPackageServiceImpl.java
index 1a2900a1a..7eef8e040 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingPackageServiceImpl.java
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingPackageServiceImpl.java
@@ -264,10 +264,10 @@ public class TrunklineBillladingPackageServiceImpl extends BaseServiceImpl totalCount){
- waybillEntity.setStockCount(totalCount);
+// waybillEntity.setStockCount(totalCount);
diff = totalCount - stockCount;
}else{
- waybillEntity.setStockCount(all);
+// waybillEntity.setStockCount(all);
diff = size;
}
Integer integer = waybillNoMNumMap.get(waybillNo);
@@ -281,65 +281,69 @@ public class TrunklineBillladingPackageServiceImpl extends BaseServiceImpl billladingWaybillEntityQueryWrapper = new QueryWrapper<>();
-// billladingWaybillEntityQueryWrapper.in("waybill_no",waybillNoSet)
-// .eq("billlading_id",billladingId)
-// .eq("is_deleted",0);
-//
-// List billladingWaybillEntityList = trunklineBillladingWaybillService.list(billladingWaybillEntityQueryWrapper);
-//
-// //把billladingWaybillEntityList转化成waybillNo为key的Map
-// Map billladingWaybillEntityMap = billladingWaybillEntityList.stream().collect(Collectors.toMap(TrunklineBillladingWaybillEntity::getWaybillNo, Function.identity()));
-//
-// List addList = new ArrayList<>();
-// List updateList = new ArrayList<>();
-//
-// final TrunklineBillladingWaybillEntity[] noWaybillData = {trunklineBillladingWaybillService.findNoWaybillNoData(billladingId)};
-//
-//
-// waybillNoSet.forEach(waybillNo -> {
-// Integer integer = waybillNoMNumMap.get(waybillNo);
-// TrunklineBillladingWaybillEntity billladingWaybillEntity = billladingWaybillEntityMap.get(waybillNo);
-// if(Objects.isNull(billladingWaybillEntity)){
-// //查询是否有一条无运单的数据
-// if(Objects.isNull(noWaybillData[0])){
-// noWaybillData[0] = new TrunklineBillladingWaybillEntity();
-// noWaybillData[0].setWarehouseId(warehouseId);
-// noWaybillData[0].setWarehouseName(warehouseEntity.getName());
-// noWaybillData[0].setBillladingId(billladingId);
-// noWaybillData[0].setBilladingCode(trunklineBillladingEntity.getBillladingCode());
-// noWaybillData[0].setWaybillNo("————");
-// noWaybillData[0].setRealNum(integer);
-// noWaybillData[0].setRealWeight(BigDecimal.ZERO);
-// noWaybillData[0].setRealVolume(BigDecimal.ZERO);
-// }else{
-// Integer realNum = noWaybillData[0].getRealNum();
-// noWaybillData[0].setRealNum(realNum+integer);
-// }
-// }else{
-// Integer realNum = billladingWaybillEntity.getRealNum();
-// billladingWaybillEntity.setRealNum(realNum + integer);
-// updateList.add(billladingWaybillEntity);
-// }
-// });
-//
-// addList.add(noWaybillData[0]);
-//
-// trunklineBillladingWaybillService.saveBatch(addList);
-// trunklineBillladingWaybillService.updateBatchById(updateList);
-//
-// TrunklineBillladingEntity billladingEntity = trunklineBillladingService.getById(billladingId);
-// if(!Objects.isNull(billladingEntity)){
-// int realNum = billladingEntity.getRealNum();
-// Integer all = waybillNoMNumMap.values().stream().reduce(Integer::sum).get();
-// billladingEntity.setRealNum(realNum+all);
-// trunklineBillladingService.updateById(billladingEntity);
-// }
+ QueryWrapper billladingWaybillEntityQueryWrapper = new QueryWrapper<>();
+ billladingWaybillEntityQueryWrapper.in("waybill_no",waybillNoSet)
+ .eq("billlading_id",billladingId)
+ .eq("is_deleted",0);
+
+ List billladingWaybillEntityList = trunklineBillladingWaybillService.list(billladingWaybillEntityQueryWrapper);
+
+ //把billladingWaybillEntityList转化成waybillNo为key的Map
+ Map billladingWaybillEntityMap = billladingWaybillEntityList.stream().collect(Collectors.toMap(TrunklineBillladingWaybillEntity::getWaybillNo, Function.identity()));
+ List addList = new ArrayList<>();
+ List updateList = new ArrayList<>();
+ TrunklineBillladingWaybillEntity noWaybillNoData = trunklineBillladingWaybillService.findNoWaybillNoData(billladingId);
+
+
+ for (String waybillNo : waybillNoSet) {
+ Integer integer = waybillNoMNumMap.get(waybillNo);
+ TrunklineBillladingWaybillEntity billladingWaybillEntity = billladingWaybillEntityMap.get(waybillNo);
+ if(Objects.isNull(billladingWaybillEntity)){
+ //查询是否有一条无运单的数据
+ if(Objects.isNull(noWaybillNoData)){
+ noWaybillNoData = new TrunklineBillladingWaybillEntity();
+ noWaybillNoData.setWarehouseId(warehouseId);
+ noWaybillNoData.setWarehouseName(warehouseEntity.getName());
+ noWaybillNoData.setBillladingId(billladingId);
+ noWaybillNoData.setBilladingCode(trunklineBillladingEntity.getBillladingCode());
+ noWaybillNoData.setWaybillNo("————");
+ noWaybillNoData.setRealNum(integer);
+ noWaybillNoData.setRealWeight(BigDecimal.ZERO);
+ noWaybillNoData.setRealVolume(BigDecimal.ZERO);
+ addList.add(noWaybillNoData);
+ }else{
+ Integer realNum = noWaybillNoData.getRealNum();
+ noWaybillNoData.setRealNum(realNum+integer);
+ updateList.add(noWaybillNoData);
+ }
+ }else{
+ Integer realNum = billladingWaybillEntity.getRealNum();
+ billladingWaybillEntity.setRealNum(realNum + integer);
+ updateList.add(billladingWaybillEntity);
+ }
+
+ }
+
+
+ if(!addList.isEmpty()){
+ trunklineBillladingWaybillService.saveBatch(addList);
+ }
+ trunklineBillladingWaybillService.updateBatchById(updateList);
+
+ TrunklineBillladingEntity billladingEntity = trunklineBillladingService.getById(billladingId);
+ if(!Objects.isNull(billladingEntity)){
+ int realNum = billladingEntity.getRealNum();
+ Integer all = waybillNoMNumMap.values().stream().reduce(Integer::sum).get();
+ billladingEntity.setRealNum(realNum+all);
+ trunklineBillladingService.updateById(billladingEntity);
+ }
+
+ List warehouseWaybillEntities = new ArrayList<>();
waybillEntityMap.keySet().forEach(waybillNo -> {
WarehouseWaybillEntity waybillEntity = waybillEntityMap.get(waybillNo);
- if(Objects.isNull(waybillEntity)){
+ if(!Objects.isNull(waybillEntity)){
Integer totalCount = waybillEntity.getTotalCount();
Integer stockCount = waybillEntity.getStockCount();
if(stockCount.equals(totalCount)){
@@ -360,10 +364,9 @@ public class TrunklineBillladingPackageServiceImpl extends BaseServiceImpl warehouseWaybillEntities = new ArrayList<>(waybillEntityMap.values());
warehouseWaybillClient.updateList(warehouseWaybillEntities);
//根据提货单id重新计算每个运单的费用
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java
index ef127277d..baf97c318 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingServiceImpl.java
@@ -105,6 +105,8 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl saveBillladingWaybillList = new ArrayList<>();
+ Map waybillBillladingNumMap = new HashMap<>();
//保存提货运单
List billladingWaybillList = billladingDTO.getBillladingWaybillList();
for (TrunklineBillladingWaybillVO billladingWaybillVO:billladingWaybillList){
@@ -116,8 +118,29 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl waybillIds = waybillBillladingNumMap.keySet();
+
+ List waybillEntityList = warehouseWaybillClient.findListByWaybillIds(new ArrayList<>(waybillIds));
+ waybillEntityList.forEach(waybillEntity -> {
+ Long waybillEntityId = waybillEntity.getId();
+ Integer planNum = waybillBillladingNumMap.get(waybillEntityId);
+ if(Objects.isNull(planNum)){
+ planNum = 0;
+ }
+ Integer billladingNum = waybillEntity.getBillladingNum();
+ if(Objects.isNull(billladingNum)){
+ billladingNum = 0;
+ }
+ waybillEntity.setBillladingNum(billladingNum+planNum);
+ });
+
+ warehouseWaybillClient.updateList(waybillEntityList);
TrunklineBillladingLogEntity logEntity = new TrunklineBillladingLogEntity();
@@ -200,18 +223,42 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl oldWaybillBillladingNumMap = new HashMap<>();
+ List billladingWaybillVOList = billladingWaybillService.findWaybillInfoListByBillladingId(billladingId);
+ billladingWaybillVOList.forEach(billladingWaybillVO -> {
+ oldWaybillBillladingNumMap.put(billladingWaybillVO.getWaybillId(),billladingWaybillVO.getPlanNum());
+ });
+
+ Set oldWaybillIdSet = oldWaybillBillladingNumMap.keySet();
+
+ List oldWaybillList = warehouseWaybillClient.findListByWaybillIds(new ArrayList<>(oldWaybillIdSet));
+ oldWaybillList.forEach(waybillEntity -> {
+ Long waybillEntityId = waybillEntity.getId();
+ Integer planNum = oldWaybillBillladingNumMap.get(waybillEntityId);
+ if(Objects.isNull(planNum)){
+ planNum = 0;
+ }
+ Integer billladingNum = waybillEntity.getBillladingNum();
+ if(Objects.isNull(billladingNum)){
+ billladingNum = 0;
+ }
+ waybillEntity.setBillladingNum(Math.max(billladingNum - planNum, 0));
+ });
+ warehouseWaybillClient.updateList(oldWaybillList);
//先删除所有对应的运单
billladingWaybillService.deletedByBillladingId(billladingId);
+ Map newWaybillBillladingNumMap = new HashMap<>();
//保存提货运单
List billladingWaybillList = billladingDTO.getBillladingWaybillList();
for (TrunklineBillladingWaybillVO billladingWaybillVO:billladingWaybillList){
String waybillNo = billladingWaybillVO.getWaybillNo();
+ Integer planNum = billladingWaybillVO.getPlanNum();
//查询运单以前是否挂在当前提货单下
TrunklineBillladingWaybillEntity one = billladingWaybillService.getOneByBillladingIdAndWaybillNo(billladingId,waybillNo);
if(!Objects.isNull(one)){
- billladingWaybillService.updateByBillladingIdAndWaybillNo(billladingId,waybillNo);
+ billladingWaybillService.updateByBillladingIdAndWaybillNo(billladingId,waybillNo,planNum);
}else{
TrunklineBillladingWaybillEntity billladingWaybillEntity = new TrunklineBillladingWaybillEntity();
BeanUtil.copy(billladingWaybillVO,billladingWaybillEntity);
@@ -223,8 +270,25 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl newWaybillIdSet = newWaybillBillladingNumMap.keySet();
+ List newWaybillList = warehouseWaybillClient.findListByWaybillIds(new ArrayList<>(newWaybillIdSet));
+ newWaybillList.forEach(waybillEntity -> {
+ Long waybillEntityId = waybillEntity.getId();
+ Integer planNum = newWaybillBillladingNumMap.get(waybillEntityId);
+ if(Objects.isNull(planNum)){
+ planNum = 0;
+ }
+ Integer billladingNum = waybillEntity.getBillladingNum();
+ if(Objects.isNull(billladingNum)){
+ billladingNum = 0;
+ }
+ waybillEntity.setBillladingNum(billladingNum + planNum);
+ });
+ warehouseWaybillClient.updateList(newWaybillList);
+
logEntity.setAfterOpreation(JSON.toJSONString(billladingEntity));
trunklineBillladingLogService.save(logEntity);
@@ -359,6 +423,28 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl billladingWaybillEntities = billladingWaybillService.findNoFinishWaybillByBillladingId(billladingId);
+ Map map = new HashMap<>();
+ billladingWaybillEntities.forEach(billladingWaybillEntity -> {
+ map.put(billladingWaybillEntity.getWaybillId(),billladingWaybillEntity.getPlanNum() - billladingWaybillEntity.getRealNum());
+ });
+
+ Set waybillIdSet = map.keySet();
+ List waybillEntityList = warehouseWaybillClient.findListByWaybillIds(new ArrayList<>(waybillIdSet));
+ waybillEntityList.forEach(waybillEntity -> {
+ Integer integer = map.get(waybillEntity.getId());
+ if(Objects.isNull(integer)){
+ integer = 0;
+ }
+ Integer billladingNum = waybillEntity.getBillladingNum();
+ if(Objects.isNull(billladingNum)){
+ billladingNum = 0;
+ }
+ waybillEntity.setBillladingNum(Math.max(billladingNum - integer, 0));
+ });
+ warehouseWaybillClient.updateList(waybillEntityList);
+
} else {
log.warn("##################updateBillladingStatus: 提货单不能更新为已结算 billladingStatus={}", billladingStatus);
throw new CustomerException(405, "提货单不能更新为提货中");
@@ -366,16 +452,16 @@ public class TrunklineBillladingServiceImpl extends BaseServiceImpl totalCount){
- log.warn("###############updateBillladingWaybillNum: 运单提货数量已经大于总数 waybillId={} totalCount={}",waybillId,totalCount);
- throw new CustomerException(405,"【"+waybillNo+"】运单提货数量已经大于总数");
+ if(enterNum > planNum){
+ log.warn("###############updateBillladingWaybillNum: 运单提货数量已经大于计划数 waybillId={} planNum={}",waybillId,planNum);
+ throw new CustomerException(405,"【"+waybillNo+"】运单提货数量已经大于计划数");
}
- BigDecimal enterWeight = billladingWaybillDTO.getEnterWeight();
- BigDecimal enterVolume = billladingWaybillDTO.getEnterVolume();
-
- stockNum = stockNum + enterNum;
- stockWeight = stockWeight.add(enterWeight);
- stockVolume = stockVolume.add(enterVolume);
billladingWaybillService.updateDataByBillladingWaybillId(billladingWaybillId,enterNum,enterWeight,enterVolume);
- WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillId(waybillId);
- waybillEntity.setStockCount(enterNum);
- waybillEntity.setStockWeight(enterWeight);
- waybillEntity.setStockVolume(enterVolume);
-
-
- if(totalCount.equals(enterNum)){
- waybillEntity.setWaybillStatus("10");
- try{
- TrunklineWaybillTrackEntity waybillTrackEntity = new TrunklineWaybillTrackEntity();
- waybillTrackEntity.setWarehouseId(billladingEntity.getWarehouseId());
- waybillTrackEntity.setWarehouseName(billladingEntity.getWarehouseName());
- waybillTrackEntity.setWaybillId(waybillId);
- waybillTrackEntity.setWaybillNo(waybillNo);
- waybillTrackEntity.setTrackType("20");
- waybillTrackEntity.setRefer("已入库");
- waybillTrackEntity.setOperationRemark("运单入库:"+enterNum+"/"+totalCount+",入库类型:【批量入库】,入库时间:"+ CommonUtil.dateToString(new Date()));
- trunklineWaybillTrackService.save(waybillTrackEntity);
- }catch (Exception e){
- log.warn("#################updateBillladingWaybillNum: 存入日志失败");
- }
- }
- warehouseWaybillClient.updateEntity(waybillEntity);
+// Integer diffNum = enterNum-realNum;
+// BigDecimal diffWeight = realWeight.subtract(enterWeight);
+// BigDecimal diffVolume = realVolume.subtract(enterVolume);
+
+// WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillId(waybillId);
+// waybillEntity.setStockCount(Math.max(waybillEntity.getStockCount() + diffNum, 0));
+// waybillEntity.setStockWeight(waybillEntity.getStockWeight().add(diffWeight).compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : diffWeight);
+// waybillEntity.setStockVolume(waybillEntity.getStockVolume().add(diffVolume).compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : diffVolume);
+
+// Integer totalCount = waybillEntity.getTotalCount();
+// Integer stockCount = waybillEntity.getStockCount();
+
+// if(totalCount.equals(stockCount)){
+// waybillEntity.setWaybillStatus("10");
+// try{
+// TrunklineWaybillTrackEntity waybillTrackEntity = new TrunklineWaybillTrackEntity();
+// waybillTrackEntity.setWarehouseId(billladingEntity.getWarehouseId());
+// waybillTrackEntity.setWarehouseName(billladingEntity.getWarehouseName());
+// waybillTrackEntity.setWaybillId(waybillId);
+// waybillTrackEntity.setWaybillNo(waybillNo);
+// waybillTrackEntity.setTrackType("20");
+// waybillTrackEntity.setRefer("已入库");
+// waybillTrackEntity.setOperationRemark("运单入库:"+enterNum+"/"+totalCount+",入库类型:【批量入库】,入库时间:"+ CommonUtil.dateToString(new Date()));
+// trunklineWaybillTrackService.save(waybillTrackEntity);
+// }catch (Exception e){
+// log.warn("#################updateBillladingWaybillNum: 存入日志失败");
+// }
+// }
+// warehouseWaybillClient.updateEntity(waybillEntity);
}
- billladingEntity.setRealNum(stockNum);
- billladingEntity.setRealWeight(stockWeight);
- billladingEntity.setRealVolume(stockVolume);
+ TrunklineBillladingNumVO numVO = billladingWaybillService.getNumVOByBillladingId(billladingId);
+
+ billladingEntity.setRealNum(numVO.getNum());
+ billladingEntity.setRealWeight(numVO.getWeight());
+ billladingEntity.setRealVolume(numVO.getVolume());
updateById(billladingEntity);
billladingWaybillService.updateBillladingFeeByBillladingId(billladingEntity);
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingWaybillServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingWaybillServiceImpl.java
index 2faf91918..84ef9dc35 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingWaybillServiceImpl.java
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineBillladingWaybillServiceImpl.java
@@ -6,6 +6,7 @@ import com.logpm.trunkline.entity.TrunklineBillladingWaybillEntity;
import com.logpm.trunkline.entity.TrunklineWaybillOrderEntity;
import com.logpm.trunkline.mapper.TrunklineBillladingWaybillMapper;
import com.logpm.trunkline.service.ITrunklineBillladingWaybillService;
+import com.logpm.trunkline.vo.TrunklineBillladingNumVO;
import com.logpm.trunkline.vo.TrunklineBillladingWaybillVO;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -134,8 +135,18 @@ public class TrunklineBillladingWaybillServiceImpl extends BaseServiceImpl findNoFinishWaybillByBillladingId(Long billladingId) {
+ return baseMapper.findNoFinishWaybillByBillladingId(billladingId);
+ }
+
+ @Override
+ public TrunklineBillladingNumVO getNumVOByBillladingId(Long billladingId) {
+ return baseMapper.getNumVOByBillladingId(billladingId);
}
}
diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
index 419caa9b5..d551729a9 100644
--- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
+++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
@@ -2133,6 +2133,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl map = new HashMap<>();
map.put("messageData", JSONUtil.toJsonStr(orderStatusDTO));
rabbitTemplate.convertAndSend(RabbitConstant.HWY_ORDER_STATUS_EXCHANGE, RabbitConstant.HWY_ORDER_STATUS_ROUTING, map);
+ NodePushMsg nodePushMsg = NodePushMsg.builder()
+ .operator(AuthUtil.getNickName())
+ .operatorTime(new Date())
+ .address("在【" + warehouseName + "】入库")
+ .brand(BrandEnums.getByValue(entity.getBrandName()))
+ .node(WorkNodeEnums.UNLOAD_INCOMING_WAREHOUSE)
+ .content(Arrays.asList(PushData.builder()
+ .packageCode(entity.getOrderPackageCode())
+ .warehouseName(warehouseName)
+ .orderCode(entity.getOrderCode())
+ .build()))
+ .build();
+ factoryDataMessageSender.sendNodeDataByBrand(nodePushMsg);
} catch (Exception e) {
log.error("推送卸车失败{}", e);
}
@@ -4565,6 +4598,23 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl map = new HashMap<>();
map.put("messageData", JSONUtil.toJsonStr(orderStatusDTO));
rabbitTemplate.convertAndSend(RabbitConstant.HWY_ORDER_STATUS_EXCHANGE, RabbitConstant.HWY_ORDER_STATUS_ROUTING, map);
+
+ NodePushMsg nodePushMsg = NodePushMsg.builder()
+ .operator(AuthUtil.getNickName())
+ .operatorTime(new Date())
+ .address("在【" + warehouseName + "】入库")
+ .brand(BrandEnums.getByValue(distributionParcelListEntity.getBrandName()))
+ .node(WorkNodeEnums.UNLOAD_INCOMING_WAREHOUSE)
+ .content(Arrays.asList(PushData.builder()
+ .packageCode(orderPackageCode)
+ .warehouseName(warehouseName)
+ .orderCode(orderCode)
+ .build()))
+ .build();
+ factoryDataMessageSender.sendNodeDataByBrand(nodePushMsg);
}
} catch (Exception e) {
log.error("入库推送失败:{}", e);
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseRetentionApiController.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseRetentionApiController.java
index 96f3bdc85..3ed511165 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseRetentionApiController.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/api/WarehouseRetentionApiController.java
@@ -53,7 +53,6 @@ public class WarehouseRetentionApiController {
}
try {
- //查询订制品打托列表
IPage pages = warehouseRetentionRecordService.retentionPackageList(retentionDTO);
return R.data(pages);
} catch (CustomerException e) {
diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayTypeServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayTypeServiceImpl.java
index 3be4ea2a1..4ea83a6ce 100644
--- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayTypeServiceImpl.java
+++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseTrayTypeServiceImpl.java
@@ -884,8 +884,7 @@ public class WarehouseTrayTypeServiceImpl extends BaseServiceImpl qw = new QueryWrapper<>();
- qw.eq("association_value",orderPackageCode)
- .eq("tenant_id","627683");
+ qw.eq("association_value",orderPackageCode);
WarehouseTrayGoodsEntity trayGoodsEntity = warehouseTrayGoodsService.getOne(qw);
if(!Objects.isNull(trayGoodsEntity)){
@@ -900,8 +899,7 @@ public class WarehouseTrayTypeServiceImpl extends BaseServiceImpl updownGoodsEntityQueryWrapper = new QueryWrapper<>();
- updownGoodsEntityQueryWrapper.eq("association_value",orderPackageCode)
- .eq("tenant_id","627683");
+ updownGoodsEntityQueryWrapper.eq("association_value",orderPackageCode);
WarehouseUpdownGoodsEntity updownGoodsEntity = warehouseUpdownGoodsService.getOne(updownGoodsEntityQueryWrapper);
if(!Objects.isNull(updownGoodsEntity)){
String positionCode = updownGoodsEntity.getPositionCode();
@@ -957,7 +955,6 @@ public class WarehouseTrayTypeServiceImpl extends BaseServiceImpl queryWrapper = new QueryWrapper<>();
queryWrapper.eq("tray_code",trayCode)
- .eq("tenant_id","627683")
.eq("is_deleted",0);
WarehouseTrayTypeEntity trayTypeEntity = baseMapper.selectOne(queryWrapper);
if(Objects.isNull(trayTypeEntity)){