This commit is contained in:
linfso 2024-06-28 13:09:05 +08:00
parent 3212335687
commit dd1002e732
2 changed files with 20 additions and 4 deletions

View File

@ -445,6 +445,7 @@ public class EmisBaseService {
* @param areaId
* @return
*/
@Deprecated
public EmisDestination getDestinationByCountryOrAreaId(String countryCode,Long areaId){
EmisDestination destination=null;

View File

@ -1169,14 +1169,22 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
double totalFee = 0.0D;
List<EmisWaybillFeeitem> feeList = new ArrayList<>();
Map<String,Integer> feeTypeMap = new HashMap<>();
for (EmisQuotePrice quoteItem: emisQuotePriceList) {
// 不允许重复
if(feeTypeMap.containsKey(quoteItem.getFeeType())){
continue;
}
List<EmisQuoteExpression> exprList = quoteItem.getExprList();
if(CollectionUtils.isEmpty(exprList)){
continue;
}
// 判断是否要计算报关费 只有一般贸易报关需要收取报关费
// 2002-报关费 3-一般报关
if( "2002".equals(quoteItem.getFeeType()) ){
@ -1193,8 +1201,8 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
}
}
EmisWaybillFeeitem feeItem = null;
EmisWaybillFeeitem feeItem = new EmisWaybillFeeitem();
// 重量计费 , 一口价
if("1".equals(calcFeeType) || "3".equals(calcFeeType)){
for (EmisQuoteExpression exprItem: exprList) {
@ -1203,6 +1211,8 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
if( exprItem.getStartWeight().doubleValue() < emisWaybill.getSettlementWeight().doubleValue()
&& exprItem.getEndWeight().doubleValue() >= emisWaybill.getSettlementWeight().doubleValue()
){
feeItem = new EmisWaybillFeeitem();
feeItem.setFeeCode(quoteItem.getFeeType());
String feeName=DictUtils.getDictLabel("emis_fee_type",quoteItem.getFeeType());
feeItem.setFeeName(feeName);
@ -1263,6 +1273,9 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
exprItem.getStartWeight().doubleValue() < emisWaybill.getTotalVolume().doubleValue()
&& exprItem.getEndWeight().doubleValue() >= emisWaybill.getTotalVolume().doubleValue()
){
feeItem = new EmisWaybillFeeitem();
feeItem.setFeeCode(quoteItem.getFeeType());
String feeName=DictUtils.getDictLabel("emis_fee_type",quoteItem.getFeeType());
feeItem.setFeeName(feeName);
@ -1294,13 +1307,15 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
feeItem.setRemark(feeItem.getCalcExp());
feeItem.setBlAutoGen("1");
feeList.add(feeItem);
break;
}
}
}
if(feeItem.getFee().compareTo(BigDecimal.ZERO)!=0) {
feeList.add(feeItem);
}
}
// 设置费用明细