1.修改银行利息费计算逻辑
This commit is contained in:
25655 2025-03-17 18:03:50 +08:00
parent 29802b449b
commit a7a7995a19
2 changed files with 28 additions and 32 deletions
src/main/java
com/yem/wm/im/clientdemand/utils
kd/cosmic

View File

@ -1511,37 +1511,33 @@ public class ClientUtils {
BigDecimal marinsupreamt = (BigDecimal) model.getValue("yem_e_marinsupreamt", rowIdx);//保险费
BigDecimal interestrate = (BigDecimal) model.getValue("yem_e_interestrate", rowIdx);//利息率%
interestrate = BigDecimalUtils.div(interestrate, new BigDecimal("100"), 10);
BigDecimal calculate = BigDecimal.ZERO;
BigDecimal interestdays = BigDecimal.ZERO;
BigDecimal yem_sinosurerate = BigDecimal.ZERO;
int rowCount = model.getEntryRowCount("yem_es_salescontrac_s");
BigDecimal setScale = BigDecimal.ZERO;
BigDecimal yemEAirliftcosts = BigDecimal.ZERO;
for (int i = 0; i < rowCount; i++) {
String issinosure = (String) model.getValue("yem_issinosure", i);
if ("A".equals(issinosure)) {
BigDecimal raprate = (BigDecimal) model.getValue("yem_raprate", i);//收汇百分比%
interestdays = interestdays.add((BigDecimal) model.getValue("yem_interestdays", i));//利息天数
yem_sinosurerate = yem_sinosurerate.add((BigDecimal) model.getValue("yem_sinosurerate", i));//利息天数
// raprate = BigDecimalUtils.div(raprate, new BigDecimal("100"), 10);
// BigDecimal multiply = BigDecimalUtils.div(safobprice.add(seafreight).add(marinsupreamt).multiply(raprate).multiply(interestrate), new BigDecimal("360"), 10).multiply(interestdays);
calculate = calculate.add(raprate);
BigDecimal interestdays = ((BigDecimal) model.getValue("yem_interestdays", i));//利息天数
BigDecimal yem_sinosurerate = ((BigDecimal) model.getValue("yem_sinosurerate", i));//利息天数
BigDecimal calculate = raprate;
BigDecimal yem_e_interestamt = safobprice.add(seafreight).add(yemELandcarrycost).add(yemEAirliftcost).add(yemPortamt)
.add(yemInlandtransportation).add(yemEBankcost).add(yemEElsecost).add(yemCostsinclude).add(marinsupreamt);
BigDecimal multiply = BigDecimalUtils.multiply(yem_e_interestamt, calculate, 10);
multiply = BigDecimalUtils.multiply(multiply, interestdays, 10);
multiply = BigDecimalUtils.multiply(multiply, interestrate, 10);
multiply = BigDecimalUtils.div(multiply, new BigDecimal(100), 10);
multiply = BigDecimalUtils.div(multiply, new BigDecimal(360), 10);
setScale =setScale.add(multiply.setScale(0, RoundingMode.UP));
BigDecimal yem_e_creditamt = BigDecimalUtils.multiply(yem_e_interestamt,calculate,10);
yem_e_creditamt= BigDecimalUtils.multiply(yem_e_creditamt,yem_sinosurerate,10);
yem_e_creditamt = BigDecimalUtils.div(yem_e_creditamt, new BigDecimal(100),10);
yemEAirliftcosts = yemEAirliftcosts.add(BigDecimalUtils.div(yem_e_creditamt, new BigDecimal(100),10));
}
}
BigDecimal yem_e_interestamt = safobprice.add(seafreight).add(yemELandcarrycost).add(yemEAirliftcost).add(yemPortamt)
.add(yemInlandtransportation).add(yemEBankcost).add(yemEElsecost).add(yemCostsinclude).add(marinsupreamt);
// yem_e_interestamt = yem_e_interestamt.multiply(calculate).multiply(interestdays).multiply(interestrate.divide(new BigDecimal("100"),10).divide(new BigDecimal("360"),10));
BigDecimal multiply = BigDecimalUtils.multiply(yem_e_interestamt, calculate, 10);
multiply = BigDecimalUtils.multiply(multiply, interestdays, 10);
multiply = BigDecimalUtils.multiply(multiply, interestrate, 10);
multiply = BigDecimalUtils.div(multiply, new BigDecimal(100), 10);
multiply = BigDecimalUtils.div(multiply, new BigDecimal(360), 10);
// BigDecimalUtils.div(yem_e_interestamt, new BigDecimal("100"), 10);
BigDecimal setScale = multiply.setScale(0, RoundingMode.UP);
model.setValue("yem_e_interestamt", setScale, rowIdx);
BigDecimal yem_e_creditamt = BigDecimalUtils.multiply(yem_e_interestamt,calculate,10);
yem_e_creditamt= BigDecimalUtils.multiply(yem_e_creditamt,yem_sinosurerate,10);
yem_e_creditamt = BigDecimalUtils.div(yem_e_creditamt, new BigDecimal(100),10);
yem_e_creditamt = BigDecimalUtils.div(yem_e_creditamt, new BigDecimal(100),10);
model.setValue("yem_e_creditamt", yem_e_creditamt, rowIdx);
model.setValue("yem_e_creditamt", yemEAirliftcosts, rowIdx);
}
/**

View File

@ -17,17 +17,17 @@ public class Application {
cosmic.setWebPath("E:/Cosmic/Comics_YXZG/YXZG-server/webapp");
////152
// cosmic.setClusterNumber("yxzg-topview-dev");
// cosmic.setTenantNumber("yxzg-topview-dev");
// cosmic.setServerIP("10.64.112.152");
// cosmic.setFileServerPathIPAndPort("", "");
// cosmic.setConfigUrl("10.64.112.152:2181", "zookeeper", "Cosmic@5092");
cosmic.setClusterNumber("yxzg-topview-dev");
cosmic.setTenantNumber("yxzg-topview-dev");
cosmic.setServerIP("10.64.112.152");
cosmic.setFileServerPathIPAndPort("", "");
cosmic.setConfigUrl("10.64.112.152:2181", "zookeeper", "Cosmic@5092");
System.setProperty("mq.debug.queue.tag", "wrxtest");
////134
cosmic.setClusterNumber("yxzg-prod");
cosmic.setTenantNumber("yxzg-prod");
cosmic.setServerIP("10.64.111.134");
cosmic.setConfigUrl("10.64.111.134:2181","zookeeper","d@f*g:SGVsbG8==U4HRwjlqTOp0p9b60T+T8D2fQ8ThQgJLu/qgfLyLgknPa2RwYXNzd29yZA==");
// cosmic.setClusterNumber("yxzg-prod");
// cosmic.setTenantNumber("yxzg-prod");
// cosmic.setServerIP("10.64.111.134");
// cosmic.setConfigUrl("10.64.111.134:2181","zookeeper","d@f*g:SGVsbG8==U4HRwjlqTOp0p9b60T+T8D2fQ8ThQgJLu/qgfLyLgknPa2RwYXNzd29yZA==");
cosmic.setStartWithQing(false);
cosmic.start();