From f7f6be2e6da0ed30e98b1e9a50c43491bd0d5422 Mon Sep 17 00:00:00 2001 From: linfso Date: Fri, 4 Jul 2025 14:10:04 +0800 Subject: [PATCH] md --- .../impl/EmisTmsCostFeeServiceImpl.java | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeServiceImpl.java index 2cdc38550..06393aeec 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeServiceImpl.java @@ -275,6 +275,8 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT // bug:1682 (1)快递类型的货(取件费):寄件国家:中国,取件方式:上门取件,取件成本:首重1Kg 10元,续重1kg 1元 // 只有主单才会计算取件费 + // 先删除取件费,再计算 + emisTmsCostFeeSplitMapper.deleteByBillCodeAndFeeType(mainBillCode,"1001"); if("2".equals(mainWaybill.getPickupMethod()) && !"1".equals(mainWaybill.getBlVirtual()) && "0086".equals(mainWaybill.getSendCountry()) ){ @@ -352,15 +354,14 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT splitItem.setCnyFee(splitCostFee); // 插入分摊明细数据 - // 先删除取件费,再插入 - emisTmsCostFeeSplitMapper.deleteByBillCodeAndFeeType(mainBillCode,"1001"); - emisTmsCostFeeSplitMapper.insertEmisTmsCostFeeSplit(splitItem); } // 计算末端派送费 // (3)快递类型货(派送费):目的国家(柬埔寨、缅甸、孟加拉、越南、老挝)末端派送费 首重1Kg 2美金 15元,续重1kg 0.2美金/1.5元; // 派送 + // 先删除派送费 + emisTmsCostFeeSplitMapper.deleteByBillCodeAndFeeType(mainBillCode,"1003"); if( "1".equals(mainWaybill.getCarryType()) // 快递 && "1".equals(mainWaybill.getDispatchMethod()) // 派送 @@ -449,15 +450,15 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT splitItem.setTransCostFee(splitCostFee); splitItem.setCnyFee(splitCostFee); - // 先删除,再插入 - emisTmsCostFeeSplitMapper.deleteByBillCodeAndFeeType(mainBillCode,"1003"); - // 插入分摊明细数据 emisTmsCostFeeSplitMapper.insertEmisTmsCostFeeSplit(splitItem); } // 网点机场短驳费 - 1002 // (2)新创建表(短驳费):机场到网点之间的距离表;记录 起始网点、下一网点、开始日期、结束日期、公里数、单价、供应商、计费类型:按公斤 + // 删除短驳费 + emisTmsCostFeeSplitMapper.deleteByBillCodeAndFeeType(billCode,"1002"); + // 重新计算短驳费 List fixedQuotePrice1002List=emisTmsCostQuotePriceMapper.matchBatchFixedQuotePriceByBillCode(billCode,"1002",1); if(!CollectionUtils.isEmpty(fixedQuotePrice1002List)){ // 检查重复 @@ -539,6 +540,9 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT } // 机场提货费操作费 - 1004 + // 删除提货费 + emisTmsCostFeeSplitMapper.deleteByBillCodeAndFeeType(billCode,"1004"); + // 计算提货费 List fixedQuotePrice1004List=emisTmsCostQuotePriceMapper.matchBatchFixedQuotePriceByBillCode(billCode,"1004",-1); if(!CollectionUtils.isEmpty(fixedQuotePrice1004List)){ @@ -798,14 +802,12 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT } - - - /** - * 成本分摊重算 - * @param costNo - * @return - * @throws EmisBizError - */ + /** + * 成本分摊重算 + * @param costNo + * @return + * @throws EmisBizError + */ @Override public void reCalcCostFeeOnlyOne(String costNo,String calcBillCode,boolean isMerge) throws EmisBizError { long start = System.currentTimeMillis(); @@ -1040,8 +1042,6 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT updProfit.setBillProfit(emisTmsCostProfit.getBillFee().subtract(updProfit.getCostFee())); emisTmsCostProfitMapper.updateEmisTmsCostProfit(updProfit); -// log.info("==>费用计算:==>:{}:{}-{}={}",mainBillCode+":"+billCode,updProfit.getBillFee(),updProfit.getCostFee(),updProfit.getBillProfit()); - }