理财申购、赎回改动
This commit is contained in:
parent
c8b45040e4
commit
62b854f1a3
|
|
@ -11,6 +11,7 @@ import kd.bos.servicehelper.operation.SaveServiceHelper;
|
||||||
import kd.sdk.plugin.Plugin;
|
import kd.sdk.plugin.Plugin;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.EventObject;
|
import java.util.EventObject;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -53,20 +54,24 @@ public class CimFinancialBillPlugin extends AbstractBillPlugIn implements Plugin
|
||||||
this.getView().showTipNotification("无可删除数据!");
|
this.getView().showTipNotification("无可删除数据!");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
DynamicObject maxSeqItem = findMaxSeqItem(entryEntity);
|
DynamicObject maxSeqItem = findMaxDateItem(entryEntity);
|
||||||
if (maxSeqItem!=null){
|
if (maxSeqItem!=null){
|
||||||
DynamicObject redeemBill = maxSeqItem.getDynamicObject("shjh_shdh");
|
DynamicObject redeemBill = maxSeqItem.getDynamicObject("shjh_shdh");
|
||||||
if (redeemBill!=null){
|
if (redeemBill!=null){
|
||||||
this.getView().showTipNotification("最新估值分录存在已审核赎回单!");
|
this.getView().showTipNotification("最新估值分录存在已审核赎回单!");
|
||||||
}else {
|
}else {
|
||||||
entryEntity.remove(maxSeqItem);
|
entryEntity.remove(maxSeqItem);
|
||||||
DynamicObject newMaxSeqItem = findMaxSeqItem(entryEntity);
|
DynamicObject newMaxSeqItem = findMaxDateItem(entryEntity);
|
||||||
if (newMaxSeqItem!=null){
|
if (newMaxSeqItem!=null){
|
||||||
BigDecimal e_surpcopies = newMaxSeqItem.getBigDecimal("e_surpcopies");
|
BigDecimal e_surpcopies = newMaxSeqItem.getBigDecimal("e_surpcopies");
|
||||||
financialBill.set("surpluscopies",e_surpcopies);
|
financialBill.set("surpluscopies",e_surpcopies);
|
||||||
SaveServiceHelper.update(financialBill);
|
SaveServiceHelper.update(financialBill);
|
||||||
}
|
}
|
||||||
DB.update(DBRoute.of("fi"),DELETE,new Object[]{maxSeqItem.getPkValue()});
|
int update = DB.update(DBRoute.of("fi"), DELETE, new Object[]{maxSeqItem.getPkValue()});
|
||||||
|
if (update==1){
|
||||||
|
//重新排序
|
||||||
|
this.reorder(financialBill,entryEntity);
|
||||||
|
}
|
||||||
this.getView().invokeOperation("refresh");
|
this.getView().invokeOperation("refresh");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -74,6 +79,47 @@ public class CimFinancialBillPlugin extends AbstractBillPlugIn implements Plugin
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void reorder(DynamicObject financialBill,DynamicObjectCollection entryEntity) {
|
||||||
|
if (entryEntity == null || entryEntity.isEmpty()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 1. 按估值日期和赎回日期排序
|
||||||
|
DynamicObjectCollection sortedEntries = new DynamicObjectCollection();
|
||||||
|
sortedEntries.addAll(entryEntity);
|
||||||
|
|
||||||
|
sortedEntries.sort((o1, o2) -> {
|
||||||
|
// 优先按估值日期排序(从小到大)
|
||||||
|
Date valDate1 = o1.getDate("e_valuationdate");
|
||||||
|
Date valDate2 = o2.getDate("e_valuationdate");
|
||||||
|
int compareValDate = valDate1.compareTo(valDate2);
|
||||||
|
if (compareValDate != 0) {
|
||||||
|
return compareValDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 估值日期相同时,按赎回日期排序
|
||||||
|
Date redDate1 = o1.getDate("shjh_shrq");
|
||||||
|
Date redDate2 = o2.getDate("shjh_shrq");
|
||||||
|
if (redDate1 == null && redDate2 == null) return 0;
|
||||||
|
if (redDate1 == null) return -1; // null视为较小值
|
||||||
|
if (redDate2 == null) return 1;
|
||||||
|
return redDate1.compareTo(redDate2);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 2. 重新赋值seq从0开始
|
||||||
|
int seq = 0;
|
||||||
|
for (DynamicObject item : sortedEntries) {
|
||||||
|
item.set("seq", seq++);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. 将排序后的结果重新设置回原集合
|
||||||
|
entryEntity.clear();
|
||||||
|
entryEntity.addAll(sortedEntries);
|
||||||
|
financialBill.set("valuationentry",entryEntity);
|
||||||
|
SaveServiceHelper.update(financialBill);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
private void updateBillInfo() {
|
private void updateBillInfo() {
|
||||||
boolean dataChanged = this.getModel().getDataChanged();
|
boolean dataChanged = this.getModel().getDataChanged();
|
||||||
if (dataChanged){
|
if (dataChanged){
|
||||||
|
|
@ -91,30 +137,64 @@ public class CimFinancialBillPlugin extends AbstractBillPlugIn implements Plugin
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 从分录中查找行号最大的记录
|
* 从分录中查找日期最大的记录
|
||||||
* @param entryEntity 分录集合
|
* @param entryEntity 分录集合
|
||||||
* @return 行号最大的记录,如果没有记录则返回null
|
* @return 行号最大的记录,如果没有记录则返回null
|
||||||
*/
|
*/
|
||||||
private DynamicObject findMaxSeqItem(DynamicObjectCollection entryEntity) {
|
private DynamicObject findMaxDateItem(DynamicObjectCollection entryEntity) {
|
||||||
if (entryEntity == null || entryEntity.isEmpty()) {
|
if (entryEntity == null || entryEntity.isEmpty()) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
// 检查初始行情况
|
||||||
|
if (entryEntity.size() == 1) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
DynamicObject maxSeqItem = null;
|
DynamicObject maxDateItem = null;
|
||||||
int maxSeq = -1;
|
Date maxValDate = null;
|
||||||
|
Date maxRedDate = null;
|
||||||
|
|
||||||
for (DynamicObject item : entryEntity) {
|
for (DynamicObject item : entryEntity) {
|
||||||
int currentSeq = item.getInt("seq");
|
//估值日期
|
||||||
if (currentSeq==0){
|
Date currentValDate = item.getDate("e_valuationdate");
|
||||||
this.getView().showMessage("初始行不可删除!");
|
//赎回日期
|
||||||
return null;
|
Date currentRedDate = item.getDate("shjh_shrq");
|
||||||
|
// 第一次循环直接赋值
|
||||||
|
if (maxDateItem == null) {
|
||||||
|
maxDateItem = item;
|
||||||
|
maxValDate = currentValDate;
|
||||||
|
maxRedDate = currentRedDate;
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
if (currentSeq > maxSeq) {
|
|
||||||
maxSeq = currentSeq;
|
// 比较估值日期
|
||||||
maxSeqItem = item;
|
int valDateCompare = currentValDate.compareTo(maxValDate);
|
||||||
|
if (valDateCompare > 0) {
|
||||||
|
// 当前估值日期更大
|
||||||
|
maxDateItem = item;
|
||||||
|
maxValDate = currentValDate;
|
||||||
|
maxRedDate = currentRedDate;
|
||||||
|
} else if (valDateCompare == 0) {
|
||||||
|
// 估值日期相同,比较赎回日期
|
||||||
|
// 处理赎回日期为null的情况
|
||||||
|
if (currentRedDate == null && maxRedDate == null) {
|
||||||
|
continue; // 都为空,保持原样
|
||||||
|
} else if (currentRedDate == null) {
|
||||||
|
continue; // 当前赎回日期为空,保持原样
|
||||||
|
} else if (maxRedDate == null) {
|
||||||
|
// 原赎回日期为空,当前不为空,更新
|
||||||
|
maxDateItem = item;
|
||||||
|
maxRedDate = currentRedDate;
|
||||||
|
} else {
|
||||||
|
// 都不为空,比较日期
|
||||||
|
if (currentRedDate.compareTo(maxRedDate) > 0) {
|
||||||
|
maxDateItem = item;
|
||||||
|
maxRedDate = currentRedDate;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return maxSeqItem;
|
return maxDateItem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,62 @@
|
||||||
|
package shjh.jhzj7.fi.fi.plugin.form;
|
||||||
|
|
||||||
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||||
|
import kd.bos.entity.operate.result.OperationResult;
|
||||||
|
import kd.bos.form.CloseCallBack;
|
||||||
|
import kd.bos.form.FormShowParameter;
|
||||||
|
import kd.bos.form.ShowType;
|
||||||
|
import kd.bos.form.events.AfterDoOperationEventArgs;
|
||||||
|
import kd.bos.form.operate.FormOperate;
|
||||||
|
import kd.bos.orm.query.QFilter;
|
||||||
|
import kd.bos.servicehelper.QueryServiceHelper;
|
||||||
|
import kd.sdk.plugin.Plugin;
|
||||||
|
import kd.tmc.cim.common.helper.FinSubscribeValuationHelper;
|
||||||
|
import kd.tmc.cim.formplugin.finsubscribe.FinSubscribeList;
|
||||||
|
import kd.tmc.cim.formplugin.resource.CimFormResourceEnum;
|
||||||
|
import kd.tmc.fbp.common.util.EmptyUtil;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 请implements插件扩展点接口
|
||||||
|
*/
|
||||||
|
public class FinSubScribeExtList extends FinSubscribeList {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void afterDoOperation(AfterDoOperationEventArgs args) {
|
||||||
|
FormOperate formOperate = (FormOperate)args.getSource();
|
||||||
|
String operateKey = formOperate.getOperateKey();
|
||||||
|
OperationResult operationResult = args.getOperationResult();
|
||||||
|
if (operationResult != null && operationResult.isSuccess()) {
|
||||||
|
if (!"valuateupdate".equals(operateKey)){
|
||||||
|
super.afterDoOperation(args);
|
||||||
|
}else {
|
||||||
|
this.showValuationUpdate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void showValuationUpdate() {
|
||||||
|
Long selectedId = this.getSelectedId();
|
||||||
|
if (!EmptyUtil.isEmpty(selectedId)) {
|
||||||
|
if (FinSubscribeValuationHelper.isExistOngoingRedeemBill(selectedId)) {
|
||||||
|
this.getView().showTipNotification(CimFormResourceEnum.FinSubscribeList_17.loadKDString());
|
||||||
|
} else {
|
||||||
|
DynamicObjectCollection finsubCols = QueryServiceHelper.query("cim_finsubscribe", "currency,redeemway,valuationentry,valuationentry.e_surpcopies as e_surpcopies,valuationentry.e_iopv as e_iopv,valuationentry.e_valuation as e_valuation,valuationentry.e_valuationdate as e_valuationdate,valuationentry.seq as seq", new QFilter[]{new QFilter("id", "=", selectedId)}, "valuationentry.seq desc", 1);
|
||||||
|
if (!EmptyUtil.isEmpty(finsubCols)) {
|
||||||
|
DynamicObject dynamicObject = (DynamicObject)finsubCols.get(0);
|
||||||
|
FormShowParameter showParameter = new FormShowParameter();
|
||||||
|
showParameter.setFormId("cim_valuation_update");
|
||||||
|
showParameter.getOpenStyle().setShowType(ShowType.NonModal);
|
||||||
|
showParameter.getCustomParams().put("currency", dynamicObject.getLong("currency"));
|
||||||
|
showParameter.getCustomParams().put("redeemway", dynamicObject.getString("redeemway"));
|
||||||
|
showParameter.getCustomParams().put("e_valuation", dynamicObject.getBigDecimal("e_valuation"));
|
||||||
|
showParameter.getCustomParams().put("e_surpcopies", dynamicObject.getBigDecimal("e_surpcopies"));
|
||||||
|
showParameter.getCustomParams().put("e_iopv", dynamicObject.getBigDecimal("e_iopv"));
|
||||||
|
showParameter.getCustomParams().put("ids", selectedId);
|
||||||
|
showParameter.setCloseCallBack(new CloseCallBack(this, "valuateupdate"));
|
||||||
|
this.getView().showForm(showParameter);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -117,7 +117,6 @@ public class RedeemBillExtendEditPlugin extends RedeemBillEdit {
|
||||||
realRevenue = copies.multiply(shrjz.subtract(iopv));
|
realRevenue = copies.multiply(shrjz.subtract(iopv));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
TmcViewInputHelper.setValWithoutDataChanged(this.getModel(), "realrevenue", realRevenue);
|
TmcViewInputHelper.setValWithoutDataChanged(this.getModel(), "realrevenue", realRevenue);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -203,7 +202,7 @@ public class RedeemBillExtendEditPlugin extends RedeemBillEdit {
|
||||||
// 计算 (赎回份额/剩余日份额)
|
// 计算 (赎回份额/剩余日份额)
|
||||||
BigDecimal ratio = copies.divide(remainderCopies, 10, RoundingMode.HALF_UP);
|
BigDecimal ratio = copies.divide(remainderCopies, 10, RoundingMode.HALF_UP);
|
||||||
// 累乘
|
// 累乘
|
||||||
product = product.multiply(ratio).setScale(10, RoundingMode.HALF_UP);
|
product = product.multiply(BigDecimal.ONE.subtract(ratio)).setScale(10, RoundingMode.HALF_UP);
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
// 记录错误并跳过当前条目
|
// 记录错误并跳过当前条目
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,17 @@
|
||||||
package shjh.jhzj7.fi.fi.plugin.operate;
|
package shjh.jhzj7.fi.fi.plugin.operate;
|
||||||
|
|
||||||
import kd.bos.dataentity.entity.DynamicObject;
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||||
import kd.bos.entity.plugin.AbstractOperationServicePlugIn;
|
import kd.bos.entity.plugin.AbstractOperationServicePlugIn;
|
||||||
import kd.bos.entity.plugin.args.BeforeOperationArgs;
|
import kd.bos.entity.plugin.args.BeforeOperationArgs;
|
||||||
import kd.bos.orm.query.QCP;
|
import kd.bos.orm.query.QCP;
|
||||||
import kd.bos.orm.query.QFilter;
|
import kd.bos.orm.query.QFilter;
|
||||||
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
|
import kd.bos.servicehelper.operation.SaveServiceHelper;
|
||||||
import kd.sdk.plugin.Plugin;
|
import kd.sdk.plugin.Plugin;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 理财申购
|
* 理财申购
|
||||||
* cim_finsubscribe
|
* cim_finsubscribe
|
||||||
|
|
@ -24,6 +28,43 @@ public class ValuateUpdateOperation extends AbstractOperationServicePlugIn imple
|
||||||
DynamicObject prinfo;
|
DynamicObject prinfo;
|
||||||
for (int i = 0; i < dos.length; i++) {
|
for (int i = 0; i < dos.length; i++) {
|
||||||
prinfo = BusinessDataServiceHelper.loadSingle(dos[i].getPkValue(), dos[i].getDataEntityType().getName());
|
prinfo = BusinessDataServiceHelper.loadSingle(dos[i].getPkValue(), dos[i].getDataEntityType().getName());
|
||||||
|
//重新排序
|
||||||
|
DynamicObjectCollection valuationentry = prinfo.getDynamicObjectCollection("valuationentry");
|
||||||
|
if (valuationentry!=null && valuationentry.size()>1){
|
||||||
|
// 1. 按估值日期和赎回日期排序
|
||||||
|
DynamicObjectCollection sortedEntries = new DynamicObjectCollection();
|
||||||
|
sortedEntries.addAll(valuationentry);
|
||||||
|
|
||||||
|
sortedEntries.sort((o1, o2) -> {
|
||||||
|
// 优先按估值日期排序(从小到大)
|
||||||
|
Date valDate1 = o1.getDate("e_valuationdate");
|
||||||
|
Date valDate2 = o2.getDate("e_valuationdate");
|
||||||
|
int compareValDate = valDate1.compareTo(valDate2);
|
||||||
|
if (compareValDate != 0) {
|
||||||
|
return compareValDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 估值日期相同时,按赎回日期排序
|
||||||
|
Date redDate1 = o1.getDate("shjh_shrq");
|
||||||
|
Date redDate2 = o2.getDate("shjh_shrq");
|
||||||
|
if (redDate1 == null && redDate2 == null) return 0;
|
||||||
|
if (redDate1 == null) return -1; // null视为较小值
|
||||||
|
if (redDate2 == null) return 1;
|
||||||
|
return redDate1.compareTo(redDate2);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 2. 重新赋值seq从0开始
|
||||||
|
int seq = 0;
|
||||||
|
for (DynamicObject item : sortedEntries) {
|
||||||
|
item.set("seq", seq++);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. 将排序后的结果重新设置回原集合
|
||||||
|
valuationentry.clear();
|
||||||
|
valuationentry.addAll(sortedEntries);
|
||||||
|
prinfo.set("valuationentry",valuationentry);
|
||||||
|
SaveServiceHelper.update(prinfo);
|
||||||
|
}
|
||||||
//1、点击【估值】时,若申购单下游存在暂存、已提交的赎回单,提醒报错:“下游存在待审批的赎回单据,请删除或审批后再进行估值”;
|
//1、点击【估值】时,若申购单下游存在暂存、已提交的赎回单,提醒报错:“下游存在待审批的赎回单据,请删除或审批后再进行估值”;
|
||||||
//cim_redeem
|
//cim_redeem
|
||||||
QFilter q1 = new QFilter("finbillno.id", QCP.equals, prinfo.getLong("id"));
|
QFilter q1 = new QFilter("finbillno.id", QCP.equals, prinfo.getLong("id"));
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@ package shjh.jhzj7.fi.fi.plugin.report;
|
||||||
|
|
||||||
import kd.bos.dataentity.entity.DynamicObject;
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||||
|
import kd.bos.entity.NumberFormatProvider;
|
||||||
|
import kd.bos.entity.report.AbstractReportColumn;
|
||||||
import kd.bos.entity.report.ReportColumn;
|
import kd.bos.entity.report.ReportColumn;
|
||||||
import kd.bos.entity.report.ReportQueryParam;
|
import kd.bos.entity.report.ReportQueryParam;
|
||||||
import kd.bos.logging.Log;
|
import kd.bos.logging.Log;
|
||||||
|
|
@ -444,10 +446,10 @@ public class FinancialFormReport extends AbstractReportFormPlugin implements Plu
|
||||||
row.set(REPORT_FIELDS[5], buyCopies);
|
row.set(REPORT_FIELDS[5], buyCopies);
|
||||||
row.set(REPORT_FIELDS[11], monthIop);
|
row.set(REPORT_FIELDS[11], monthIop);
|
||||||
row.set(REPORT_FIELDS[12], monthIopDate);
|
row.set(REPORT_FIELDS[12], monthIopDate);
|
||||||
row.set(DYNAMICS_FIELDS[4], monthAmount);
|
row.set(DYNAMICS_FIELDS[4], monthAmount.setScale(2, RoundingMode.HALF_UP));
|
||||||
row.set(DYNAMICS_FIELDS[5], monthAnnualizedRate);
|
row.set(DYNAMICS_FIELDS[5], monthAnnualizedRate.setScale(2, RoundingMode.HALF_UP));
|
||||||
row.set(DYNAMICS_FIELDS[6], yearAmount);
|
row.set(DYNAMICS_FIELDS[6], yearAmount.setScale(2, RoundingMode.HALF_UP));
|
||||||
row.set(DYNAMICS_FIELDS[7], yearAnnualizedRate);
|
row.set(DYNAMICS_FIELDS[7], yearAnnualizedRate.setScale(2, RoundingMode.HALF_UP));
|
||||||
|
|
||||||
return allRedProductAmount;
|
return allRedProductAmount;
|
||||||
}
|
}
|
||||||
|
|
@ -503,7 +505,7 @@ public class FinancialFormReport extends AbstractReportFormPlugin implements Plu
|
||||||
// sum = sum.add(amount).add(realrevenue);
|
// sum = sum.add(amount).add(realrevenue);
|
||||||
// }
|
// }
|
||||||
if (amount != null) {
|
if (amount != null) {
|
||||||
sum = amount;
|
sum = sum.add(amount);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -758,7 +760,7 @@ public class FinancialFormReport extends AbstractReportFormPlugin implements Plu
|
||||||
projectRevenue = new BigDecimal(day).multiply(amount)
|
projectRevenue = new BigDecimal(day).multiply(amount)
|
||||||
.multiply(expectedRate.divide(new BigDecimal(100), 10, RoundingMode.HALF_UP))
|
.multiply(expectedRate.divide(new BigDecimal(100), 10, RoundingMode.HALF_UP))
|
||||||
.divide(basisDay, 8, RoundingMode.HALF_UP);
|
.divide(basisDay, 8, RoundingMode.HALF_UP);
|
||||||
row.set(DYNAMICS_FIELDS[0], projectRevenue);
|
row.set(DYNAMICS_FIELDS[0], projectRevenue.setScale(2, RoundingMode.HALF_UP));
|
||||||
}
|
}
|
||||||
return projectRevenue;
|
return projectRevenue;
|
||||||
}
|
}
|
||||||
|
|
@ -795,7 +797,7 @@ public class FinancialFormReport extends AbstractReportFormPlugin implements Plu
|
||||||
// 设置到表格行
|
// 设置到表格行
|
||||||
boolean isValidPeriod = !valueDate.after(accrualDate) && !accrualDate.after(expireDate);
|
boolean isValidPeriod = !valueDate.after(accrualDate) && !accrualDate.after(expireDate);
|
||||||
if (isValidPeriod){
|
if (isValidPeriod){
|
||||||
row.set(DYNAMICS_FIELDS[3], revenue);
|
row.set(DYNAMICS_FIELDS[3], revenue.setScale(2, RoundingMode.HALF_UP));
|
||||||
}else {
|
}else {
|
||||||
row.set(DYNAMICS_FIELDS[3], BigDecimal.ZERO);
|
row.set(DYNAMICS_FIELDS[3], BigDecimal.ZERO);
|
||||||
return BigDecimal.ZERO;
|
return BigDecimal.ZERO;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue