二开案例.表单插件.信息中心导航树隐藏节点

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

二开案例.表单插件.信息中心导航树隐藏节点

【应用场景】

信息中心导航树隐藏节点



【案例演示】

信息中心,隐藏一级节点【业务流程】下的二级节点【流程列表】。

上传图片




【实现步骤】

<1>编写表单插件,代码如下。

using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel;
using Kingdee.BOS.Core.Metadata;
using Kingdee.BOS.Util;
using Kingdee.BOS.Workflow.PlugIns.Worklist;
using System;
using System.ComponentModel;
using System.Linq;
using System.Reflection;
namespace Jac.XkDemo.BOS.Business.PlugIn
{
    /// <summary>
    /// 【表单插件】信息中心导航树隐藏节点
    /// </summary>
    [Description("【表单插件】信息中心导航树隐藏节点"), HotUpdate]
    public class WfWorklistHideNodeFormPlugIn : AbstractDynamicFormPlugIn
    {
        public override void AfterBindData(EventArgs e)
        {
            base.AfterBindData(e);
            var isGroupByBillType = ObjectUtils.Object2Bool(this.View.Session["isGroupByBillType"]);
            var plugIn_WorklistMainEdit = new WorklistMainEdit();
            var fd_isGroupByBillType = plugIn_WorklistMainEdit.GetType().GetField("isGroupByBillType", BindingFlags.Instance | BindingFlags.NonPublic);
            var md_BuildNavigationNodes = plugIn_WorklistMainEdit.GetType().GetMethod("BuildNavigationNodes", BindingFlags.Instance | BindingFlags.NonPublic);
            if (fd_isGroupByBillType == null || md_BuildNavigationNodes == null)
            {
                return;
            }
            fd_isGroupByBillType.SetValue(plugIn_WorklistMainEdit, isGroupByBillType);
            var rootNode = (TreeNode)md_BuildNavigationNodes.Invoke(plugIn_WorklistMainEdit, null);
            // 移除一级节点【业务流程】下的二级节点【流程列表】
            var node50 = rootNode.children.FirstOrDefault(o => o.id == "50");
            if (node50 != null)
            {
                node50.children.RemoveAll(o => o.id == "52");
            }
            var navTree = this.View.GetControl<TreeView>("FTreeView");
            navTree.SetRootNode(rootNode);
            navTree.InvokeControlMethod("ExpandTree");
        }
    }
}
/* 信息中心树节点内码-节点名称对照表
10:信息中心 - 任务
11:待处理任务
12:已处理任务
13:我的转发
14:我的加签
15:我的委托
60:信息中心 - 监控消息
61:监控消息
62:执行计划消息
20:信息中心 - 消息
23:普通消息
24:流程消息
27:发件箱
22:废件箱
30:信息中心 - 工作流
31:草稿箱
32:我的收藏
33:流程列表
34:流程查询
35:我的流程
50:信息中心 - 业务流
51:我的收藏
52:流程列表
40:信息中心 - 设置
41:信息中心设置
42:委托设置 
*/


<3>拷贝插件组件到应用站点的WebSite\Bin目录下,重启IIS。

上传图片


<4>BOSIDE扩展流程信息中心_主界面[WF_Worklist_Main],注册表单插件,保存元数据,开发完毕。



【功能验证】

<1>登录业务站点,打开信息中心,左侧导航树节点流程列表已消失不见,如下图。

上传图片

---------------------------------------------------------------------------------------------------------













【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696


二开案例.表单插件.信息中心导航树隐藏节点

【应用场景】信息中心导航树隐藏节点【案例演示】信息中心,隐藏一级节点【业务流程】下的二级节点【流程列表】。【实现步骤】<1>编写表单...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息