public async Task <ActionResult <AtualizarFilmeDTO> > PutGet(int id)
        {
            var filmeResult = await GetFilme(id);

            if (filmeResult.Result is NotFoundResult)
            {
                return(NotFound());
            }

            DetalhesFilmeDTO filmeDetail            = filmeResult.Value;
            List <int>       idsGenerosSelecionados = filmeDetail.Generos.Select(x => x.Id).ToList();
            List <int>       idsTiposSelecionados   = filmeDetail.TiposFilme.Select(x => x.Id).ToList();
            List <Genero>    generosNaoSelecionados = await _context.Generos.Where(x => !idsGenerosSelecionados.Contains(x.Id)).ToListAsync();

            List <TipoFilme> tipoFilmeSelecionados = await _context.TipoFilmes.Where(x => !idsTiposSelecionados.Contains(x.Id)).ToListAsync();

            AtualizarFilmeDTO atualizarFilme = new AtualizarFilmeDTO();

            atualizarFilme.Filme = filmeDetail.Filme;
            atualizarFilme.GenerosSelecionados    = filmeDetail.Generos;
            atualizarFilme.GenerosNaoSelecionados = generosNaoSelecionados;
            atualizarFilme.tiposDoFilme           = tipoFilmeSelecionados;

            return(atualizarFilme);
        }
예제 #2
0
        public async Task <ActionResult <AtualizarFilmeDTO> > PutGet(int id)
        {
            var filmeActionResult = await Get(id);

            if (filmeActionResult.Result is NotFoundResult)
            {
                return(NotFound());
            }

            var filme = filmeActionResult.Value;
            var idsGenerosSelecionados = filme.Generos.Select(x => x.Id).ToList();
            var generosNaoSelecionados = await _db.Genero.Where(x => !idsGenerosSelecionados.Contains(x.Id)).ToListAsync();

            var idsSalasSelecionadas = filme.Salas.Select(x => x.Id).ToList();
            var salasNaoSelecionadas = await _db.Sala.Where(x => !idsSalasSelecionadas.Contains(x.Id)).ToListAsync();

            var modelo = new AtualizarFilmeDTO
            {
                Filme = filme.Filme,
                GenerosNaoSelecionados = generosNaoSelecionados,
                GenerosSelecionados    = filme.Generos,
                SalasNaoSelecionadas   = salasNaoSelecionadas,
                SalasSelecionadas      = filme.Salas,
                Atores = filme.Atores
            };

            return(modelo);
        }