예제 #1
0
        public ActionResult Login(string name, string password, string captcha)
        {
            if (string.IsNullOrWhiteSpace(name))
            {
                ViewBag.ErrorMessage = "用户名不可为空";
                return(View());
            }
            if (string.IsNullOrWhiteSpace(password))
            {
                ViewBag.ErrorMessage = "密码不可为空";
                return(View());
            }
            if (string.IsNullOrWhiteSpace(captcha))
            {
                ViewBag.ErrorMessage = "验证码不可为空";
                return(View());
            }
            if (CheckCaptcha(captcha) == false)
            {
                ViewBag.ErrorMessage = "验证码不正确";
                return(View());
            }

            string errorMessage = string.Empty;

            BF_USER.Entity userInfo = null;
            Dictionary <int, BF_MENU.Entity> menus = new Dictionary <int, BF_MENU.Entity>();

            if (BF_USER.Instance.Login(name, password, out userInfo, out menus, out errorMessage) == false)
            {
                ViewBag.ErrorMessage = errorMessage;
                return(View());
            }

            if (menus == null || menus.Count < 1)
            {
                ViewBag.ErrorMessage = "没有可访问的菜单,请联系管理员分配角色";
                return(View());
            }

            //写SESSION
            WriteSession(userInfo, menus);

            return(RedirectToAction("Index"));
        }
예제 #2
0
 /// <summary>
 /// 写入SESSION
 /// </summary>
 /// <param name="userInfo">用户信息</param>
 /// <param name="menus">可访问菜单</param>
 private void WriteSession(BF_USER.Entity userInfo, Dictionary <int, BF_MENU.Entity> menus)
 {
     SystemSession.WriteSession(userInfo.ID, userInfo.NAME, userInfo.FULL_NAME, userInfo.DEPT_ID, menus);
 }