定额备用金初始台账跳转借款单列表逻辑
This commit is contained in:
parent
965a162a3f
commit
f41f997baa
|
|
@ -0,0 +1,49 @@
|
||||||
|
package zcgj.zcdev.zcdev.fs.plugin.form;
|
||||||
|
|
||||||
|
import kd.bos.bill.AbstractBillPlugIn;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||||
|
import kd.bos.form.ShowType;
|
||||||
|
import kd.bos.form.control.EntryGrid;
|
||||||
|
import kd.bos.form.events.HyperLinkClickEvent;
|
||||||
|
import kd.bos.form.events.HyperLinkClickListener;
|
||||||
|
import kd.bos.list.ListShowParameter;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.EventObject;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 定额备用金初始台账表单插件
|
||||||
|
*/
|
||||||
|
public class QuotaImprestLedgerBillPlugin extends AbstractBillPlugIn implements HyperLinkClickListener {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void registerListener(EventObject e) {
|
||||||
|
super.registerListener(e);
|
||||||
|
EntryGrid entryGrid = this.getView().getControl("zcgj_entryentity");
|
||||||
|
entryGrid.addHyperClickListener(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void hyperLinkClick(HyperLinkClickEvent hyperLinkClickEvent) {
|
||||||
|
String fieldName = hyperLinkClickEvent.getFieldName();
|
||||||
|
if (StringUtils.equals(fieldName, "zcgj_usedquota")) {
|
||||||
|
//已使用
|
||||||
|
List<Long> dailyLoanBillDataIds = new ArrayList<>();
|
||||||
|
int rowIndex = hyperLinkClickEvent.getRowIndex();
|
||||||
|
DynamicObjectCollection entryEntityCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_entryentity");//分录
|
||||||
|
DynamicObject entryEntity = entryEntityCollection.get(rowIndex);
|
||||||
|
DynamicObjectCollection zcgj_dailyLoanBillDataIds = entryEntity.getDynamicObjectCollection("zcgj_dailyloanbilldatas");//被引用的借款单数据
|
||||||
|
for (DynamicObject zcgj_dailyLoanBillDataId : zcgj_dailyLoanBillDataIds) {
|
||||||
|
dailyLoanBillDataIds.add((Long) zcgj_dailyLoanBillDataId.getDynamicObject("fbasedataid").getPkValue());
|
||||||
|
}
|
||||||
|
ListShowParameter listShowParameter = new ListShowParameter();
|
||||||
|
listShowParameter.setFormId("bos_list"); //列表界面
|
||||||
|
listShowParameter.setBillFormId("er_dailyloanbill"); //单据的标识
|
||||||
|
listShowParameter.getOpenStyle().setShowType(ShowType.MainNewTabPage);
|
||||||
|
dailyLoanBillDataIds.forEach(listShowParameter::addLinkQueryPkId);
|
||||||
|
this.getView().showForm(listShowParameter);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -16,6 +16,7 @@ import java.time.LocalDate;
|
||||||
import java.time.ZoneId;
|
import java.time.ZoneId;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -61,6 +62,7 @@ public class LoanSlipReserveFundReverserOp extends AbstractOperationServicePlugI
|
||||||
if (person == null) {
|
if (person == null) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
DynamicObjectCollection zcgj_dailyloanbilldatas = entryEntity.getDynamicObjectCollection("zcgj_dailyloanbilldatas");//借款单
|
||||||
if (person.getPkValue().equals(applier.getPkValue())) {
|
if (person.getPkValue().equals(applier.getPkValue())) {
|
||||||
if (operationKey.equals("submit")) {
|
if (operationKey.equals("submit")) {
|
||||||
//提交
|
//提交
|
||||||
|
|
@ -69,12 +71,23 @@ public class LoanSlipReserveFundReverserOp extends AbstractOperationServicePlugI
|
||||||
BigDecimal zcgj_quota = entryEntity.getBigDecimal("zcgj_quota");//额度
|
BigDecimal zcgj_quota = entryEntity.getBigDecimal("zcgj_quota");//额度
|
||||||
BigDecimal zcgj_remainingquota = zcgj_quota.subtract(entryEntity.getBigDecimal("zcgj_usedquota"));//额度-已使用
|
BigDecimal zcgj_remainingquota = zcgj_quota.subtract(entryEntity.getBigDecimal("zcgj_usedquota"));//额度-已使用
|
||||||
entryEntity.set("zcgj_remainingquota", zcgj_remainingquota);//剩余额度
|
entryEntity.set("zcgj_remainingquota", zcgj_remainingquota);//剩余额度
|
||||||
|
DynamicObject newCurrency = new DynamicObject(zcgj_dailyloanbilldatas.getDynamicObjectType());
|
||||||
|
newCurrency.set("fbasedataId", er_dailyLoanBill);
|
||||||
|
zcgj_dailyloanbilldatas.add(newCurrency);
|
||||||
|
entryEntity.set("zcgj_dailyloanbilldatas", zcgj_dailyloanbilldatas);//借款单
|
||||||
} else if (operationKey.equals("unsubmit") || operationKey.equals("unaudit")) {
|
} else if (operationKey.equals("unsubmit") || operationKey.equals("unaudit")) {
|
||||||
//撤销、反审核
|
//撤销、反审核
|
||||||
BigDecimal zcgj_usedquota = entryEntity.getBigDecimal("zcgj_usedquota").subtract(er_dailyLoanBill.getBigDecimal("loanamount"));//已使用+借款金额
|
BigDecimal zcgj_usedquota = entryEntity.getBigDecimal("zcgj_usedquota").subtract(er_dailyLoanBill.getBigDecimal("loanamount"));//已使用+借款金额
|
||||||
entryEntity.set("zcgj_usedquota", zcgj_usedquota);//已使用
|
entryEntity.set("zcgj_usedquota", zcgj_usedquota);//已使用
|
||||||
BigDecimal zcgj_remainingquota = entryEntity.getBigDecimal("zcgj_quota").subtract(entryEntity.getBigDecimal("zcgj_usedquota"));//额度-已使用
|
BigDecimal zcgj_remainingquota = entryEntity.getBigDecimal("zcgj_quota").subtract(entryEntity.getBigDecimal("zcgj_usedquota"));//额度-已使用
|
||||||
entryEntity.set("zcgj_remainingquota", zcgj_remainingquota);//剩余额度
|
entryEntity.set("zcgj_remainingquota", zcgj_remainingquota);//剩余额度
|
||||||
|
Iterator<DynamicObject> iterator = zcgj_dailyloanbilldatas.iterator();
|
||||||
|
while (iterator.hasNext()) {
|
||||||
|
DynamicObject dynamicObject = iterator.next();
|
||||||
|
if (er_dailyLoanBill.get("billno").equals(dynamicObject.getDynamicObject("fbasedataid").get("billno"))) {
|
||||||
|
iterator.remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -100,6 +113,7 @@ public class LoanSlipReserveFundReverserOp extends AbstractOperationServicePlugI
|
||||||
// DynamicObject person = entryEntity.getDynamicObject("zcgj_person");//人员
|
// DynamicObject person = entryEntity.getDynamicObject("zcgj_person");//人员
|
||||||
DynamicObject zcgj_personType = entryEntity.getDynamicObject("zcgj_persontype");//人员类型
|
DynamicObject zcgj_personType = entryEntity.getDynamicObject("zcgj_persontype");//人员类型
|
||||||
if (zcgj_personType != null && zcgj_personType.getString("number").equals("项目筹备")) {
|
if (zcgj_personType != null && zcgj_personType.getString("number").equals("项目筹备")) {
|
||||||
|
DynamicObjectCollection zcgj_dailyloanbilldatas = entryEntity.getDynamicObjectCollection("zcgj_dailyloanbilldatas");//借款单
|
||||||
if (operationKey.equals("submit")) {
|
if (operationKey.equals("submit")) {
|
||||||
//提交
|
//提交
|
||||||
BigDecimal zcgj_usedquota = entryEntity.getBigDecimal("zcgj_usedquota").add(loanAmount);//已使用+借款金额
|
BigDecimal zcgj_usedquota = entryEntity.getBigDecimal("zcgj_usedquota").add(loanAmount);//已使用+借款金额
|
||||||
|
|
@ -107,12 +121,23 @@ public class LoanSlipReserveFundReverserOp extends AbstractOperationServicePlugI
|
||||||
BigDecimal zcgj_quota = entryEntity.getBigDecimal("zcgj_quota");//额度
|
BigDecimal zcgj_quota = entryEntity.getBigDecimal("zcgj_quota");//额度
|
||||||
BigDecimal zcgj_remainingquota = zcgj_quota.subtract(entryEntity.getBigDecimal("zcgj_usedquota"));//额度-已使用
|
BigDecimal zcgj_remainingquota = zcgj_quota.subtract(entryEntity.getBigDecimal("zcgj_usedquota"));//额度-已使用
|
||||||
entryEntity.set("zcgj_remainingquota", zcgj_remainingquota);//剩余额度
|
entryEntity.set("zcgj_remainingquota", zcgj_remainingquota);//剩余额度
|
||||||
|
DynamicObject newCurrency = new DynamicObject(zcgj_dailyloanbilldatas.getDynamicObjectType());
|
||||||
|
newCurrency.set("fbasedataId", er_dailyLoanBill);
|
||||||
|
zcgj_dailyloanbilldatas.add(newCurrency);
|
||||||
|
entryEntity.set("zcgj_dailyloanbilldatas", zcgj_dailyloanbilldatas);//借款单
|
||||||
} else if (operationKey.equals("unsubmit") || operationKey.equals("unaudit")) {
|
} else if (operationKey.equals("unsubmit") || operationKey.equals("unaudit")) {
|
||||||
//撤销、反审核
|
//撤销、反审核
|
||||||
BigDecimal zcgj_usedquota = entryEntity.getBigDecimal("zcgj_usedquota").subtract(er_dailyLoanBill.getBigDecimal("loanamount"));//已使用+借款金额
|
BigDecimal zcgj_usedquota = entryEntity.getBigDecimal("zcgj_usedquota").subtract(er_dailyLoanBill.getBigDecimal("loanamount"));//已使用+借款金额
|
||||||
entryEntity.set("zcgj_usedquota", zcgj_usedquota);//已使用
|
entryEntity.set("zcgj_usedquota", zcgj_usedquota);//已使用
|
||||||
BigDecimal zcgj_remainingquota = entryEntity.getBigDecimal("zcgj_quota").subtract(entryEntity.getBigDecimal("zcgj_usedquota"));//额度-已使用
|
BigDecimal zcgj_remainingquota = entryEntity.getBigDecimal("zcgj_quota").subtract(entryEntity.getBigDecimal("zcgj_usedquota"));//额度-已使用
|
||||||
entryEntity.set("zcgj_remainingquota", zcgj_remainingquota);//剩余额度
|
entryEntity.set("zcgj_remainingquota", zcgj_remainingquota);//剩余额度
|
||||||
|
Iterator<DynamicObject> iterator = zcgj_dailyloanbilldatas.iterator();
|
||||||
|
while (iterator.hasNext()) {
|
||||||
|
DynamicObject dynamicObject = iterator.next();
|
||||||
|
if (er_dailyLoanBill.get("billno").equals(dynamicObject.getDynamicObject("fbasedataid").get("billno"))) {
|
||||||
|
iterator.remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue