Przeglądaj źródła

新增单据列表创建人过滤插件

sbtjtserver/zhaoxh 5 miesięcy temu
rodzic
commit
31f47b9dba

+ 35 - 0
src/main/java/kd/bos/utils/SetCuFilterListPlugin.java

@@ -0,0 +1,35 @@
+package kd.bos.utils;
+
+import kd.bos.context.RequestContext;
+import kd.bos.dataentity.entity.DynamicObject;
+import kd.bos.form.events.SetFilterEvent;
+import kd.bos.list.ListShowParameter;
+import kd.bos.list.plugin.AbstractListPlugin;
+import kd.bos.orm.query.QCP;
+import kd.bos.orm.query.QFilter;
+import kd.bos.servicehelper.BusinessDataServiceHelper;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 通用列表插件
+ * 2024-11-07 wangj
+ * 主要功能:增加列表过滤登录用户只能查看创建人为自己的数据
+ */
+public class SetCuFilterListPlugin extends AbstractListPlugin {
+    @Override
+    public void setFilter(SetFilterEvent e) {
+        super.setFilter(e);
+        ListShowParameter param = (ListShowParameter) this.getView().getFormShowParameter();
+        if(param.getCustomParam("isopencufilter")!=null){
+            String isopencufilter = param.getCustomParam("isopencufilter");
+            if("true".equals(isopencufilter)){
+                Long userId = Long.valueOf(RequestContext.get().getUserId());
+                List<QFilter> qFilters = new ArrayList<>();
+                qFilters.add(new QFilter("creator",  QCP.equals, userId));
+                e.setCustomQFilters(qFilters);
+            }
+        }
+    }
+}