Ejemplo n.º 1
0
        public override void Add(Game item, string cultureCode)
        {
            AssignIdIfEmpty(item);
            if (item.Genres == null)
            {
                item.Genres = item.NameGenres != null?_genreRepository.LoadDomainEntities(item.NameGenres) : _genreRepository.Get(genre => genre.Locals.Any(z => z.Name == "Other")).ToList();
            }

            item.PlatformTypes = item.NamePlatformTypes != null?_platformRepository.LoadDomainEntities(item.NamePlatformTypes) : null;

            if (item.Publisher != null)
            {
                item.Publisher = _publisherRepository.GetItemById(item.Publisher.Id);
            }

            if (!item.Locals.Any())
            {
                item.Locals = new List <GameLocal>()
                {
                    new GameLocal()
                    {
                        Culture = new Culture()
                        {
                            Code = cultureCode
                        },
                        Description = item.Description
                    }
                };
            }

            _gameRepository.Add(item);
            UnitOfWork.Save();
            Logger.Write(Operation.Insert, item);
        }
Ejemplo n.º 2
0
        public virtual void Update(TDomain item, string cultureCode)
        {
            _genericRepository.Update(item);
            UnitOfWork.Save();
            var updatedItem = _genericRepository.GetItemById(item.Id);

            Logger.Write(Operation.Update, item, updatedItem);
        }
Ejemplo n.º 3
0
        public override void Add(User user, string cultureCode)
        {
            AssignIdIfEmpty(user);
            if (user.IdRoles != null)
            {
                user.Roles = user.IdRoles.Select(x => new Role()
                {
                    RoleEnum = (RoleEnum)Enum.Parse(typeof(RoleEnum), x)
                });
            }

            if (user.Publisher != null)
            {
                user.Publisher = _publisherRepository.GetItemById(user.Publisher.Id);
            }

            _userRepository.Add(user);
            UnitOfWork.Save();
        }
Ejemplo n.º 4
0
 private void AddChildren(Comment node, IDictionary <string, List <Comment> > source)
 {
     if (node.ParentCommentId != null)
     {
         node.ParentComment = _commentRepository.GetItemById(node.ParentCommentId);
     }
     if (source.ContainsKey(node.Id))
     {
         node.Comments = source[node.Id];
         foreach (var x in node.Comments)
         {
             AddChildren(x, source);
         }
     }
     else
     {
         node.Comments = new List <Comment>();
     }
 }
Ejemplo n.º 5
0
        public void AddViewToGame(string key, string cultureCode)
        {
            var game = _gameRepository.First(x => x.Key == key);

            if (game != null)
            {
                if (game.IsSqlEntity == false)
                {
                    Add(game, cultureCode);
                    game = _gameRepository.First(x => x.Key == key);
                }
                var gameInfo = _gameInfoRepository.GetItemById(game.Id);
                gameInfo.CountOfViews++;
                gameInfo.Game = null;
                _gameInfoRepository.Update(gameInfo);
                UnitOfWork.Save();
                var updatedGame = _gameRepository.GetItemById(game.Id);
                Logger.Write(Operation.Update, game, updatedGame);
            }
        }
        public virtual TDomain GetItemById(string id)
        {
            var domain = SqlDataRepository.GetItemById(id) ?? MongoDataRepository.GetItemById(id);

            return(domain);
        }