Beispiel #1
0
        public UserView GetUserProfile(int userId)
        {
            var user          = userProfiles.GetUserProfile(userId);
            var userExchanges = exchanges.GetUserExchanges(userId);

            userExchanges = userExchanges.Where(e => e.State != ExchangeState.Declined && e.State != ExchangeState.Waiting).ToArray();
            var comments = userProfiles.GetComments(userId);

            return(mappingService.GetUserViewFromUser(user, comments, userExchanges.Count()));
        }
        public IEnumerable <GameAndUserView> GetUserGamesByGame(int gameId)
        {
            var gamePieces = userGames.GetUserGamesByGame(gameId);
            List <GameAndUserView> gameViews = new List <GameAndUserView>();

            foreach (var game in gamePieces)
            {
                var userProfile = userProfiles.GetUserProfile(game.UserId);
                var comments    = userProfiles.GetComments(game.UserId);
                var gameCopy    = games.GetGame(game.GameId);
                gameViews.Add(mappingService.GetGameAndUserView(gameCopy, game, userProfile, comments));
            }
            return(gameViews);
        }
        public IEnumerable <ExchangeView> GetMyExchanges(int userId)
        {
            var myExchanges = exchanges.GetUserExchanges(userId);
            List <ExchangeView> exchangeViews = new List <ExchangeView>();

            foreach (var exchange in myExchanges)
            {
                var newExchangeView = new ExchangeView()
                {
                    ExchangeId = exchange.ExchangeId,
                    Shipment   = exchange.Shipment,
                    State      = exchange.State
                };
                if (exchange.OfferingUserId == userId)
                {
                    newExchangeView.AmIOffering = true;
                    var user = userProfiles.GetUserProfile(exchange.OtherUserId);
                    newExchangeView.OtherUserName = user.Name + " " + user.Surname;
                    newExchangeView.UserImage     = user.ImageUrl;
                    newExchangeView.OtherUserId   = exchange.OtherUserId;
                    var myGames        = exchange.OfferingUsersGames.Split(',').ToArray();
                    var otherUserGames = exchange.OtherUsersGames.Split(',').ToArray();
                    for (int i = 0; i < myGames.Count(); i++)
                    {
                        var g = games.GetGame(Int32.Parse(myGames[i]));
                        myGames[i] = g.Title;
                    }
                    for (int i = 0; i < otherUserGames.Count(); i++)
                    {
                        otherUserGames[i] = games.GetGame(Int32.Parse(otherUserGames[i])).Title;
                    }
                    newExchangeView.MyGames               = myGames;
                    newExchangeView.OtherUserGames        = otherUserGames;
                    newExchangeView.MyFinalizeTime        = exchange.OfferingUserFinalizeTime;
                    newExchangeView.OtherUserFinalizeTime = exchange.OtherUserFinalizeTime;
                }
                else
                {
                    newExchangeView.AmIOffering = false;
                    var user = userProfiles.GetUserProfile(exchange.OfferingUserId);
                    newExchangeView.OtherUserName = user.Name + " " + user.Surname;
                    newExchangeView.UserImage     = user.ImageUrl;
                    newExchangeView.OtherUserId   = exchange.OfferingUserId;
                    var myGames        = exchange.OtherUsersGames.Split(',').ToArray();
                    var otherUserGames = exchange.OfferingUsersGames.Split(',').ToArray();
                    for (int i = 0; i < myGames.Count(); i++)
                    {
                        myGames[i] = games.GetGame(Int32.Parse(myGames[i])).Title;
                    }
                    for (int i = 0; i < otherUserGames.Count(); i++)
                    {
                        otherUserGames[i] = games.GetGame(Int32.Parse(otherUserGames[i])).Title;
                    }
                    newExchangeView.MyGames               = myGames;
                    newExchangeView.OtherUserGames        = otherUserGames;
                    newExchangeView.MyFinalizeTime        = exchange.OtherUserFinalizeTime;
                    newExchangeView.OtherUserFinalizeTime = exchange.OfferingUserFinalizeTime;
                }
                if (newExchangeView.MyFinalizeTime.Year >= 2018)
                {
                    newExchangeView.HaveIFinalized = true;
                }
                exchangeViews.Add(newExchangeView);
            }
            return(exchangeViews);
        }