From abb51ab390fa6cf9bf3747f57576c1507f89ae00 Mon Sep 17 00:00:00 2001 From: wujianwei <wjw@11.com> Date: 星期五, 05 九月 2025 17:59:19 +0800 Subject: [PATCH] 修改接口 --- quartz/src/main/java/com/ruoyi/quartz/task/SettlementTask.java | 37 +++++++++++++++++++++++++++++++++++-- 1 files changed, 35 insertions(+), 2 deletions(-) diff --git a/quartz/src/main/java/com/ruoyi/quartz/task/SettlementTask.java b/quartz/src/main/java/com/ruoyi/quartz/task/SettlementTask.java index 3b95939..96d988e 100644 --- a/quartz/src/main/java/com/ruoyi/quartz/task/SettlementTask.java +++ b/quartz/src/main/java/com/ruoyi/quartz/task/SettlementTask.java @@ -3,12 +3,15 @@ import cn.hutool.core.collection.CollectionUtil; import com.ruoyi.common.utils.RandomUtils; import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.common.utils.reflect.ReflectUtils; import com.ruoyi.cwgl.domain.EstimatedReceivable; import com.ruoyi.cwgl.domain.PendingSettlementBusiness; import com.ruoyi.cwgl.domain.ReceivableLineTruckPriceRule; import com.ruoyi.cwgl.service.IEstimatedReceivableService; import com.ruoyi.cwgl.service.IPendingSettlementBusinessService; import com.ruoyi.cwgl.service.impl.ExactPricingRuleMatcher; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -26,7 +29,7 @@ @Component("settlementTask") public class SettlementTask { - + private static Logger logger = LoggerFactory.getLogger(SettlementTask.class); @Autowired private IPendingSettlementBusinessService pendingSettlementBusinessService; @Autowired @@ -48,8 +51,14 @@ List<EstimatedReceivable> estimatedReceivables = new ArrayList<>(); for (PendingSettlementBusiness pendingSettlementBusiness : pendingSettlementBusinesses) { + pendingSettlementBusiness.setIsCreate(0); + pendingSettlementBusiness.setEstimatedTotalCost(BigDecimal.ZERO); + + pendingSettlementBusiness.setEstimatedTotalIncome(BigDecimal.ZERO); ReceivableLineTruckPriceRule exactMatchingRule = ExactPricingRuleMatcher.findExactMatchingRule(receivableLineTruckPriceRules, pendingSettlementBusiness.getCustomerName(), pendingSettlementBusiness.getDepartureLocation(), pendingSettlementBusiness.getArrivalLocation(), pendingSettlementBusiness.getVehicleType()); if (exactMatchingRule!=null) { + //搴旀敹鏁版嵁 + pendingSettlementBusiness.setIsIncomeMatched(1); pendingSettlementBusiness.setEstimatedTotalIncome(exactMatchingRule.getFreight()); pendingSettlementBusiness.setCreateTime(date); EstimatedReceivable estimatedReceivable = new EstimatedReceivable(); @@ -62,18 +71,42 @@ estimatedReceivable.setEstimatedAmount(exactMatchingRule.getFreight()); estimatedReceivable.setCurrency("浜烘皯甯�"); estimatedReceivable.setIsConfirmed(1); - + estimatedReceivable.setFeeType(0); + estimatedReceivable.setRelatedBillStatus(0); estimatedReceivables.add(estimatedReceivable); } ReceivableLineTruckPriceRule exactMatchingRule2 = ExactPricingRuleMatcher.findExactMatchingRule(payableLineTruckPriceRules, pendingSettlementBusiness.getCarrierName(), pendingSettlementBusiness.getDepartureLocation(), pendingSettlementBusiness.getArrivalLocation(), pendingSettlementBusiness.getVehicleType()); if (exactMatchingRule2!=null) { + pendingSettlementBusiness.setIsCostMatched(1); pendingSettlementBusiness.setEstimatedTotalCost(exactMatchingRule2.getFreight()); + pendingSettlementBusiness.setCreateTime(date); + + EstimatedReceivable estimatedReceivable = new EstimatedReceivable(); + estimatedReceivable.setFeeSystemNo("YF"+datePart+RandomUtils.random(5)); + estimatedReceivable.setDispatchNo(pendingSettlementBusiness.getDispatchNo()); + estimatedReceivable.setCustomerName(pendingSettlementBusiness.getCustomerName()); + estimatedReceivable.setProjectName(pendingSettlementBusiness.getProjectName()); + estimatedReceivable.setOrderDate(pendingSettlementBusiness.getCreatedTime()); + estimatedReceivable.setFeeName("杩愯垂"); + estimatedReceivable.setEstimatedAmount(exactMatchingRule2.getFreight()); + estimatedReceivable.setCurrency("浜烘皯甯�"); + estimatedReceivable.setIsConfirmed(1); + estimatedReceivable.setFeeType(1); + estimatedReceivables.add(estimatedReceivable); } } if (CollectionUtil.isNotEmpty(estimatedReceivables)){ estimatedReceivableService.insertEstimatedReceivableBatch(estimatedReceivables); } pendingSettlementBusinessService.insertPendingSettlement(pendingSettlementBusinesses); + + //鏇存柊鍚屾鐘舵�佺敤 + Integer[] ids = pendingSettlementBusinesses.stream().map(PendingSettlementBusiness::getServiceId).toArray(Integer[]::new); + int i = pendingSettlementBusinessService.updeteCwData(ids); + if (i>0){ + logger.info("鍚屾鐘舵�佹洿鏂版垚鍔�"); + } + } -- Gitblit v1.8.0