|
|
@ -23,7 +23,9 @@ import com.logpm.distribution.service.IDistributionStockArticleService; |
|
|
|
import com.logpm.distribution.service.IDistributionStockListInfoService; |
|
|
|
import com.logpm.distribution.service.IDistributionStockListInfoService; |
|
|
|
import com.logpm.distribution.service.IDistributionStockListService; |
|
|
|
import com.logpm.distribution.service.IDistributionStockListService; |
|
|
|
import com.logpm.distribution.service.IQualityDeliverService; |
|
|
|
import com.logpm.distribution.service.IQualityDeliverService; |
|
|
|
|
|
|
|
import com.logpm.trunkline.entity.TrunklineWaybillOrderEntity; |
|
|
|
import com.logpm.trunkline.feign.ITrunklineAdvanceDetailClient; |
|
|
|
import com.logpm.trunkline.feign.ITrunklineAdvanceDetailClient; |
|
|
|
|
|
|
|
import com.logpm.trunkline.feign.ITrunklineWaybillOrderClient; |
|
|
|
import com.logpm.warehouse.entity.WarehouseWayBillDetail; |
|
|
|
import com.logpm.warehouse.entity.WarehouseWayBillDetail; |
|
|
|
import com.logpm.warehouse.entity.WarehouseWaybillEntity; |
|
|
|
import com.logpm.warehouse.entity.WarehouseWaybillEntity; |
|
|
|
import com.logpm.warehouse.feign.IWarehouseWaybillClient; |
|
|
|
import com.logpm.warehouse.feign.IWarehouseWaybillClient; |
|
|
@ -34,6 +36,7 @@ import org.jetbrains.annotations.Nullable; |
|
|
|
import org.springblade.common.enums.BizOperationEnums; |
|
|
|
import org.springblade.common.enums.BizOperationEnums; |
|
|
|
import org.springblade.common.enums.PackageTypeEnums; |
|
|
|
import org.springblade.common.enums.PackageTypeEnums; |
|
|
|
import org.springblade.core.redis.cache.BladeRedis; |
|
|
|
import org.springblade.core.redis.cache.BladeRedis; |
|
|
|
|
|
|
|
import org.springblade.core.secure.utils.AuthUtil; |
|
|
|
import org.springframework.stereotype.Component; |
|
|
|
import org.springframework.stereotype.Component; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
|
|
|
@ -87,6 +90,9 @@ public class QualityDeliverAddListener implements ReportService { |
|
|
|
@Resource |
|
|
|
@Resource |
|
|
|
private DistributionProperties destinationProperties; |
|
|
|
private DistributionProperties destinationProperties; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Resource |
|
|
|
|
|
|
|
private ITrunklineWaybillOrderClient waybillOrderClient; |
|
|
|
|
|
|
|
|
|
|
|
@Transactional |
|
|
|
@Transactional |
|
|
|
public void buildReport(String msg) { |
|
|
|
public void buildReport(String msg) { |
|
|
|
ReportQualityDeliverDTO bean = JSONUtil.toBean(msg, ReportQualityDeliverDTO.class); |
|
|
|
ReportQualityDeliverDTO bean = JSONUtil.toBean(msg, ReportQualityDeliverDTO.class); |
|
|
@ -265,6 +271,7 @@ public class QualityDeliverAddListener implements ReportService { |
|
|
|
|
|
|
|
|
|
|
|
private void buildCmpBasicInfo(QualityDeliverEntity qualityDeliverEntity, DistributionParcelListEntity parcelListEntity) { |
|
|
|
private void buildCmpBasicInfo(QualityDeliverEntity qualityDeliverEntity, DistributionParcelListEntity parcelListEntity) { |
|
|
|
if (ObjectUtil.isNotEmpty(parcelListEntity)) { |
|
|
|
if (ObjectUtil.isNotEmpty(parcelListEntity)) { |
|
|
|
|
|
|
|
String orderCode = parcelListEntity.getOrderCode(); |
|
|
|
// 品牌
|
|
|
|
// 品牌
|
|
|
|
qualityDeliverEntity.setBrandName(parcelListEntity.getBrandName()); |
|
|
|
qualityDeliverEntity.setBrandName(parcelListEntity.getBrandName()); |
|
|
|
// 商场id
|
|
|
|
// 商场id
|
|
|
@ -303,6 +310,8 @@ public class QualityDeliverAddListener implements ReportService { |
|
|
|
qualityDeliverEntity.setEndWarehouseInTime(parcelListEntity.getWarehouseEntryTimeEnd()); |
|
|
|
qualityDeliverEntity.setEndWarehouseInTime(parcelListEntity.getWarehouseEntryTimeEnd()); |
|
|
|
// 构建运单相关信息
|
|
|
|
// 构建运单相关信息
|
|
|
|
buildWaybillInfo(qualityDeliverEntity, waybillNumber); |
|
|
|
buildWaybillInfo(qualityDeliverEntity, waybillNumber); |
|
|
|
|
|
|
|
// 设置订单运单总数
|
|
|
|
|
|
|
|
buildOrderWaybillNumber(qualityDeliverEntity, orderCode, waybillNumber); |
|
|
|
} |
|
|
|
} |
|
|
|
// 暂存单查询结算品类
|
|
|
|
// 暂存单查询结算品类
|
|
|
|
// TrunklineAdvanceDetailEntity advanceDetailEntity = advanceDetailClient.findEntityByOrderPackageCode(qualityDeliverEntity.getOrderPackageCode());
|
|
|
|
// TrunklineAdvanceDetailEntity advanceDetailEntity = advanceDetailClient.findEntityByOrderPackageCode(qualityDeliverEntity.getOrderPackageCode());
|
|
|
@ -316,6 +325,22 @@ public class QualityDeliverAddListener implements ReportService { |
|
|
|
buildOrderInfo(qualityDeliverEntity, qualityDeliverEntity.getWarehouseId(), qualityDeliverEntity.getOrderCode()); |
|
|
|
buildOrderInfo(qualityDeliverEntity, qualityDeliverEntity.getWarehouseId(), qualityDeliverEntity.getOrderCode()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void buildOrderWaybillNumber(QualityDeliverEntity qualityDeliverEntity, String orderCode, String waybillNumber) { |
|
|
|
|
|
|
|
if (StrUtil.isNotEmpty(orderCode) && StrUtil.isNotEmpty(waybillNumber)) { |
|
|
|
|
|
|
|
String key = AuthUtil.getTenantId() + ":" + "logpm-distribution:" + "OrderWaybill:" + orderCode + "_" + waybillNumber; |
|
|
|
|
|
|
|
Integer totalNumber = redisCache.get(key); |
|
|
|
|
|
|
|
if (ObjectUtil.isNotEmpty(totalNumber)) { |
|
|
|
|
|
|
|
qualityDeliverEntity.setOrderWaybillNumber(totalNumber); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
TrunklineWaybillOrderEntity entityByWaybillNoAndOrderCode = waybillOrderClient.findEntityByWaybillNoAndOrderCode(waybillNumber, orderCode); |
|
|
|
|
|
|
|
if (ObjectUtil.isNotEmpty(entityByWaybillNoAndOrderCode)) { |
|
|
|
|
|
|
|
qualityDeliverEntity.setOrderWaybillNumber(entityByWaybillNoAndOrderCode.getTotalNumber()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
redisCache.setEx(key, entityByWaybillNoAndOrderCode.getTotalNumber(), 60L); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private void buildOrderInfo(QualityDeliverEntity qualityDeliverEntity, Long warehouseId, String orderCode) { |
|
|
|
private void buildOrderInfo(QualityDeliverEntity qualityDeliverEntity, Long warehouseId, String orderCode) { |
|
|
|
DistributionStockArticleEntity stockArticleEntity = getDistributionStockArticleEntity(warehouseId, orderCode); |
|
|
|
DistributionStockArticleEntity stockArticleEntity = getDistributionStockArticleEntity(warehouseId, orderCode); |
|
|
|
if (ObjectUtil.isNotEmpty(stockArticleEntity)) { |
|
|
|
if (ObjectUtil.isNotEmpty(stockArticleEntity)) { |
|
|
@ -342,6 +367,9 @@ public class QualityDeliverAddListener implements ReportService { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private DistributionStockArticleEntity getDistributionStockArticleEntity(Long warehouseId, String orderCode) { |
|
|
|
private DistributionStockArticleEntity getDistributionStockArticleEntity(Long warehouseId, String orderCode) { |
|
|
|
|
|
|
|
if (StrUtil.isEmpty(orderCode)) { |
|
|
|
|
|
|
|
return null; |
|
|
|
|
|
|
|
} |
|
|
|
String key = "report:qualityDeliver:stockArticle:" + warehouseId + "_" + orderCode; |
|
|
|
String key = "report:qualityDeliver:stockArticle:" + warehouseId + "_" + orderCode; |
|
|
|
String obj = redisCache.get(key); |
|
|
|
String obj = redisCache.get(key); |
|
|
|
if (StrUtil.isNotEmpty(obj)) { |
|
|
|
if (StrUtil.isNotEmpty(obj)) { |
|
|
|