/// <summary> /// 修改的界面 /// </summary> /// <param name="id"></param> /// <returns></returns> public ActionResult Edit(string id) { T_Sys_Users one = _bll.FindSingleData(Guid.Parse(id)); //角色的设置界面 ViewBag.roles = new SelectList(SysDataHelper <sys_role> .GetData(), "id", "rowname"); return(View(one)); }
/// <summary> /// 添加用户的界面 /// </summary> /// <returns></returns> public ActionResult Add() { T_Sys_Users user = new T_Sys_Users(); user.CreateDate = DateTime.Now; //角色的设置界面 ViewBag.roles = new SelectList(SysDataHelper <sys_role> .GetData(), "id", "rowname"); return(View(user)); }
/// <summary> /// 获得操作行为的界面 /// </summary> /// <param name="id"></param> /// <returns></returns> public ActionResult GetActionTree(int id) { List <sys_action> actions = SysDataHelper <sys_action> .GetData().ToList(); ViewBag.Actions = actions; ViewBag.moduleid = id; //已经勾选过的按钮 ViewBag.HaveMenu = _menuaction.GetData().Where(g => g.menuid == id.ToString()).ToList(); return(View()); }
/// <summary> /// 读取数据库用户表数据,判断用户密码是否匹配 /// </summary> /// <param name="name"></param> /// <param name="password"></param> /// <returns></returns> internal T_Sys_Users ValidateUserLogin(string name, string password) { string encpawd = MD5Helper.EncryptString(password); IList <T_Sys_Users> sysUsers = SysDataHelper <T_Sys_Users> .GetData(m => m.UserName == name && m.PassWord == encpawd).ToList(); if (sysUsers.ToList().Count > 0) { T_Sys_Users sysUser = sysUsers.ToList().FirstOrDefault(); HttpContext.Current.Session["userinfo"] = JsonConvert.SerializeObject(sysUser); return(sysUser); } else { return(null); } }
/// <summary> /// 根据角色获得行为 /// </summary> /// <param name="roleid"></param> /// <param name="rolemenus"></param> /// <returns></returns> public static string GetControllerAndActions(string roleid, List <rel_rolemenus> rolemenus) { Dictionary <string, string> controllerDic = new Dictionary <string, string>(); List <rel_rolemenus> menuandaction = rolemenus; List <T_Bas_Module> menus = SysDataHelper <T_Bas_Module> .GetData().ToList(); List <sys_action> actions = SysDataHelper <sys_action> .GetData().ToList(); //1.将控制器和行为的主键进行分离 foreach (rel_rolemenus tmp in menuandaction) { string[] tmparr = tmp.menuid.Split('*'); int moduleid = Convert.ToInt32(tmparr[0]); var firstOrDefault = menus.FirstOrDefault(g => g.MouduleID == moduleid); if (firstOrDefault != null) { //处理控制器的字符串 string controllername = CtrlControllerName(firstOrDefault.MenuUrl); var sysAction = actions.FirstOrDefault(g => g.id == tmparr[1]); if (sysAction != null) { string action = sysAction.actioncode; action = AppendActions(action); if (!string.IsNullOrEmpty(controllername) && !string.IsNullOrEmpty(action)) { //如果有此控制器就继续追加行为 if (controllerDic.ContainsKey(controllername)) { string val = controllerDic[controllername]; string newval = val + "," + action; controllerDic[controllername] = newval; } else//如果没有就添加 { if (!string.IsNullOrEmpty(controllername)) { controllerDic.Add(controllername, action); } } } } } } string retl = DicToStr(controllerDic); return(retl); }
public static string GetMenuJsonStringResult() { //Json 数据 StringBuilder JsonData = new StringBuilder(); JsonData.Append("{menu:"); //模块列表 IList <T_Bas_Module> moduleBigList = SysDataHelper <T_Bas_Module> .GetData(M => M.ApplicationID == 1 && M.IsUse == 0); if (moduleBigList.Count > 0) { JavaScriptSerializer json = new JavaScriptSerializer(); StringBuilder sb = new StringBuilder(); if (moduleBigList != null) { var menu = from module in moduleBigList where module.ParentID == 0 && module.Path == 1 select new { menuid = module.MouduleID, name = module.MouduleName, code = module.MouduleID, icon = module.IcoPath, type = module.MouduleType }; var Parentmenu = menu.ToList(); int ParentCount = Parentmenu.Count; json.Serialize(Parentmenu, sb); JsonData.Append(sb.Append(",app:{")); var childMenu = from chlid in moduleBigList where chlid.ParentID > 0 && chlid.Path == 2 orderby chlid.OrderID ascending select new { appid = chlid.MouduleID, icon = chlid.IcoPath, name = chlid.MouduleName, url = chlid.MenuUrl, parentId = chlid.ParentID, sonMenu = getSonModule(moduleBigList, chlid.MouduleID), asc = chlid.OrderID, type = chlid.MouduleType }; sb.Clear(); var child = childMenu.ToList(); int Chidcount = child.Count; json.Serialize(child, sb); var result = sb.ToString().TrimStart('[').TrimEnd(']').Replace("},", "},*").TrimEnd(new char[] { ',', '*' }).Split('*'); sb.Clear(); if (Chidcount == result.Length) { for (int i = 0; i < Chidcount; i++) { string singeResult = string.Format("'{0}':{1}", child[i].appid, result[i].Replace('$', ',')); JsonData.Append(singeResult); } JsonData.Append("}}*"); var ss = JsonData.ToString(); } sb.Append("ops = {"); bool isRemove = false; for (int n = 0; n < ParentCount; n++) { sb.Append("Icon" + (n + 1) + ":["); var parentId = Parentmenu[n].menuid; for (int i = 0; i < Chidcount; i++) { if (parentId == child[i].parentId) { isRemove = true; sb.Append(string.Format("'{0}',", child[i].appid)); } } if (isRemove) { sb.Remove(sb.Length - 1, 1); isRemove = false; } sb.Append("],"); } JsonData.Append(sb.ToString().TrimEnd(',')); JsonData.Append("}"); sb.Clear(); } } return(JsonData.ToString()); }