wip:出口报关明细报表,原币保险费
This commit is contained in:
parent
92f5446ce8
commit
7aac46297b
@ -162,30 +162,38 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
|
||||
|
||||
BigDecimal share_baseseaamt = BigDecimal.ZERO;//原币海运费分摊
|
||||
BigDecimal share_usdseaamt = BigDecimal.ZERO;//美元海运费分摊
|
||||
BigDecimal share_basepremiumamt = BigDecimal.ZERO;//原币保险费分摊
|
||||
for (DynamicObject d : value) {
|
||||
BigDecimal amount = d.getBigDecimal("yem_amount");//金额
|
||||
BigDecimal seausdamtsum = d.getBigDecimal("yem_seausdamtsum");//海运费USD总价
|
||||
BigDecimal usdSeaAmt = d.getBigDecimal("usd_sea_amt");//海运费(美元)
|
||||
BigDecimal usdpremiumamt = d.getBigDecimal("usd_pmamt_amt");//美元保险费
|
||||
|
||||
//金额/金额汇总*海运费(原币)
|
||||
BigDecimal baseseaamt = BigDecimalUtils.div(amount, sumAmt, 10).multiply(seausdamtsum);
|
||||
BigDecimal rate = BigDecimalUtils.div(amount, sumAmt, 10);
|
||||
|
||||
//原币海运费 = 金额/金额汇总*海运费(原币)
|
||||
BigDecimal baseseaamt = rate.multiply(seausdamtsum);
|
||||
baseseaamt = baseseaamt.setScale(2, RoundingMode.HALF_UP);
|
||||
|
||||
//金额/金额汇总*海运费(美元)
|
||||
BigDecimal usdseaamt = BigDecimalUtils.div(amount, sumAmt, 10).multiply(usdSeaAmt);
|
||||
//美元海运费 = 金额/金额汇总*海运费(美元)
|
||||
BigDecimal usdseaamt = rate.multiply(usdSeaAmt);
|
||||
usdseaamt = usdseaamt.setScale(2, RoundingMode.HALF_UP);
|
||||
|
||||
//金额/金额汇总*保险费(美元)
|
||||
|
||||
//原币保险费 = 金额/金额汇总*保险费(美元)
|
||||
BigDecimal basepremiumamt = rate.multiply(usdpremiumamt);
|
||||
basepremiumamt = basepremiumamt.setScale(2, RoundingMode.HALF_UP);
|
||||
|
||||
if (isLastRow(d, value)) {
|
||||
d.set("yem_baseseaamt", seausdamtsum.subtract(share_baseseaamt));
|
||||
d.set("yem_usdseaamt", usdSeaAmt.subtract(share_usdseaamt));
|
||||
d.set("yem_baseseaamt", seausdamtsum.subtract(share_baseseaamt));//原币海运费
|
||||
d.set("yem_usdseaamt", usdSeaAmt.subtract(share_usdseaamt));//美元海运费
|
||||
d.set("yem_basepremiumamt", usdpremiumamt.subtract(share_basepremiumamt));//原币保险费
|
||||
} else {
|
||||
share_baseseaamt = share_baseseaamt.add(baseseaamt);
|
||||
share_usdseaamt = share_usdseaamt.add(usdseaamt);
|
||||
d.set("yem_baseseaamt", baseseaamt);
|
||||
d.set("yem_usdseaamt", usdseaamt);
|
||||
share_basepremiumamt = share_basepremiumamt.add(basepremiumamt);
|
||||
d.set("yem_baseseaamt", baseseaamt);//原币海运费
|
||||
d.set("yem_usdseaamt", usdseaamt);//美元海运费
|
||||
d.set("yem_basepremiumamt", basepremiumamt);//原币保险费
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user