首页 > 编程语言 > c# winfom从0学习开发开发OA、BPM工作流程与自定义表单系统(四)角色与权限管理

c# winfom从0学习开发开发OA、BPM工作流程与自定义表单系统(四)角色与权限管理

时间:2023-10-26 15:33:23浏览次数:41  
标签:自定义 角色 c# menu BPM Bll identification var string

角色对应菜单的功能,是为了方便用户相同角色的时候避免了单独为用户设置菜单权限

用户后面只需要对应的选择角色即可享有角色下的导航功能

 角色与菜单来控制首页按钮是都可以操作Enabled是true 还是 false

// 获取所有菜单按钮Enabled=false;
            var all_menu = Bll.Bll_oa_menu.GetDataList();
            foreach (var menu in all_menu)
            {
                if (!string.IsNullOrEmpty(menu.name_identification))
                    ControlEnabledHelper.SetControlEnabled(this, menu.name_identification, false);
            }

                
            string idList = Bll.Bll_oa_role.GetData(user_role_id).oa_menu_id;     
            string[] idArray = idList.Split(','); // 将逗号分隔的字符串拆分成字符串数组
            var result =Bll.Bll_oa_menu.GetDataByIDArray(idArray); // 调用GetDataByIDArray方法并传入idArray作为参数

            // 处理查询结果
            foreach (var menu in result)
            {
                if (!string.IsNullOrEmpty(menu.name_identification))
                    ControlEnabledHelper.SetControlEnabled(this, menu.name_identification, true);
            }

 

标签:自定义,角色,c#,menu,BPM,Bll,identification,var,string
From: https://www.cnblogs.com/cxyyn/p/17789522.html

相关文章

  • 无涯教程-Clojure - pop函数
    对于列表或队列,返回没有第一项的新列表/队列,对于向量,返回没有最后一项的新向量。pop-语法以下是语法。(popvec)参数   - "vec"是元素的向量集。返回值 - 返回不带最后一项的新向量。pop-示例(nsclojure.examples.example(:gen-class))(defnexamp......
  • Codeforces Round 904 (Div. 2)
    A.没想到是暴力,做的很晚B.手玩一下即可C.MediumDesign给定一个长为\(n\)的数组\(a\),和若干条线段\([l_i,r_i]\),你可以选择这其中的任何若干条线段,并让\(a_l\sima_r\)均\(+1\).请你计算可以得到的\(\max(a)-\min(a)\).这题本来想的是先把所有的加进去,得到......
  • 服务器常见问题排查(一)——cpu占用高、上下文频繁切换、频繁GC
    一般而言cpu异常往往还是比较好定位的。原因包括业务逻辑问题(死循环)、频繁gc以及上下文切换过多。而最常见的往往是业务逻辑(或者框架逻辑)导致的,可以使用jstack来分析对应的堆栈情况。使用jstack排查占用率问题当使用jstack排查占用率问题时,可以按照以下步骤进行:首先,使用......
  • c# winfom从0学习开发开发OA、BPM工作流程与自定义表单系统(三)设计程序导航菜单
         程序的导航菜单是开发者前提定义好的功能,所以不涉及自主添加删除,只需要后期针对用户对应的角色进行权限控制即可,所以设计为属性结构显示导航菜单预览的一个功能。......
  • chrome新版本http自动跳转https问题解决
    虽然是个好功能,但是部分内网业务还没做好https兼容,有的时候手工访问,还是变成https 解决办法:chrome://flags/找到:HTTPSUpgrades,修改disabled,重启解决,当然这个需要需要用户去调整,真正还需要服务去兼容https  ......
  • 传输层协议 TCP
    TCP(TransportControlProtocol)是一个传输层协议,提供Host-To-Host数据的可靠传输,支持全双工,是一个连接导向的协议。TCP提供的是Host-To-Host传输,一台主机通过TCP发送数据给另一台主机。 TCP协议往上是应用到应用(Application-To-Application)的协议。什么是应用到应用......
  • GUI_DOWNLOAD函数导出EXCEL内容出现了串列
    请教个问题 ,我现在ZPA400这个程序, 用 GUI_DOWNLOAD 下载的EXCEL文件,内容出现了串列,结果如下 导致串列的具体字段为:ZHR018301字段内容为:应安保管控调整要求,员工进入厂区禁止携带智能手机,警卫自行拆除闸机、移位监控、搬运手机柜节省RMB1200元,按奖惩规定5.3.4.25节省费用......
  • Generative AI 新世界 | Falcon 40B 开源大模型的部署方式分析
    在上期文章,我们探讨了如何在自定义数据集上来微调(fine-tuned)模型。本期文章,我们将重新回到文本生成的大模型部署场景,探讨如何在AmazonSageMaker上部署具有400亿参数的Falcon40B开源大模型。亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开......
  • java如何从Content-Disposition获取文件名的正则表达式
    一,主要是关于:post请求下载文件,如何从Content-Disposition获取文件名的正则表达式记录:HttpResponsehttpResponse=httpRequest.execute();byte[]bytes=httpResponse.bodyBytes();Stringheader=httpResponse.header("Content-Disposition")......
  • pageofficeV6强制留痕模式编辑
    转载:强制留痕模式编辑强制留痕模式编辑注意本文中展示的代码均为关键代码,复制粘贴到您的项目中,按照实际的情况,例如文档路径,用户名等做适当修改即可使用。Word中的“痕迹”功能可以跟踪文档中所做的更改。痕迹可以包括添加、删除、移动和格式更改等。Word提供了“痕迹保留”功......