diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/list/CaCertificateListPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/list/CaCertificateListPlugin.java new file mode 100644 index 0000000..f5ccb93 --- /dev/null +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/list/CaCertificateListPlugin.java @@ -0,0 +1,64 @@ +package shkd.sys.sys.plugin.list; + +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.resource.ResManager; +import kd.bos.dataentity.resource.promptenum.MultiLangEnumBridge; +import kd.bos.entity.EntityMetadataCache; +import kd.bos.entity.MainEntityType; +import kd.bos.entity.datamodel.ListSelectedRow; +import kd.bos.entity.datamodel.ListSelectedRowCollection; +import kd.bos.form.control.events.ItemClickEvent; +import kd.bos.form.events.ClosedCallBackEvent; +import kd.bos.list.BillList; +import kd.bos.list.plugin.AbstractListPlugin; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.operation.SaveServiceHelper; +import kd.bos.svc.ca.CAModule; +import kd.sdk.plugin.Plugin; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; + +/** + * 标准单据列表插件 + */ +public class CaCertificateListPlugin extends AbstractListPlugin implements Plugin { + @Override + public void itemClick(ItemClickEvent evt) { + super.itemClick(evt); + String itemKey = evt.getItemKey(); + //获取列表 + BillList list = this.getControl("billlistap"); + //获取列表选中的行数据 + ListSelectedRowCollection selectedRows = list.getSelectedRows(); + if ("userphone".equals(itemKey)) { + List selectedRowPKValues = new ArrayList<>(); + for (ListSelectedRow selectedRow : selectedRows) { + selectedRowPKValues.add(selectedRow.getPrimaryKeyValue()); + } + selectedRowPKValues = new ArrayList<>(new HashSet<>(selectedRowPKValues)); + for (Object primaryKeyValue : selectedRowPKValues) { + DynamicObject bdUsercredentials = BusinessDataServiceHelper.loadSingle(primaryKeyValue, "bd_usercredentials"); + Object uname = bdUsercredentials.get("uname"); + if (uname == null) { + bdUsercredentials.set("shkd_glyhsjh", ""); + SaveServiceHelper.save(new DynamicObject[]{bdUsercredentials}); + } else { + DynamicObject[] bdUserandcertrelation = BusinessDataServiceHelper.load("bd_userandcertrelation", + "id,userid,certid", new QFilter("certid", QCP.equals, primaryKeyValue).toArray()); + if (bdUserandcertrelation.length > 0) { + DynamicObject dynamicObject = bdUserandcertrelation[0]; + DynamicObject bosUser = BusinessDataServiceHelper.loadSingle(dynamicObject.get("userid"), "bos_user"); + bdUsercredentials.set("shkd_glyhsjh", bosUser.getString("phone")); + SaveServiceHelper.save(new DynamicObject[]{bdUsercredentials}); + } + } + //列表刷新操作 + list.refresh(); + } + } + } +} \ No newline at end of file