Exemplo n.º 1
0
 public ForToken LogOn(DataConnection pclsCache, string PwType, string userId, string password, string role)
 {
     int result = usersMethod.CheckPasswordByInput(pclsCache, PwType, userId, password);
     ForToken response = new ForToken();
     response.Status = "";
     response.Token = "";
     if (result == 1)
     {
         //密码验证成功
         string UId = usersMethod.GetIDByInput(pclsCache, PwType, userId); //输入手机号获取用户ID
         if (UId != "")
         {
             string Class = usersMethod.GetActivatedState(pclsCache, UId, role);
             if (Class == "0")
             {
                 int flag = 0;
                 List<string> AllRoleMatch = usersMethod.GetAllRoleMatch(pclsCache, UId);
                 if (AllRoleMatch != null)
                 {
                     for (int i = 0; i < AllRoleMatch.Count; i++)
                     {
                         if (AllRoleMatch[i].ToString() == role)//查询条件
                         {
                             flag = 1;
                             break;
                         }
                     }
                 }
                 if (flag == 1)
                 {
                     string ticks = new CommonMethod().GetServerTime(pclsCache);
                     response.Token = SecurityManager.GenerateToken(userId, password, role, ticks);
                     response.Status = "已注册激活且有权限,登陆成功,跳转到主页";
                     return response; //"已注册激活且有权限,登陆成功,跳转到主页"1;
                 }
                 else
                 {
                     response.Status = "已注册激活,但没有权限"; //"已注册激活 但没有权限"2;
                 }
             }
             else      //Class == "1" or Class == ""
             {
                 response.Status = "您的账号对应的角色未激活,需要先激活;界面跳转到游客页面(已注册但未激活)";            //您的账号对应的角色未激活,需要先激活;界面跳转到游客页面(已注册但未激活)3
             }
         }
         else
         {
             response.Status = "用户不存在"; //"用户不存在"4;
         }
     }
     else if (result == 0)
     {
         response.Status = "密码错误"; //"密码错误"5;
     }
     else
     {
         response.Status = "用户不存在";   //"用户不存在"4
     }
     return response;
 }
Exemplo n.º 2
0
        public HttpResponseMessage LogOn(LogOn logOn)
        {
            //msg.url = "http://my.company.com/login";

            //if (SecurityManager.IsTokenValid(token))
            //{
            ForToken ret = new ForToken();
            ret = repository.LogOn(pclsCache, logOn.PwType, logOn.username, logOn.password, logOn.role);
            return new ExceptionHandler().LogOn(Request,ret);          
        }
Exemplo n.º 3
0
        public HttpResponseMessage LogOn(HttpRequestMessage request, ForToken ret)
        {
            #region
            Result res = new Result();
            res.result = "登录失败";

            var resp = request.CreateResponse(HttpStatusCode.InternalServerError, res);
            string operationResult = ret.Status;

            //resp.Headers = new HttpResponseMessage().Add("Access-Control-Allow-Origin","*");
            switch (operationResult)
            {
                case "已注册激活且有权限,登陆成功,跳转到主页":
                    //"已注册激活且有权限,登陆成功,跳转到主页";
                    res.result = "登陆成功" + "Token = " + ret.Token;
                    resp = request.CreateResponse(HttpStatusCode.OK, res);
                    //resp = resp + ret.Token;
                    //resultString = Newtonsoft.Json.JsonConvert.SerializeObject("登陆成功");
                    //resp.Content = new StringContent(string.Format("登陆成功"));
                    break;
                case "已注册激活,但没有权限":
                    //"已注册激活 但没有权限";
                    res.result = "没有权限";
                    resp = request.CreateResponse(HttpStatusCode.Forbidden, res);

                    //resultString = Newtonsoft.Json.JsonConvert.SerializeObject("没有权限");
                    //resp.Content = new StringContent(string.Format("没有权限"));
                    break;
                case "您的账号对应的角色未激活,需要先激活;界面跳转到游客页面(已注册但未激活)":
                    //您的账号对应的角色未激活,需要先激活;界面跳转到游客页面(已注册但未激活)
                    res.result = "暂未激活";
                    resp = request.CreateResponse(HttpStatusCode.Forbidden, res);

                    //resultString = Newtonsoft.Json.JsonConvert.SerializeObject("暂未激活");
                    //resp.Content = new StringContent(string.Format("暂未激活"));
                    break;
                case "用户不存在":
                    //"用户不存在";
                    res.result = "用户不存在";
                    resp = request.CreateResponse(HttpStatusCode.BadRequest, res);

                    //resultString = Newtonsoft.Json.JsonConvert.SerializeObject("用户不存在");
                    //resp.Content = new StringContent(string.Format("用户不存在"));
                    break;
                case "密码错误":
                    //"密码错误";
                    res.result = "密码错误";
                    resp = request.CreateResponse(HttpStatusCode.BadRequest, res);

                    //resultString = Newtonsoft.Json.JsonConvert.SerializeObject("密码错误");
                    //resp.Content = new StringContent(string.Format("密码错误"));
                    break;
                default:
                    break;
            }

            return resp;
            #endregion
        }