md
This commit is contained in:
parent
aaee38b6cb
commit
348eb5bb74
@ -32,11 +32,13 @@ import com.alibaba.fastjson.JSON;
|
|||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.xdadan.erp.common.utils.DateUtils;
|
import com.xdadan.erp.common.utils.DateUtils;
|
||||||
import com.xdadan.erp.common.utils.DictUtils;
|
import com.xdadan.erp.common.utils.DictUtils;
|
||||||
|
import com.xdadan.erp.emis.domain.EmisExchangeRate;
|
||||||
import com.xdadan.erp.emis.domain.EmisSettleSubBill;
|
import com.xdadan.erp.emis.domain.EmisSettleSubBill;
|
||||||
import com.xdadan.erp.emis.domain.EmisSettleSubBillFeeitem;
|
import com.xdadan.erp.emis.domain.EmisSettleSubBillFeeitem;
|
||||||
import com.xdadan.erp.emis.domain.exception.EmisBizError;
|
import com.xdadan.erp.emis.domain.exception.EmisBizError;
|
||||||
import com.xdadan.erp.emis.domain.vo.scan.ScanResult;
|
import com.xdadan.erp.emis.domain.vo.scan.ScanResult;
|
||||||
import com.xdadan.erp.emis.service.EmisBaseService;
|
import com.xdadan.erp.emis.service.EmisBaseService;
|
||||||
|
import com.xdadan.erp.emis.service.IEmisExchangeRateService;
|
||||||
import com.xdadan.erp.emis.service.IEmisSettleBillPayLogService;
|
import com.xdadan.erp.emis.service.IEmisSettleBillPayLogService;
|
||||||
import com.xdadan.erp.emis.service.billexport.ExcelUtils;
|
import com.xdadan.erp.emis.service.billexport.ExcelUtils;
|
||||||
import com.xdadan.erp.emis.service.billexport.MapObjectUtil;
|
import com.xdadan.erp.emis.service.billexport.MapObjectUtil;
|
||||||
@ -87,6 +89,9 @@ public class EmisSettleBillController extends BaseController
|
|||||||
@Autowired
|
@Autowired
|
||||||
private EmisBaseService emisBaseService;
|
private EmisBaseService emisBaseService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmisExchangeRateService emisExchangeRateService;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询结算总账单列表
|
* 查询结算总账单列表
|
||||||
@ -526,33 +531,47 @@ public class EmisSettleBillController extends BaseController
|
|||||||
if( !CollectionUtils.isEmpty(feeItemList)){
|
if( !CollectionUtils.isEmpty(feeItemList)){
|
||||||
for (EmisSettleSubBillFeeitem feeitem : feeItemList) {
|
for (EmisSettleSubBillFeeitem feeitem : feeItemList) {
|
||||||
|
|
||||||
|
// 所有币种全部统一换算成RMB
|
||||||
|
|
||||||
|
BigDecimal rmbBillFee=feeitem.getBillFee();
|
||||||
// 币种
|
// 币种
|
||||||
String currencyStr="";
|
String currencyStr="";
|
||||||
if(StringUtils.isEmpty(feeitem.getCurrency())){
|
if(StringUtils.isEmpty(feeitem.getCurrency())){
|
||||||
feeitem.setCurrency("CNY");
|
feeitem.setCurrency("CNY");
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!"CNY".equals(feeitem.getCurrency())){
|
if(!"CNY".equals(feeitem.getCurrency())){
|
||||||
currencyStr=""+feeitem.getCurrency()+"";
|
currencyStr=""+feeitem.getCurrency()+"";
|
||||||
|
// 非人民币需要换算成人民币
|
||||||
|
EmisExchangeRate emisExchangeRate=emisExchangeRateService.getValidExchangeRate(currencyStr,"CNY",DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,billItem.getWaybillDetail().getSendDate()));
|
||||||
|
double rate=0.0D;
|
||||||
|
if(emisExchangeRate!=null){
|
||||||
|
rate=Double.valueOf(emisExchangeRate.getRate());
|
||||||
|
rmbBillFee=rmbBillFee.multiply(BigDecimal.valueOf(rate));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 费用细分
|
// 费用细分
|
||||||
if ("1001".equals(feeitem.getFeeCode())) {
|
if ("1001".equals(feeitem.getFeeCode())) {
|
||||||
transFee = transFee.add(feeitem.getBillFee());
|
transFee = transFee.add(rmbBillFee);
|
||||||
transFeeStr= feeitem.getBillFee().stripTrailingZeros().toPlainString()+currencyStr;
|
// transFeeStr= feeitem.getBillFee().stripTrailingZeros().toPlainString()+currencyStr;
|
||||||
}
|
}
|
||||||
// 报关费
|
// 报关费
|
||||||
else if ("2002".equals(feeitem.getFeeCode())) {
|
else if ("2002".equals(feeitem.getFeeCode())) {
|
||||||
cebFee = cebFee.add(feeitem.getBillFee());
|
cebFee = cebFee.add(rmbBillFee);
|
||||||
cebFeeStr= feeitem.getBillFee().stripTrailingZeros().toPlainString()+currencyStr;
|
// cebFeeStr= feeitem.getBillFee().stripTrailingZeros().toPlainString()+currencyStr;
|
||||||
}
|
}
|
||||||
// 清关费
|
// 清关费
|
||||||
else if ("2003".equals(feeitem.getFeeCode())) {
|
else if ("2003".equals(feeitem.getFeeCode())) {
|
||||||
declareFee = declareFee.add(feeitem.getBillFee());
|
declareFee = declareFee.add(rmbBillFee);
|
||||||
declareFeeStr= feeitem.getBillFee().stripTrailingZeros().toPlainString()+currencyStr;
|
// declareFeeStr= feeitem.getBillFee().stripTrailingZeros().toPlainString()+currencyStr;
|
||||||
|
//
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
otherFee = otherFee.add(feeitem.getBillFee());
|
otherFee = otherFee.add(rmbBillFee);
|
||||||
otherFeeStr= otherFeeStr+""+feeitem.getFeeName()+":"+feeitem.getBillFee().stripTrailingZeros().toPlainString()+currencyStr+",";
|
// otherFeeStr= otherFeeStr+""+feeitem.getFeeName()+":"+feeitem.getBillFee().stripTrailingZeros().toPlainString()+currencyStr+",";
|
||||||
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -571,6 +590,11 @@ public class EmisSettleBillController extends BaseController
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
transFeeStr= transFee.stripTrailingZeros().toPlainString();
|
||||||
|
cebFeeStr= cebFee.stripTrailingZeros().toPlainString();
|
||||||
|
declareFeeStr= declareFee.stripTrailingZeros().toPlainString();
|
||||||
|
otherFeeStr= otherFee.stripTrailingZeros().toPlainString();
|
||||||
}else{
|
}else{
|
||||||
transFeeStr=billItem.getWaybillDetail().getFreight().stripTrailingZeros().toPlainString();
|
transFeeStr=billItem.getWaybillDetail().getFreight().stripTrailingZeros().toPlainString();
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user