插件挂载位置:表单(提前配置单据参数)
示例:
package kd.yfsw.cellsave.contract;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import java.math.BigDecimal;
import java.util.List;
import kd.bos.entity.datamodel.events.PropertyChangedArgs;
import kd.bos.form.plugin.AbstractFormPlugin;
import kd.bos.servicehelper.parameter.SystemParamServiceHelper;
import kd.yfsw.util.CommonUtil;
import java.util.List;
import java.util.stream.Collectors;
public class IsOrgContractinit extends AbstractFormPlugin {
@Override
public void propertyChanged(PropertyChangedArgs e) {
DynamicObject org = (DynamicObject) this.getModel().getValue("org");
DynamicObjectCollection billParameter = (DynamicObjectCollection) SystemParamServiceHelper.getBillParameter("yfsw_dcxys", "yfsw_entryentity");
List<DynamicObject> rows = billParameter.stream().filter(prop -> getOrgEntryRow(prop, org)).collect(Collectors.toList());
if (rows.size()>0) {
DynamicObject row = rows.get(0);
if (!row.getBoolean("yfsw_checkboxfield1")) {
this.getView().showErrorNotification("单据参数中当前组织的电子合同集成未配置!");
}
}
this.getView().updateView();
}
private boolean getOrgEntryRow(DynamicObject row,DynamicObject org){
DynamicObject company = row.getDynamicObject("yfsw_companies");
Long companyId = company.getLong("id");
Long orgId = org.getLong("id");
if (companyId.compareTo(orgId)==0){
return true;
}
return false;
}
}
![1 1]()
本文链接:https://www.naiteiy.site/index.php/archives/101/
2025年1月6日 14:25
哈哈哈,写的太好了https://www.lawjida.com/