Exemplo n.º 1
0
        /// <summary>
        /// 初始化树 默认找出顶级菜单
        /// </summary>
        /// <returns></returns>
        public List <MenuModels> InitTree()
        {
            db_BFSEntities ent = new db_BFSEntities();
            //var TreeList = ent.SysMenu.ToList();

            string username = System.Web.HttpContext.Current.Session["username"].ToString();
            var    TreeList = (from p in ent.tAdmin
                               where p.Name == username
                               join urole in ent.tSmartRole on p.AdminID equals urole.AdminID
                               join r in ent.tRole on urole.RoleID equals r.RoleID
                               join rm in ent.tRoleMenu on r.RoleID equals rm.RoleID
                               join m in ent.tSysMenu on rm.MenuID equals m.MenuID orderby m.Menusort
                               select m).ToList();
            List <MenuModels> rootNode = new List <MenuModels>();

            foreach (var plist in TreeList.Where(t => t.MenuURL == "#"))
            {
                MenuModels jt = new MenuModels();
                jt.MenuID     = plist.MenuID;
                jt.MenuName   = plist.MenuName;
                jt.MenuPartNo = Convert.ToInt32(plist.MenuPartNo);
                jt.MenuURL    = plist.MenuURL;
                jt.MenuIcon   = plist.MenuIcon.Trim();
                jt.attributes = CreateUrl(TreeList, jt);
                jt.menus      = CreateChildTree(TreeList, jt);
                rootNode.Add(jt);
            }
            return(rootNode);
        }
Exemplo n.º 2
0
        public static List <tSysMenu> GetMenuByUserID(string Name)
        {
            db_BFSEntities ent = new db_BFSEntities();
            //var TreeList = ent.SysMenu.ToList();
            var TreeList = (from p in ent.tAdmin
                            where p.Name == Name
                            join urole in ent.tSmartRole on p.AdminID equals urole.AdminID
                            join r in ent.tRole on urole.RoleID equals r.RoleID
                            join rm in ent.tRoleMenu on r.RoleID equals rm.RoleID
                            join m in ent.tSysMenu on rm.MenuID equals m.MenuID
                            select m).ToList();

            return(TreeList.Distinct().ToList());
        }
Exemplo n.º 3
0
        public ActionResult GetLogin(tAdminDTO t)
        {
            if (t.Code != Session["ValidateCode"].ToString())
            {
                ModelState.AddModelError("Code", "验证码不正确!");
                return(View("Login"));
            }
            if (ModelState.IsValid)
            {
                //string User_Name = this.Request.Form["UserName"];
                //string User_Pw = this.Request.Form["PassWord"];
                if (!string.IsNullOrEmpty(t.Name) && !string.IsNullOrEmpty(t.Password))
                {
                    db_BFSEntities ent   = new db_BFSEntities();
                    var            login = (from p in ent.tAdmin where p.Name == t.Name && p.Password == t.Password select p).Distinct().ToList();
                    if (login.Count > 0)
                    {
                        tAdmin tadmin = login.FirstOrDefault();
                        Session[WebConstants.UserSession]  = tadmin;
                        Session[WebConstants.UserRoleMenu] = GetMenuByUserID(login.First().Name);
                        System.Web.HttpContext.Current.Session["username"] = login.First().Name.ToString();
                        Session["tUsers"] = login.ToList();
                        string fromurl = Request.UrlReferrer.Query;
                        if (fromurl.IndexOf("?fromurl=") > -1)
                        {
                            fromurl = fromurl.Substring(9);

                            return(Redirect(fromurl));
                        }
                        else
                        {
                            return(this.RedirectToAction("Index", "Account"));
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("Name", "登陆失败!");
                    }
                }
            }
            return(View("Login"));
        }