From 8472f435e5b8877ce3c73783ea888e11f01f3100 Mon Sep 17 00:00:00 2001 From: linfso Date: Mon, 29 Apr 2024 15:07:54 +0800 Subject: [PATCH] md --- .../erp/web/emis/EmisWaybillController.java | 8 +++++++- .../emis/domain/exception/CalcFeeException.java | 17 +++++++++++++++++ .../erp/emis/service/IEmisWaybillService.java | 3 ++- .../service/impl/EmisWaybillServiceImpl.java | 7 ++++--- 4 files changed, 30 insertions(+), 5 deletions(-) create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/domain/exception/CalcFeeException.java diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillController.java index 40da474f5..eb0bee976 100644 --- a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillController.java +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillController.java @@ -28,6 +28,7 @@ import com.xdadan.erp.common.utils.DBUtil; import com.xdadan.erp.emis.domain.EmisWaybillAttachment; import com.xdadan.erp.emis.domain.EmisWaybillCargo; import com.xdadan.erp.emis.domain.EmisWaybillFeeitem; +import com.xdadan.erp.emis.domain.exception.CalcFeeException; import com.xdadan.erp.emis.domain.vo.*; import com.xdadan.erp.emis.service.*; import org.apache.commons.lang3.StringUtils; @@ -129,7 +130,12 @@ public class EmisWaybillController extends BaseController jObjFee.put("feeList",feeItem.cvtToVoList(emisWaybillSave.getFeeitemList())); return AjaxResult.success("计算成功", jObjFee); - }catch (Exception ex){ + } + catch (CalcFeeException ex){ + ex.printStackTrace(); + return AjaxResult.error("("+ex.getErrorCode()+")"+ex.getMessage()); + } + catch (Exception ex){ ex.printStackTrace(); return AjaxResult.error("服务器异常,联系客服"); } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/exception/CalcFeeException.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/exception/CalcFeeException.java new file mode 100644 index 000000000..b4c7af0b5 --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/exception/CalcFeeException.java @@ -0,0 +1,17 @@ +package com.xdadan.erp.emis.domain.exception; + +public class CalcFeeException extends Exception { + + private String errorCode; + + public CalcFeeException(String errorCode,String message) { + super(message); + this.errorCode = errorCode; + } + + public String getErrorCode() { + return errorCode; + + } + +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillService.java index eb8c6b680..f3aa658f6 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillService.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillService.java @@ -12,6 +12,7 @@ package com.xdadan.erp.emis.service; import java.util.List; import com.xdadan.erp.emis.domain.EmisWaybill; import com.xdadan.erp.emis.domain.EmisWaybillFeeitem; +import com.xdadan.erp.emis.domain.exception.CalcFeeException; import com.xdadan.erp.emis.domain.vo.WaybillOrder; /** @@ -105,7 +106,7 @@ public interface IEmisWaybillService //计算运单费用 - public void calcWaybillFee(EmisWaybill emisWaybill) throws Exception; + public void calcWaybillFee(EmisWaybill emisWaybill) throws CalcFeeException; // 计算结算重量 diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillServiceImpl.java index 236a54b3f..53c239a4c 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillServiceImpl.java @@ -28,6 +28,7 @@ import com.xdadan.erp.common.utils.DBUtil; import com.xdadan.erp.common.utils.DateUtils; import com.xdadan.erp.common.utils.SecurityUtils; import com.xdadan.erp.emis.domain.*; +import com.xdadan.erp.emis.domain.exception.CalcFeeException; import com.xdadan.erp.emis.domain.vo.*; import com.xdadan.erp.emis.mapper.EmisTransLineMapper; import com.xdadan.erp.emis.service.*; @@ -354,7 +355,7 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb * @return */ @Override - public void calcWaybillFee(EmisWaybill emisWaybill) throws Exception { + public void calcWaybillFee(EmisWaybill emisWaybill) throws CalcFeeException { /** * 计算逻辑,获取表达式进行计算 @@ -366,7 +367,7 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb emisWaybill.getCalcFeeType() ) ){ - throw new Exception("参数不整取不能计算"); + throw new CalcFeeException("E3001","参数不完整"); } List emisQuotePriceList=getValidQuotePriceList(emisWaybill.getProductType(), @@ -375,7 +376,7 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb if(CollectionUtils.isEmpty(emisQuotePriceList)){ - throw new Exception("计算失败,无有效资费"); + throw new CalcFeeException("E3002","报价未配置"); } // 根据表达式计算费用