Ejemplo n.º 1
0
        /// <summary>获取TGC
        /// </summary>
        public AccountInfo GetTicketGranting()
        {
            var cookieString = CookieUtils.Get("TGC");
            var account      = string.IsNullOrEmpty(cookieString) ? null : DecodeCookie(cookieString);

            return(account);
        }
        public ActionResult RequireRegist(string phone, string code)
        {
            string codesave = CookieUtils.Get(string.Format("code{0}", phone));

            if (!string.IsNullOrEmpty(codesave))
            {
                if (code == codesave)
                {
                    ServiceObjectContainer.Get <IAccountService>().RequireAccount(Int64.Parse(phone));
                }
            }

            return(Redirect(Url.Action("Index", "Home")));
        }
Ejemplo n.º 3
0
        public ActionResult Index()
        {
            var accountId = CookieUtils.Get("Account");

            if (string.IsNullOrEmpty(accountId))
            {
                if (HttpContext.Request.Url != null)
                {
                    var url = NCasServerSetting.GetServerAuthUrl(HttpContext.Request.Url.ToString());
                    return(Redirect(url));
                }
            }
            ViewData["AccountId"] = accountId;
            return(View());
        }
        public JsonResult LoginRequest(LoginRequest account)
        {
            Result <Account> loginresult = new Result <Account>()
            {
                Status     = true,
                Message    = "",
                StatusCode = "",
                Data       = null
            };

            string lastdate = CookieUtils.Get("lastSubmit");

            if (string.IsNullOrEmpty(lastdate))
            {
                CookieUtils.SetCookie("lastSubmit", DateTime.Now.ToString());
            }
            else
            {
                DateTime now = DateTime.Now;
                CookieUtils.SetCookie("lastSubmit", now.ToString());
                double seconds = now.Subtract(Convert.ToDateTime(lastdate)).TotalMilliseconds;
                if (seconds < 1000 * 5)
                {
                    loginresult.Status     = false;
                    loginresult.Message    = "操作过于频繁,请稍后再试";
                    loginresult.StatusCode = "LG000";
                }
            }

            //数据验证
            if (loginresult.Status)
            {
                loginresult = VerificationAccount(account.LoginUsername, account.LoginSecurity);
            }

            //登录操作
            if (loginresult.Status)
            {
                loginresult = ServiceObjectContainer.Get <IAccountService>().SignIn(account.LoginUsername, account.LoginSecurity);
                if (loginresult.Status)
                {
                    HttpContext.Session["CurrentAccount"] = loginresult.Data.Phone;
                }
            }
            return(Json(loginresult));
        }
        public JsonResult RegistRequest(RegistRequest regist)
        {
            Result registresult = new Result()
            {
                Status     = true,
                Message    = "账户注册成功,请到邮箱进行验证.",
                StatusCode = "RR100"
            };

            string lastdate = CookieUtils.Get("lastSubmit");

            if (string.IsNullOrEmpty(lastdate))
            {
                CookieUtils.SetCookie("lastSubmit", DateTime.Now.ToString());
            }
            else
            {
                DateTime now = DateTime.Now;
                CookieUtils.SetCookie("lastSubmit", now.ToString());
                double seconds = now.Subtract(Convert.ToDateTime(lastdate)).TotalMilliseconds;
                if (seconds < 1000 * 5)
                {
                    registresult.Status     = false;
                    registresult.Message    = "操作过于频繁,请稍后再试";
                    registresult.StatusCode = "RR000";
                }
            }

            if (registresult.Status)
            {
                IAccountService  service       = ServiceObjectContainer.Get <IAccountService>();
                Result <Account> accountresult = service.RegistInfo(regist);
                if (!accountresult.Status)
                {
                    registresult.Status     = false;
                    registresult.Message    = "注册账户失败,请稍后再试";
                    registresult.StatusCode = "RR001";
                }
                else
                {
                    service.SendRegistEmail(accountresult.Data);
                }
            }
            return(Json(registresult));
        }
        public JsonResult SignOutRequest(string phone)
        {
            Result result = new Result()
            {
                Status = false
            };
            string lastdate = CookieUtils.Get("lastSubmit");

            if (string.IsNullOrEmpty(lastdate))
            {
                CookieUtils.SetCookie("lastSubmit", DateTime.Now.ToString());
            }
            else
            {
                DateTime now = DateTime.Now;
                CookieUtils.SetCookie("lastSubmit", now.ToString());
                double seconds = now.Subtract(Convert.ToDateTime(lastdate)).TotalMilliseconds;
                if (seconds < 1000 * 5)
                {
                    result.Status     = false;
                    result.Message    = "操作过于频繁,请稍后再试";
                    result.StatusCode = "SO000";
                }
            }
            long signoutphone = 0;

            if (!long.TryParse(phone, out signoutphone))
            {
                result.Status     = false;
                result.Message    = "参数错误";
                result.StatusCode = "SO002";
            }

            result = ServiceObjectContainer.Get <IAccountService>().SignOut(signoutphone);

            if (result.Status)
            {
                HttpContext.Session["CurrentAccount"] = "";
            }

            return(Json(result));
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 验证忘记密码提交的验证码
        /// </summary>
        /// <param name="mail"></param>
        /// <param name="code"></param>
        /// <returns></returns>
        public Result VerificationForgetCode(string mail, string code)
        {
            Result result = new Result()
            {
                Status     = true,
                Message    = "验证码正确",
                StatusCode = "VF001"
            };

            if (!string.IsNullOrEmpty(mail) && !string.IsNullOrEmpty(code))
            {
                string vcode = CookieUtils.Get(string.Format("forget{0}", mail));
                if (vcode != code)
                {
                    result.Status     = false;
                    result.Message    = "验证码错误";
                    result.StatusCode = "VF000";
                }
            }

            return(result);
        }