Merge remote-tracking branch 'origin/main' into main

This commit is contained in:
陈绍鑫 2025-11-15 14:26:02 +08:00
commit 015561c5ae
2 changed files with 87 additions and 1 deletions

View File

@ -0,0 +1,86 @@
package shkd.sys.sys.plugin.form;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.resource.ResManager;
import kd.bos.form.field.events.BeforeF7SelectEvent;
import kd.bos.form.field.events.BeforeF7SelectListener;
import kd.bos.list.ListShowParameter;
import kd.bos.orm.query.QFilter;
import kd.tmc.cfm.common.helper.CfmBillCommonHelper;
import kd.tmc.cfm.formplugin.bill.AbstractMultCateTextF7Plugin;
import kd.tmc.fbp.common.enums.BankAcctStatusEnum;
import kd.tmc.fbp.common.helper.TmcAccountHelper;
import kd.tmc.fbp.common.util.EmptyUtil;
/**
* @Description 借款合同变更债权人选择基础资料
* @Author Tao
* @Date 2025/10/21
*/
public class ChangeContractDebtorEdit extends AbstractMultCateTextF7Plugin implements BeforeF7SelectListener {
@Override
protected String getTypePropName() {
return "creditortype";
}
@Override
protected String getTextPropName() {
return "textcreditor";
}
@Override
protected String getIdPropName() {
return "creditor";
}
@Override
public void beforeF7Select(BeforeF7SelectEvent evt) {
switch (evt.getProperty().getName()) {
case "loaneracctbank":
this.creditorBankAcctF7Evt(evt);
break;
case "accountbank":
this.debtorBankAcctF7Evt(evt);
}
}
private void creditorBankAcctF7Evt(BeforeF7SelectEvent evt) {
this.bankAcctF7Evt(evt, "creditorg");
}
private void debtorBankAcctF7Evt(BeforeF7SelectEvent evt) {
this.bankAcctF7Evt(evt, "org");
}
private void bankAcctF7Evt(BeforeF7SelectEvent evt, String orgProp) {
if (this.isCurrencyInputYet(evt)) {
DynamicObject fundOrg = (DynamicObject)this.getModel().getValue(orgProp);
if (EmptyUtil.isEmpty(fundOrg)) {
evt.setCancel(true);
this.getView().showTipNotification(String.format(ResManager.loadKDString("请先选择%s。", "ContractCreditorDebtorEdit_3", "tmc-cfm-formplugin", new Object[0]), CfmBillCommonHelper.getPropLocalDisplayName(this.getView(), orgProp)));
} else {
QFilter qFilter = this.getBankAcctFilter(fundOrg);
ListShowParameter sp = (ListShowParameter)evt.getFormShowParameter();
sp.setUseOrgId((Long)fundOrg.getPkValue());
sp.setIsolationOrg(true);
sp.getListFilterParameter().setFilter(qFilter);
}
}
}
private boolean isCurrencyInputYet(BeforeF7SelectEvent evt) {
DynamicObject currency = (DynamicObject)this.getModel().getValue("currency");
if (EmptyUtil.isEmpty(currency)) {
evt.setCancel(true);
this.getView().showTipNotification(String.format(ResManager.loadKDString("请先选择%s。", "ContractCreditorDebtorEdit_3", "tmc-cfm-formplugin", new Object[0]), CfmBillCommonHelper.getPropLocalDisplayName(this.getView(), "currency")));
return false;
} else {
return true;
}
}
private QFilter getBankAcctFilter(DynamicObject fundOrg) {
long orgId = fundOrg == null ? 0L : Long.parseLong(fundOrg.getPkValue().toString());
return TmcAccountHelper.getAccountBankFilterByOrg(orgId).and("acctstatus", "=", BankAcctStatusEnum.NORMAL.getValue()).and(new QFilter("acctclassify", "!=", "I"));
}
}

View File

@ -52,7 +52,7 @@ public class GuaranteeContractPatchPlugin extends AbstractReportListDataPluginEx
" b.fgratio AS shkd_gratio\n" + " b.fgratio AS shkd_gratio\n" +
"FROM \n" + "FROM \n" +
" t_gm_guarcontract AS a\n" + " t_gm_guarcontract AS a\n" +
" LEFT JOIN t_gm_guaranteed_entry AS b \n" + " LEFT JOIN t_gm_guarantee_entry AS b \n" +
" ON a.fid = b.fid"); " ON a.fid = b.fid");
DataSet hl = DB.queryDataSet(this.getClass().getSimpleName(), DBRoute.of("fi"), sqlBuilder.toString());//系统云 DataSet hl = DB.queryDataSet(this.getClass().getSimpleName(), DBRoute.of("fi"), sqlBuilder.toString());//系统云
JoinDataSet join = dataSet.join(hl, JoinType.LEFT); JoinDataSet join = dataSet.join(hl, JoinType.LEFT);