/// <summary> /// 从双控获模块菜单 /// </summary> /// <param name="platform">平台类型 0 windows 1安卓终端 2手机APP</param> /// <returns></returns> public ActionResult GetMenuList(int platform) { try { var columnMenu = new TerminalDataSetBLL().GetMenuConfigList(platform); var firstLevelMenus = columnMenu.Where(x => x.ParentId == platform.ToString()); List <MenuTreeModel> data = new List <MenuTreeModel>(); foreach (var firstmenu in firstLevelMenus) { data.Add(new MenuTreeModel(firstmenu, platform.ToString())); } foreach (var firstLevel in data) { MenuTreeHelper.FomateTree(firstLevel, columnMenu); } return(Json(data, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(new List <MenuTreeModel>(), JsonRequestBehavior.AllowGet)); } }
/// <summary> /// 根据配置获取页面展示 /// </summary> public List <ActivityCategoryEntity> GetActivityMenu(string userId, string deptId, string module) { //获取双控数据 var columnMenu = new TerminalDataSetBLL().GetMenuConfigList(0); List <ActivityCategoryEntity> result = new List <ActivityCategoryEntity>(); if (columnMenu.Count > 0) { //var code = module == "班组活动" ? "activity" : "education"; var frist = columnMenu.FirstOrDefault(x => x.ModuleCode == module); if (frist != null) { //配置的二级菜单 var second = columnMenu.Where(x => x.ParentId == frist.ModuleId).OrderBy(x => x.Sort); //创建基础类型的查询实体 Dictionary <string, string[]> categoryList = new Dictionary <string, string[]>(); #region windows code对照表 // 教育培训类型 1.技术讲课 2.技术问答 3.事故预想 4.反事故预想 5.新技术问答 6.新事故预想 7.拷问讲解 8考问讲解(集中式) //教育培训 education //安全技术培训 education_edutrain //技术讲课 education_teach //事故预想 education_expect //反事故演习 education_drill //技术问答 education_qaa //考问讲解 education_qa //安全学习日 education_safeday //班组活动 activity //安全日活动 activity_safeday //政治学习 activity_study //民主管理会 activity_manage //班务会 activity_meet //上级精神宣贯 activity_superior #endregion #region 对照类型 foreach (var item in second) { if (item.ModuleCode == "education_edutrain") { continue; } switch (item.ModuleCode) { //教育培训的分类 //技术讲课 1 case "education_teach": categoryList.Add(item.ModuleCode, new string[] { "1", item.ModuleName }); break; //技术问答 2 case "education_qaa": categoryList.Add(item.ModuleCode, new string[] { "2", item.ModuleName }); break; //事故预想 3 case "education_expect": categoryList.Add(item.ModuleCode, new string[] { "3", item.ModuleName }); break; //反事故演习 4 case "education_drill": categoryList.Add(item.ModuleCode, new string[] { "4", item.ModuleName }); break; //拷问讲解 7 case "education_qa": categoryList.Add(item.ModuleCode, new string[] { "7", item.ModuleName }); break; //安全学习日 case "education_safeday": categoryList.Add("EA", new string[] { item.ModuleName }); break; //其他活动 default: categoryList.Add(item.ModuleCode, new string[] { item.ModuleName }); break; } } #endregion result = service.GetMenuIndex(module, userId, deptId, categoryList); } } return(result); }
/// <summary> /// 根据配置获取页面展示 /// </summary> public JsonResult GetActualWarning() { var user = OperatorProvider.Provider.Current(); var traingtype = Config.GetValue("TrainingType"); var CustomerModel = Config.GetValue("CustomerModel"); var data = new List <IndexActualModel>(); data = CacheFactory.Cache().GetCache <List <IndexActualModel> >("ActualWarning_" + user.DeptId); if (data != null) { return(Json(data)); } else { data = new List <IndexActualModel>(); } //获取双控菜单配置 var MenuData = new TerminalDataSetBLL().GetMenuConfigList(1); var RealTimeBool = new bool[] { false, false, false, true, false }; var one = MenuData.Where(x => x.ModuleName == "班前班后会").FirstOrDefault();//班前班后会 if (one != null) { RealTimeBool[0] = true; } var two = MenuData.Where(x => x.ModuleName == "班组活动").FirstOrDefault();//班组活动 if (two != null) { RealTimeBool[1] = true; } var three = MenuData.Where(x => x.ModuleName == traingtype || x.ModuleName == CustomerModel).FirstOrDefault();//人身风险预控 or CustomerModel var ModuleName = string.Empty; if (three != null) { RealTimeBool[2] = true; ModuleName = three.ModuleName; } var five = MenuData.Where(x => x.ModuleName == "教育培训").FirstOrDefault();//教育培训 if (five != null) { RealTimeBool[4] = true; } var DictionaryData = new IndexManageBLL().RealTime(user.DeptId, ModuleName, RealTimeBool, user.UserId); //排序 foreach (var item in DictionaryData) { var One = new IndexActualModel() { name = item.Key, num = item.Value, sort = item.Key.Contains("连续一周") ? 1 : item.Key.Contains("连续两周") ? 2 : item.Key.Contains("今日未开展人身风险预控") ? 3 : item.Key.Contains("14天未开展") ? 4 : item.Key.Contains("未整改违章") ? 5 : item.Key.Contains("未整改隐患") ? 6 : 7, }; data.Add(One); } data = data.OrderBy(x => x.sort).ToList(); CacheFactory.Cache().WriteCache(data, "ActualWarning_" + user.DeptId, DateTime.Now.AddHours(5)); return(Json(data)); }