From 8be6118aad81c6b23ea10015b30b049be4b4e1e4 Mon Sep 17 00:00:00 2001 From: linfso Date: Mon, 30 Jun 2025 22:31:27 +0800 Subject: [PATCH] md --- .../web/emis/EmisTmsCostFeeController.java | 2 +- .../emis/service/IEmisTmsCostFeeService.java | 2 +- .../impl/EmisTmsCostFeeServiceImpl.java | 34 +++++++++++-------- .../mapper/EmisTmsCostFeeSplitMapper.xml | 2 +- 4 files changed, 22 insertions(+), 18 deletions(-) diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeController.java index 48b97e022..21ee2c983 100644 --- a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeController.java +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeController.java @@ -192,7 +192,7 @@ public class EmisTmsCostFeeController extends BaseController public AjaxResult reCalcSplitCostFee(@RequestBody EmisTmsCostFee emisTmsCostFee) { try { - return toAjax(emisTmsCostFeeService.reCalcSplitCostFee(emisTmsCostFee.getCostNo(),null)); + return toAjax(emisTmsCostFeeService.reCalcSplitCostFee(emisTmsCostFee.getCostNo(),null,true)); }catch(EmisBizError ex){ ex.printStackTrace(); return AjaxResult.error("("+ex.getErrorCode()+")"+ex.getMessage()); diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeService.java index e3e4e0eee..8b3fefab1 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeService.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeService.java @@ -100,7 +100,7 @@ public interface IEmisTmsCostFeeService * @return * @throws EmisBizError */ - public int reCalcSplitCostFee(String costNo,String billCode) throws EmisBizError; + public int reCalcSplitCostFee(String costNo,String billCode,boolean isMerge) throws EmisBizError; /** 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 99aa6b562..ff597b798 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 @@ -419,12 +419,14 @@ public class EmisTmsCostFeeServiceImpl implements IEmisTmsCostFeeService if(!CollectionUtil.isEmpty(listBillCodeRel)){ for(CostFeeWaybillRel item:listBillCodeRel){ try { - reCalcSplitCostFee(item.getCostNo(),billCode); + reCalcSplitCostFee(item.getCostNo(),billCode,false); }catch (Exception ex){ ex.printStackTrace(); } } } + mergeCostFeeByBillCode(billCode); + return 1; } @@ -441,7 +443,7 @@ public class EmisTmsCostFeeServiceImpl implements IEmisTmsCostFeeService if(!CollectionUtil.isEmpty(listCostFee)){ for(EmisTmsCostFee item:listCostFee){ try { - reCalcSplitCostFee(item.getCostNo(),null); + reCalcSplitCostFee(item.getCostNo(),null,true); }catch (Exception ex){ ex.printStackTrace(); } @@ -549,7 +551,7 @@ public class EmisTmsCostFeeServiceImpl implements IEmisTmsCostFeeService * @throws EmisBizError */ @Override - public int reCalcSplitCostFee(String costNo,String calcBillCode) throws EmisBizError { + public int reCalcSplitCostFee(String costNo,String calcBillCode,boolean isMerge) throws EmisBizError { // 获取最新的数据 EmisTmsCostFee oldCostFee = emisTmsCostFeeMapper.selectEmisTmsCostFeeByCostNo(costNo); // /* 总票数 总重量 总体积 */ @@ -695,21 +697,23 @@ public class EmisTmsCostFeeServiceImpl implements IEmisTmsCostFeeService emisTmsCostFeeMapper.updateEmisTmsCostFee(emisTmsCostFee); // 合并单个运单费用 - for (CostFeeWaybillRel billCodeItem: listBillCodeRel) { - try { + if(isMerge) { + for (CostFeeWaybillRel billCodeItem : listBillCodeRel) { + try { - String billCode=billCodeItem.getBillCode(); - // 如果指定单号,则其他单号做过滤 - if(!StringUtils.isEmpty(calcBillCode)) { - if(!billCode.equals(calcBillCode)){ - continue; + String billCode = billCodeItem.getBillCode(); + // 如果指定单号,则其他单号做过滤 + if (!StringUtils.isEmpty(calcBillCode)) { + if (!billCode.equals(calcBillCode)) { + continue; + } } + + mergeCostFeeByBillCode(billCode); + + } catch (Exception ex) { + ex.printStackTrace(); } - - mergeCostFeeByBillCode(billCode); - - }catch (Exception ex){ - ex.printStackTrace(); } } return 1; diff --git a/emis-biz/src/main/resources/mapper/EmisTmsCostFeeSplitMapper.xml b/emis-biz/src/main/resources/mapper/EmisTmsCostFeeSplitMapper.xml index c32dd8bb7..9a635a5bf 100644 --- a/emis-biz/src/main/resources/mapper/EmisTmsCostFeeSplitMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisTmsCostFeeSplitMapper.xml @@ -115,7 +115,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"