Procházet zdrojové kódy

Merge branch 'master' of http://111.75.220.136:10030/13246659623/jxyh

徐昊 před 9 měsíci
rodič
revize
326bf91f32

+ 24 - 5
src/main/java/fi/gl/formplugin/DailyexcuteFormPlugin.java

@@ -12,24 +12,27 @@ import kd.bos.form.control.Control;
 import kd.bos.form.control.EntryGrid;
 import kd.bos.form.control.events.CellClickEvent;
 import kd.bos.form.control.events.CellClickListener;
+import kd.bos.form.field.BasedataEdit;
+import kd.bos.form.field.events.BeforeF7SelectEvent;
+import kd.bos.form.field.events.BeforeF7SelectListener;
+import kd.bos.list.ListShowParameter;
 import kd.bos.orm.query.QCP;
 import kd.bos.orm.query.QFilter;
+import kd.bos.permission.api.HasPermOrgResult;
 import kd.bos.servicehelper.BusinessDataServiceHelper;
 import kd.bos.servicehelper.operation.DeleteServiceHelper;
 import kd.bos.servicehelper.operation.SaveServiceHelper;
+import kd.bos.servicehelper.permission.PermissionServiceHelper;
 import org.apache.commons.lang3.StringUtils;
 
-import java.util.Date;
-import java.util.EventObject;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 日结执行界面插件
  * 2024-06-28 wangj
  * 主要功能:日结执行按钮逻辑
  */
-public class DailyexcuteFormPlugin extends AbstractBillPlugIn implements CellClickListener
+public class DailyexcuteFormPlugin extends AbstractBillPlugIn implements CellClickListener, BeforeF7SelectListener
 {
 
     private final static String KEY_DAILY = "nckd_daily";
@@ -43,6 +46,9 @@ public class DailyexcuteFormPlugin extends AbstractBillPlugIn implements CellCli
 
         EntryGrid entryGrid = this.getView().getControl("nckd_entryentity");
         entryGrid.addCellClickListener(this);
+
+        BasedataEdit bEdit = this.getView().getControl("nckd_org");
+        bEdit.addBeforeF7SelectListener(this);
     }
 
     @Override
@@ -202,4 +208,17 @@ public class DailyexcuteFormPlugin extends AbstractBillPlugIn implements CellCli
     public void cellDoubleClick(CellClickEvent cellClickEvent) {
         //
     }
+
+    @Override
+    public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
+        String propertyName = beforeF7SelectEvent.getProperty().getName();
+        if("nckd_org".equals(propertyName)) {
+            ListShowParameter formShowParameter = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter();
+            List<QFilter> qFilters = new ArrayList<>();
+            HasPermOrgResult userHasPermOrgs = PermissionServiceHelper.getUserHasPermOrgs(Long.parseLong(RequestContext.get().getUserId()));
+            List<Long> hasPermOrgs = userHasPermOrgs.getHasPermOrgs();
+            qFilters.add(new QFilter("id", QCP.in, hasPermOrgs));
+            formShowParameter.getListFilterParameter().setQFilters(qFilters);
+        }
+    }
 }