Exemplo n.º 1
0
        public async Task <JsonResult> CarregaTipoDeAnimais(int?id)
        {
            var listaTipoAnimais = await _tipoAnimal.GetAllAsync(x => x.Ativo == 1);

            //Converte o objeto para uma viewmodel
            var listaRetornoAnimais = listaTipoAnimais.Select(item => new TipoAnimalViewModel
            {
                Id     = item.Id,
                Nome   = item.Nome,
                Possui = false
            }).ToList();

            //Se tiver o usuárioId preenchido, quer dizer que é uma edição
            if (id.HasValue)
            {
                var especialidades = await _usuarioEspecialidade.ConsultaEspecialidadesUsuario(id.Value);

                if (especialidades.Any())
                {
                    foreach (var item in listaRetornoAnimais)
                    {
                        if (especialidades.Any(x => x.TipoAnimalId == item.Id))
                        {
                            item.Possui = true;
                        }
                    }
                }
            }

            return(Json(listaRetornoAnimais));
        }
Exemplo n.º 2
0
        private async Task CarregaDados(Animal pet)
        {
            var tipo = await _tipoAnimal.GetAllAsync(x => x.Ativo == 1);

            var raca = await _racaAnimal.GetAllAsync();

            var porte = await _porteAnimal.GetAllAsync();

            var cliente = await _cliente.GetAllAsync(x => x.Ativo == 1);

            ViewBag.Porte = new SelectList(porte.OrderBy(x => x.Nome), "Id", "Nome", pet.PorteAnimalId);
            ViewBag.Tipo  = new SelectList(tipo.OrderBy(x => x.Nome), "Id", "Nome", pet.TipoAnimalId);
            ViewBag.Raca  = new SelectList(raca.OrderBy(x => x.Nome), "Id", "Nome", pet.RacaAnimalId);

            var clientes = cliente.Select(x => new
            {
                x.Id,
                Nome = x.Nome + " - " + x.Cpf
            }).OrderBy(x => x.Nome).ToList();

            ViewBag.Cliente = new SelectList(clientes, "Id", "Nome", pet.ClienteId);
        }