コード例 #1
0
        public IHttpActionResult Getsuser(String token)
        {
            HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"];
            HttpRequestBase request = context.Request;

            //解密ticket
            FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(token);

            string userName = ticket.Name;

            var user = from u in db.suser
                       join r in db.srole on u.RoleID equals r.RoleID
                       where u.UID == userName
                       let p1 = new
            {
                u.UID,
                u.UserName,
                u.StaffId,
                u.Position,
                u.Department,
                r.RoleName
            }
            select p1;
            var    oData  = user.FirstOrDefault();
            var    result = new UserDataPackage <Object> {
                data = oData, code = 20000
            };

            return(new PageResult(result, Request));
        }
コード例 #2
0
        public IHttpActionResult Logout()
        {
            FormsAuthentication.SignOut();
            var result = new UserDataPackage <User> {
                code = 20000
            };

            return(new PageResult(result, Request));
        }
コード例 #3
0
ファイル: UserDataManager.cs プロジェクト: LiuFeng1011/Diablo
    public void ClearData()
    {
        userData         = new UserData();
        userDataPackage  = new UserDataPackage();
        userDataStroage  = new UserDataStroage();
        userDataRole     = new UserDataRole();
        userDataItemList = new UserDataItemList();

        SaveData(userData);
        SaveData(userDataPackage);
        SaveData(userDataStroage);
        SaveData(userDataRole);
        SaveData(userDataItemList);
    }
コード例 #4
0
 public IHttpActionResult ValidatePass(int uid, string password)
 {
     try
     {
         var result = new UserDataPackage <User>();
         password = ValidCodeUtils.EncryptPassword(password);
         if (!ValidateUser(uid, password))
         {
             return(new PageResult("error", Request));
         }
         result = new UserDataPackage <User> {
             code = 20000
         };
         return(new PageResult(result, Request));
     }
     catch (Exception)
     {
         throw;
     }
 }
コード例 #5
0
        public IHttpActionResult Login()
        {
            try
            {
                var             result  = new UserDataPackage <User>();
                HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"];
                HttpRequestBase request = context.Request;

                string str = new System.IO.StreamReader(request.InputStream).ReadToEnd();

                User userInfo = JsonConvert.DeserializeObject <User>(str);

                userInfo.password = ValidCodeUtils.EncryptPassword(userInfo.password);

                if (!ValidateUser(userInfo.uid, userInfo.password))
                {
                    result = new UserDataPackage <User> {
                        code = 20001
                    };
                    return(new PageResult(result, Request));
                }

                FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(0, userInfo.uid, DateTime.Now,
                                                                                 DateTime.Now.AddHours(1), true, string.Format("{0}&{1}", userInfo.uid, userInfo.password),
                                                                                 FormsAuthentication.FormsCookiePath);
                string authTicket = FormsAuthentication.Encrypt(ticket);

                result = new UserDataPackage <User> {
                    data = new User {
                        token = authTicket
                    }, code = 20000
                };

                return(new PageResult(result, Request));
            }
            catch (Exception ex)
            {
                return(new PageResult(ex.ToString(), Request));
            }
        }
コード例 #6
0
    /// <summary>
    ///
    /// </summary>
    /// <param name="userDataSaveEventArgs"></param>
    /// <param name="traktUser"></param>
    public void ProcessUserDataSaveEventArgs(UserDataSaveEventArgs userDataSaveEventArgs, TraktUser traktUser)
    {
        var userPackage = _userDataPackages.FirstOrDefault(e => e.TraktUser.Equals(traktUser));

        if (userPackage == null)
        {
            userPackage = new UserDataPackage {
                TraktUser = traktUser
            };
            _userDataPackages.Add(userPackage);
        }

        if (_timer == null)
        {
            _timer = new Timer(
                OnTimerCallback,
                null,
                TimeSpan.FromMilliseconds(5000),
                Timeout.InfiniteTimeSpan);
        }
        else
        {
            _timer.Change(TimeSpan.FromMilliseconds(5000), Timeout.InfiniteTimeSpan);
        }

        if (userDataSaveEventArgs.Item is Movie movie)
        {
            if (userDataSaveEventArgs.UserData.Played)
            {
                if (traktUser.PostSetWatched)
                {
                    userPackage.SeenMovies.Add(movie);
                }

                if (userPackage.SeenMovies.Count >= 100)
                {
                    _traktApi.SendMoviePlaystateUpdates(
                        userPackage.SeenMovies,
                        userPackage.TraktUser,
                        true,
                        CancellationToken.None).ConfigureAwait(false);
                    userPackage.SeenMovies = new List <Movie>();
                }
            }
            else
            {
                if (traktUser.PostSetUnwatched)
                {
                    userPackage.UnSeenMovies.Add(movie);
                }

                if (userPackage.UnSeenMovies.Count >= 100)
                {
                    _traktApi.SendMoviePlaystateUpdates(
                        userPackage.UnSeenMovies,
                        userPackage.TraktUser,
                        false,
                        CancellationToken.None).ConfigureAwait(false);
                    userPackage.UnSeenMovies = new List <Movie>();
                }
            }

            return;
        }

        if (!(userDataSaveEventArgs.Item is Episode episode))
        {
            return;
        }

        // If it's not the series we're currently storing, upload our episodes and reset the arrays
        if (!userPackage.CurrentSeriesId.Equals(episode.Series.Id))
        {
            if (userPackage.SeenEpisodes.Any())
            {
                _traktApi.SendEpisodePlaystateUpdates(
                    userPackage.SeenEpisodes,
                    userPackage.TraktUser,
                    true,
                    CancellationToken.None).ConfigureAwait(false);
                userPackage.SeenEpisodes = new List <Episode>();
            }

            if (userPackage.UnSeenEpisodes.Any())
            {
                _traktApi.SendEpisodePlaystateUpdates(
                    userPackage.UnSeenEpisodes,
                    userPackage.TraktUser,
                    false,
                    CancellationToken.None).ConfigureAwait(false);
                userPackage.UnSeenEpisodes = new List <Episode>();
            }

            userPackage.CurrentSeriesId = episode.Series.Id;
        }

        if (userDataSaveEventArgs.UserData.Played)
        {
            if (traktUser.PostSetWatched)
            {
                userPackage.SeenEpisodes.Add(episode);
            }
        }
        else
        {
            if (traktUser.PostSetUnwatched)
            {
                userPackage.UnSeenEpisodes.Add(episode);
            }
        }
    }
コード例 #7
0
 public UserDataProxy() : base(NAME)
 {
     m_userData = new UserDataPackage();
 }