コード例 #1
0
        public ActionResult PreencherDadosGameEntityJquery(int id)
        {
            GameRepository gameRepository = new GameRepository();
            DeveloperPublisherRepository devPubRepository = new DeveloperPublisherRepository();
            GameEntity game = gameRepository.BuscarDados(id);

            List <game_developerPublisher> devs = game.game_developerPublisher.Where(d => d.tipo == (int)GameDataView.tipoDeveloperPublisher.Developer).ToList();
            List <game_developerPublisher> pubs = game.game_developerPublisher.Where(p => p.tipo == (int)GameDataView.tipoDeveloperPublisher.Publisher).ToList();
            List <game_genre> genres            = game.game_genre.ToList();

            GameDataView gameDataView = GameDataView.init();

            gameDataView.Id        = game.id;
            gameDataView.id_igdb   = game.id_igdb;
            gameDataView.Titulo    = game.name;
            gameDataView.Descricao = game.summary;
            gameDataView.Nota      = game.nota;
            gameDataView.Completo  = game.completo;

            string arquivo = gameDataView.Imagesfolder + game.id + "_BigCover_" + game.cloudnary_id + ".jpg";

            if (System.IO.File.Exists(arquivo))
            {
                gameDataView.Imagem      = "~/images/" + game.id + "_BigCover_" + game.cloudnary_id + ".jpg";
                gameDataView.CloudnaryId = game.cloudnary_id;
            }

            foreach (game_developerPublisher dev in devs)
            {
                gameDataView.ListaDeveloper.Add(new developerPublisher {
                    id      = dev.id,
                    id_igdb = devPubRepository.GetIgdbById(dev.id_developerPublisher),
                    name    = dev.developerPublisher.name
                });
            }

            foreach (game_developerPublisher pub in pubs)
            {
                gameDataView.ListaPublisher.Add(new developerPublisher {
                    id      = pub.id,
                    id_igdb = devPubRepository.GetIgdbById(pub.id_developerPublisher),
                    name    = pub.developerPublisher.name
                });
            }

            foreach (game_genre genre in genres)
            {
                gameDataView.ListaGenre.Add(new genre {
                    id   = genre.id,
                    name = genre.genre.name
                });
            }

            foreach (game_platform lancamento in game.game_platform)
            {
                gameDataView.Platforms.Add(new game_platform {
                    id           = lancamento.id,
                    release_date = lancamento.release_date,
                    metacritic   = lancamento.metacritic,
                    preco        = lancamento.preco,
                    formato      = lancamento.formato,
                    tamanho      = lancamento.tamanho,
                    id_platform  = lancamento.id_platform,
                    id_status    = lancamento.id_status,
                    id_region    = lancamento.id_region,
                    id_rating    = lancamento.id_rating,
                    id_store     = lancamento.id_store,
                    store        = lancamento.store
                });
            }

            return(PartialView("FormGameView", gameDataView));
        }
コード例 #2
0
        public void AtualizarTudoIgdb()
        {
            GamesEntities db   = new GamesEntities();
            IgdbService   igdb = new IgdbService();
            DeveloperPublisherRepository developerPublisherRepository = new DeveloperPublisherRepository();
            GenreRepository genreRepository = new GenreRepository();

            var lista = db.game;

            foreach (var game in lista)
            {
                if (game.id_igdb != null)
                {
                    DadosGameResponse dados = igdb.DadosJogo((int)game.id_igdb).FirstOrDefault();
                    game.summary = dados.Summary;
                    if (dados.Developers != null)
                    {
                        foreach (var dev in dados.Developers)
                        {
                            var id_dev = developerPublisherRepository.GetIdByIgdb(dev, igdb.DadosDeveloperPublisher(new int[] { dev }).FirstOrDefault().Name);
                            var devs   = db.game_developerPublisher.Where(g => g.id_game == game.id && g.id_developerPublisher == id_dev && g.tipo == 1).Any();
                            if (!devs)
                            {
                                game.game_developerPublisher.Add(new game_developerPublisher {
                                    id_developerPublisher = id_dev, id_game = game.id, tipo = 1
                                });
                            }
                        }
                    }
                    if (dados.Publishers != null)
                    {
                        foreach (var pub in dados.Publishers)
                        {
                            var id_pub = developerPublisherRepository.GetIdByIgdb(pub, igdb.DadosDeveloperPublisher(new int[] { pub }).FirstOrDefault().Name);
                            var pubs   = db.game_developerPublisher.Where(g => g.id_game == game.id && g.id_developerPublisher == id_pub && g.tipo == 2).Any();
                            if (!pubs)
                            {
                                game.game_developerPublisher.Add(new game_developerPublisher {
                                    id_developerPublisher = id_pub, id_game = game.id, tipo = 2
                                });
                            }
                        }
                    }
                    if (dados.Genres != null)
                    {
                        foreach (var genre in dados.Genres)
                        {
                            var id_genre = genreRepository.GetIdByIgdb(genre, igdb.DadosGenre(new int[] { genre }).FirstOrDefault().Name);
                            var genres   = db.game_genre.Where(g => g.id_game == game.id && g.id_genre == id_genre).Any();
                            if (!genres)
                            {
                                game.game_genre.Add(new game_genre {
                                    id_genre = id_genre, id_game = game.id
                                });
                            }
                        }
                    }
                }
            }
            db.SaveChanges();
        }