This commit is contained in:
linfso 2025-07-03 12:43:11 +08:00
parent 4d02c794e2
commit 676398989c

View File

@ -1737,36 +1737,7 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
// 检查信用额度 // 检查信用额度
checkUseQuotaCredit(null,emisWaybillSave); checkUseQuotaCredit(null,emisWaybillSave);
// 再次检查费用是否和标准计费是否一致 checkBillFee(emisWaybillSave);
if(!"1".equals(emisWaybillSave.getBlSpecialQuote()) && !"3".equals(emisWaybillSave.getCalcFeeType())){
EmisWaybill checkFeeWaybill=new EmisWaybill();
checkFeeWaybill.setSendDate(emisWaybillSave.getSendDate());
checkFeeWaybill.setProductType(emisWaybillSave.getProductType());
checkFeeWaybill.setCustomerCode(emisWaybillSave.getCustomerCode());
checkFeeWaybill.setCustNo(emisWaybillSave.getCustNo());
checkFeeWaybill.setCalcFeeType(emisWaybillSave.getCalcFeeType());
checkFeeWaybill.setSettlementWeight(emisWaybillSave.getSettlementWeight());
checkFeeWaybill.setTotalVolume(emisWaybillSave.getTotalVolume());
checkFeeWaybill.setSendSiteCode(emisWaybillSave.getSendSiteCode());
checkFeeWaybill.setDispatchUnderlingSiteCode(emisWaybillSave.getDispatchUnderlingSiteCode());
checkFeeWaybill.setCustomsClear(emisWaybillSave.getCustomsClear());
checkFeeWaybill.setCustomsEclaration(emisWaybillSave.getCustomsEclaration());
calcWaybillFee(checkFeeWaybill);
log.error("费用异常,请检查运费=111=>check:{},new:{}",
checkFeeWaybill.getFreight().stripTrailingZeros().toPlainString(),
emisWaybillSave.getFreight().stripTrailingZeros().toPlainString()
);
if( emisWaybillSave.getFreight().doubleValue() < checkFeeWaybill.getFreight().doubleValue() ){
throw new EmisBizError(EmisBizErrorType.FAIL, "费用异常,请检查运费!");
}
}
// 基础信息更新 // 基础信息更新
emisWaybillMapper.updateEmisWaybill(emisWaybillSave); emisWaybillMapper.updateEmisWaybill(emisWaybillSave);
@ -3172,36 +3143,7 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
updateMasterWaybill(emisWaybillSave,new EmisWaybill()); updateMasterWaybill(emisWaybillSave,new EmisWaybill());
} }
// 再次检查费用是否和标准计费是否一致 checkBillFee(emisWaybillSave);
if(!"1".equals(emisWaybillSave.getBlSpecialQuote()) && !"3".equals(emisWaybillSave.getCalcFeeType())){
EmisWaybill checkFeeWaybill=new EmisWaybill();
checkFeeWaybill.setSendDate(emisWaybillSave.getSendDate());
checkFeeWaybill.setProductType(emisWaybillSave.getProductType());
checkFeeWaybill.setCustomerCode(emisWaybillSave.getCustomerCode());
checkFeeWaybill.setCustNo(emisWaybillSave.getCustNo());
checkFeeWaybill.setCalcFeeType(emisWaybillSave.getCalcFeeType());
checkFeeWaybill.setSettlementWeight(emisWaybillSave.getSettlementWeight());
checkFeeWaybill.setTotalVolume(emisWaybillSave.getTotalVolume());
checkFeeWaybill.setSendSiteCode(emisWaybillSave.getSendSiteCode());
checkFeeWaybill.setDispatchUnderlingSiteCode(emisWaybillSave.getDispatchUnderlingSiteCode());
checkFeeWaybill.setCustomsClear(emisWaybillSave.getCustomsClear());
checkFeeWaybill.setCustomsEclaration(emisWaybillSave.getCustomsEclaration());
calcWaybillFee(checkFeeWaybill);
log.error("费用异常,请检查运费=222=>check:{},new:{}",
checkFeeWaybill.getFreight().stripTrailingZeros().toPlainString(),
emisWaybillSave.getFreight().stripTrailingZeros().toPlainString()
);
if( emisWaybillSave.getFreight().doubleValue() < checkFeeWaybill.getFreight().doubleValue() ){
throw new EmisBizError(EmisBizErrorType.FAIL, "费用异常,请检查运费!");
}
}
//插入新单 //插入新单
emisWaybillMapper.insertEmisWaybill(emisWaybillSave); emisWaybillMapper.insertEmisWaybill(emisWaybillSave);
@ -3535,6 +3477,44 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
} }
} }
// 检查费用
private void checkBillFee(EmisWaybill emisWaybillSave) throws EmisBizError{
// 再次检查费用是否和标准计费是否一致:非特殊报价和一口价
if(!"1".equals(emisWaybillSave.getBlSpecialQuote()) && !"3".equals(emisWaybillSave.getCalcFeeType()) ){
EmisWaybill checkFeeWaybill=new EmisWaybill();
checkFeeWaybill.setSendDate(emisWaybillSave.getSendDate());
checkFeeWaybill.setProductType(emisWaybillSave.getProductType());
checkFeeWaybill.setCustomerCode(emisWaybillSave.getCustomerCode());
checkFeeWaybill.setCustNo(emisWaybillSave.getCustNo());
checkFeeWaybill.setCalcFeeType(emisWaybillSave.getCalcFeeType());
checkFeeWaybill.setSettlementWeight(emisWaybillSave.getSettlementWeight());
checkFeeWaybill.setTotalVolume(emisWaybillSave.getTotalVolume());
checkFeeWaybill.setSendSiteCode(emisWaybillSave.getSendSiteCode());
checkFeeWaybill.setDispatchUnderlingSiteCode(emisWaybillSave.getDispatchUnderlingSiteCode());
checkFeeWaybill.setCustomsClear(emisWaybillSave.getCustomsClear());
checkFeeWaybill.setCustomsEclaration(emisWaybillSave.getCustomsEclaration());
calcWaybillFee(checkFeeWaybill);
log.error("费用异常,请检查运费=111=>check:{},new:{}",
checkFeeWaybill.getFreight().setScale(0).stripTrailingZeros().toPlainString(),
emisWaybillSave.getFreight().setScale(0).stripTrailingZeros().toPlainString()
);
if( emisWaybillSave.getFreight().setScale(0).doubleValue() < checkFeeWaybill.getFreight().setScale(0).doubleValue() ){
throw new EmisBizError(EmisBizErrorType.FAIL, "费用异常,请检查运费!");
}
}
}
/** /**
@ -3641,36 +3621,7 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
emisWaybillSave.setGoodsPics("1"); emisWaybillSave.setGoodsPics("1");
} }
// 再次检查费用是否和标准计费是否一致:非特殊报价和一口价 checkBillFee(emisWaybillSave);
if(!"1".equals(emisWaybillSave.getBlSpecialQuote()) && !"3".equals(emisWaybillSave.getCalcFeeType()) ){
EmisWaybill checkFeeWaybill=new EmisWaybill();
checkFeeWaybill.setSendDate(emisWaybillSave.getSendDate());
checkFeeWaybill.setProductType(emisWaybillSave.getProductType());
checkFeeWaybill.setCustomerCode(emisWaybillSave.getCustomerCode());
checkFeeWaybill.setCustNo(emisWaybillSave.getCustNo());
checkFeeWaybill.setCalcFeeType(emisWaybillSave.getCalcFeeType());
checkFeeWaybill.setSettlementWeight(emisWaybillSave.getSettlementWeight());
checkFeeWaybill.setTotalVolume(emisWaybillSave.getTotalVolume());
checkFeeWaybill.setSendSiteCode(emisWaybillSave.getSendSiteCode());
checkFeeWaybill.setDispatchUnderlingSiteCode(emisWaybillSave.getDispatchUnderlingSiteCode());
checkFeeWaybill.setCustomsClear(emisWaybillSave.getCustomsClear());
checkFeeWaybill.setCustomsEclaration(emisWaybillSave.getCustomsEclaration());
calcWaybillFee(checkFeeWaybill);
log.error("费用异常,请检查运费=333=>check:{},new:{}",
checkFeeWaybill.getFreight().stripTrailingZeros().toPlainString(),
emisWaybillSave.getFreight().stripTrailingZeros().toPlainString()
);
if( emisWaybillSave.getFreight().doubleValue() < checkFeeWaybill.getFreight().doubleValue() ){
throw new EmisBizError(EmisBizErrorType.FAIL, "费用异常,请检查运费!");
}
}
// 基础信息更新 // 基础信息更新
emisWaybillMapper.updateEmisWaybill(emisWaybillSave); emisWaybillMapper.updateEmisWaybill(emisWaybillSave);