贷记单提交计算扣减后金额
This commit is contained in:
ljw 2025-01-03 20:43:39 +08:00
parent decab91882
commit 1a9d97c3a5

View File

@ -52,8 +52,33 @@ public class DebCredNewSubmitOp extends AbstractOperationServicePlugIn {
public void beforeExecuteOperationTransaction(BeforeOperationArgs e) { public void beforeExecuteOperationTransaction(BeforeOperationArgs e) {
super.beforeExecuteOperationTransaction(e); super.beforeExecuteOperationTransaction(e);
for (ExtendedDataEntity dataEntity : e.getSelectedRows()) { for (ExtendedDataEntity dataEntity : e.getSelectedRows()) {
DynamicObject billObj = dataEntity.getDataEntity(); DynamicObject dynamicObject = dataEntity.getDataEntity();
getlast(billObj); DynamicObject billObj = BusinessDataServiceHelper.loadSingle(dynamicObject.getPkValue(), dynamicObject.getDynamicObjectType().getName());
DynamicObject yemCurrency = billObj.getDynamicObject("yem_currency");
getlast(dynamicObject);
if (yemCurrency!=null){
/*
1如果结算币别=美元
 扣减后金额美元=上次美元金额实际+ 配件资金池增加金额-配件资金池扣减金额
 扣减后金额人民币= 上次人民币金额实际
2如果结算币别=人民币
 扣减后金额美元=上次美元金额实际
 扣减后金额人民币= 上次人民币金额实际+ 配件资金池增加金额-配件资金池扣减金额
*/
String number = yemCurrency.getString("number");
BigDecimal yemCreditusdamt = billObj.getBigDecimal("yem_creditusdamt");//上次美元金额实际
BigDecimal yemCreditrmbamt = billObj.getBigDecimal("yem_creditrmbamt");//上次人民币金额实际
BigDecimal yemAmount = billObj.getBigDecimal("yem_amount");//配件资金池增加金额
BigDecimal yemAmountSub = billObj.getBigDecimal("yem_amount_sub");//配件资金池扣减金额
if ("CNY".equals(number)){
dynamicObject.set("yem_koujianusd",yemCreditusdamt);
dynamicObject.set("yem_koujiancny",yemCreditrmbamt.add(yemAmount.subtract(yemAmountSub)));
}else if ("USD".equals(number)){
dynamicObject.set("yem_koujianusd",yemCreditusdamt.add(yemAmount.subtract(yemAmountSub)));
dynamicObject.set("yem_koujiancny",yemCreditrmbamt);
}
}
SaveServiceHelper.update(dynamicObject);
} }
} }
/** /**
@ -155,7 +180,5 @@ public class DebCredNewSubmitOp extends AbstractOperationServicePlugIn {
} }
} }
} }
SaveServiceHelper.update(temp);
} }
} }