This commit is contained in:
linfso 2024-05-16 10:59:50 +08:00
parent a5f718acdb
commit 61142eeb00
3 changed files with 25 additions and 4 deletions

View File

@ -57,6 +57,8 @@ public class EmisWaybillFeeitem extends BaseEntity
private BigDecimal initialWeightFee;
/* 续重单价 */
private BigDecimal addWeightPrice;
/* 是否自动计算 1-是 0-否 */
private String blAutoGen;
/* 排序 */
private Integer orderNum;

View File

@ -35,6 +35,9 @@ public class FeeItem extends VoBase<EmisWaybillFeeitem,FeeItem> {
/* 首重费 */
private BigDecimal initialWeightFee;
/* 是否自动计算 1-是 0-否 */
private String blAutoGen;
@ -51,8 +54,11 @@ public class FeeItem extends VoBase<EmisWaybillFeeitem,FeeItem> {
voItem.setOrderNum(dbItem.getOrderNum());
voItem.setCalcExp(dbItem.getCalcExp());
voItem.setAddWeightPrice(dbItem.getAddWeightPrice());
voItem.setRealFee(dbItem.getRealFee());
voItem.setInitialWeightFee(dbItem.getInitialWeightFee());
voItem.setBlAutoGen(dbItem.getBlAutoGen());
voItem.setRemark(dbItem.getRemark());
return voItem;
}
@ -68,9 +74,12 @@ public class FeeItem extends VoBase<EmisWaybillFeeitem,FeeItem> {
dbItem.setExprId(voItem.getExprId());
dbItem.setOrderNum(voItem.getOrderNum());
dbItem.setCalcExp(voItem.getCalcExp());
dbItem.setAddWeightPrice(voItem.getAddWeightPrice());
dbItem.setRealFee(voItem.getRealFee());
dbItem.setInitialWeightFee(voItem.getInitialWeightFee());
dbItem.setBlAutoGen(voItem.getBlAutoGen());
dbItem.setRemark(voItem.getRemark());
return dbItem;
}

View File

@ -524,6 +524,7 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
log.info("计算后费用:"+feeItem.getFee());
totalFee=totalFee+fee;
feeItem.setRemark(feeItem.getCalcExp());
feeItem.setBlAutoGen("1");
feeList.add(feeItem);
@ -649,10 +650,19 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
public static void main(String[] args) {
Snowflake snowflake = IdUtil.getSnowflake(0, 0);
Long orderId = snowflake.nextId();
String orderSn = "TO" + orderId.toString();
System.out.println(orderSn);
// Snowflake snowflake = IdUtil.getSnowflake(0, 0);
// Long orderId = snowflake.nextId();
// String orderSn = "TO" + orderId.toString();
// System.out.println(orderSn);
String calcExp="100+(w-1)*52";
String calcExprStr=calcExp.replaceAll("w","28")
.replaceAll("s","0")
.replaceAll("d","0");
System.out.println(calcExprStr);
// log.info("计算公式:"+calcExprStr+",重量:"+emisWaybill.getSettlementWeight());
double fee = Double.valueOf(AviatorEvaluator.execute(calcExprStr).toString());
System.out.println(fee);
}