/* ============================================================================== * 功能描述:XmlMenuDataWrapper * 创 建 者:Garrett * 创建日期:2018/9/18 8:53:36 * ==============================================================================*/ using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using SAGA.DotNetUtils; using SAGA.DotNetUtils.MBI; namespace SAGA.RevitMenu.Configuration { /// /// XmlMenuDataWrapper /// class XmlMenuDataWrapper { /// /// 跟据用户权限,对菜单数据进行修饰 /// /// public static void Wrapper(TszTabData[] tabDatas) { var showMenusList = ReadUserMeunPermissionData(Path.Combine(OutReachConst.MBITempSettingPath,OutReachConst.UserMenuPermission)); foreach (var tabData in tabDatas) { foreach (var panelData in tabData.Panels) { foreach (var buttonData in panelData.Buttons) { if (buttonData.ClassName.IsNotNullEmpty()) { buttonData.Visible = showMenusList.Contains(buttonData.ClassName); } } } } } /// /// 读取用户权限数据 /// /// /// private static List ReadUserMeunPermissionData(string path) { List < string > list=new List(); if (File.Exists(path)) { using (StreamReader sr = new StreamReader(path, Encoding.UTF8)) { String line; while ((line = sr.ReadLine()) != null) { //var mode = line.JsonToObject(); var mode = line; list.Add(mode); } } } return list; } } }