diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybillFeeitem.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybillFeeitem.java
index f1ea1e82b..152fa9202 100644
--- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybillFeeitem.java
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybillFeeitem.java
@@ -2,7 +2,7 @@
* @Project: emis
* @Title: EmisWaybillFeeitem.java
* @author linfso
- * @date 2024-04-27 13:18:17
+ * @date 2024-05-16 01:52:04
* @Copyright: ShangHai Duta 2022 All rights reserved.
* @version v1.0
* @Description:
运单费用条目 实体类
@@ -26,7 +26,7 @@ import lombok.Data;
* @ClassName EmisWaybillFeeitem
* @Description 运单费用条目
* @author linfso
- * @date 2024-04-27 13:18:17
+ * @date 2024-05-16 01:52:04
*/
@Data
public class EmisWaybillFeeitem extends BaseEntity
@@ -43,6 +43,8 @@ public class EmisWaybillFeeitem extends BaseEntity
private String feeName;
/* 费用值 */
private BigDecimal fee;
+ /* 实收费用 */
+ private BigDecimal realFee;
/* 费用币种 */
private String currency;
/* 报价ID */
@@ -51,6 +53,8 @@ public class EmisWaybillFeeitem extends BaseEntity
private Long exprId;
/* 计算公式 */
private String calcExp;
+ /* 首重费 */
+ private BigDecimal initialWeightFee;
/* 续重单价 */
private BigDecimal addWeightPrice;
/* 排序 */
diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/vo/FeeItem.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/vo/FeeItem.java
index b0d4a2bc4..b2c8718fb 100644
--- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/vo/FeeItem.java
+++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/vo/FeeItem.java
@@ -30,6 +30,15 @@ public class FeeItem extends VoBase {
/* 续重单价 */
private BigDecimal addWeightPrice;
+ /* 实收费用 */
+ private BigDecimal realFee;
+ /* 首重费 */
+ private BigDecimal initialWeightFee;
+
+
+
+
+
@Override
public FeeItem toVo(EmisWaybillFeeitem dbItem) {
FeeItem voItem = new FeeItem();
@@ -42,7 +51,9 @@ public class FeeItem extends VoBase {
voItem.setOrderNum(dbItem.getOrderNum());
voItem.setCalcExp(dbItem.getCalcExp());
voItem.setAddWeightPrice(dbItem.getAddWeightPrice());
-// voItem.setRemark(dbItem.getRemark());
+ voItem.setRealFee(dbItem.getRealFee());
+ voItem.setInitialWeightFee(dbItem.getInitialWeightFee());
+ voItem.setRemark(dbItem.getRemark());
return voItem;
}
@@ -58,6 +69,8 @@ public class FeeItem extends VoBase {
dbItem.setOrderNum(voItem.getOrderNum());
dbItem.setCalcExp(voItem.getCalcExp());
dbItem.setAddWeightPrice(voItem.getAddWeightPrice());
+ dbItem.setRealFee(voItem.getRealFee());
+ dbItem.setInitialWeightFee(voItem.getInitialWeightFee());
dbItem.setRemark(voItem.getRemark());
return dbItem;
}
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 f205151b5..18301638a 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
@@ -506,17 +506,24 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
String calcExp = exprItem.getCalculateExpression();
feeItem.setCalcExp(calcExp);
feeItem.setAddWeightPrice(BigDecimal.valueOf(exprItem.getAdditionalWeight()));
+ feeItem.setInitialWeightFee(BigDecimal.valueOf(exprItem.getInitialWeight()));
+
+
+ String calcExprStr=calcExp.replaceAll("w",emisWaybill.getSettlementWeight().toString())
+ .replaceAll("s",exprItem.getInitialWeight().toString())
+ .replaceAll("d",exprItem.getAdditionalWeight().toString());
- String calcExprStr=calcExp.replaceAll("w",emisWaybill.getSettlementWeight().toString());
log.info("计算公式:"+calcExprStr+",重量:"+emisWaybill.getSettlementWeight());
double fee = Double.valueOf(AviatorEvaluator.execute(calcExprStr).toString());
fee=WaybillHelper.calcSettledFee(fee,quoteItem.getPriceType());
feeItem.setFee(BigDecimal.valueOf(fee));
+ feeItem.setRealFee(feeItem.getRealFee());
+
log.info("计算后费用:"+feeItem.getFee());
totalFee=totalFee+fee;
- feeItem.setRemark(JSONObject.toJSONString(exprItem));
+ feeItem.setRemark(feeItem.getCalcExp());
feeList.add(feeItem);
diff --git a/emis-biz/src/main/resources/mapper/EmisWaybillFeeitemMapper.xml b/emis-biz/src/main/resources/mapper/EmisWaybillFeeitemMapper.xml
index 1454b2c23..3e7a4729a 100644
--- a/emis-biz/src/main/resources/mapper/EmisWaybillFeeitemMapper.xml
+++ b/emis-biz/src/main/resources/mapper/EmisWaybillFeeitemMapper.xml
@@ -10,10 +10,12 @@
+
+
@@ -25,7 +27,7 @@
- select id, waybill_id, fee_code, fee_name, fee, currency, quote_id, expr_id, calc_exp, add_weight_price, order_num, del_flag, create_by, create_time, update_by, update_time, remark from emis_waybill_feeitem
+ select id, waybill_id, fee_code, fee_name, fee, real_fee, currency, quote_id, expr_id, calc_exp, initial_weight_fee, add_weight_price, order_num, del_flag, create_by, create_time, update_by, update_time, remark from emis_waybill_feeitem
@@ -66,10 +70,12 @@
fee_code,
fee_name,
fee,
+ real_fee,
currency,
quote_id,
expr_id,
calc_exp,
+ initial_weight_fee,
add_weight_price,
order_num,
del_flag,
@@ -85,10 +91,12 @@
#{feeCode},
#{feeName},
#{fee},
+ #{realFee},
#{currency},
#{quoteId},
#{exprId},
#{calcExp},
+ #{initialWeightFee},
#{addWeightPrice},
#{orderNum},
#{delFlag},
@@ -107,10 +115,12 @@
fee_code = #{feeCode},
fee_name = #{feeName},
fee = #{fee},
+ real_fee = #{realFee},
currency = #{currency},
quote_id = #{quoteId},
expr_id = #{exprId},
calc_exp = #{calcExp},
+ initial_weight_fee = #{initialWeightFee},
add_weight_price = #{addWeightPrice},
order_num = #{orderNum},
del_flag = #{delFlag},