Example #1
0
        public async Task <ActionResult> Atualiza([FromBody] ReservaRoteiro item)
        {
            try
            {
                //carrega o repositorio
                using var repository = new ReservaRoteiroRepository();

                //efetua a validacao
                var validacao = repository.Valida(item);

                if (validacao.Valido)
                {
                    //efetua a consulta
                    var result = await repository.Atualiza(item);

                    //retorna o resultado
                    if (result != null)
                    {
                        return(Ok(result));
                    }
                }
                else
                {
                    //retorna erro de validacao
                    return(BadRequest(validacao));
                }

                return(NoContent());
            }
            catch (Exception ex)
            {
                return(BadRequest(new ValidationModel(ex.Message)));
            }
        }
        public async Task <ReservaRoteiro> Atualiza(ReservaRoteiro item)
        {
            // atualiza no banco de dados
            _db.ReservaRoteiro.Update(item);
            await _db.SaveChangesAsync();

            //retorna o resultado
            return(item);
        }
        public async Task <ReservaRoteiro> Insere(ReservaRoteiro item)
        {
            // adiciona no banco de dados
            await _db.ReservaRoteiro.AddAsync(item);

            await _db.SaveChangesAsync();

            //retorna o resultado
            return(item);
        }
        public ValidationModel Valida(ReservaRoteiro item)
        {
            //inicializa objeto
            var validation = new ValidationModel();

            //executa as validacoes
            if (item.IdReserva == 0)
            {
                validation.Valido = false;
                validation.Erros.Add("Informe a reserva");
            }

            if (item.IdRoteiro == 0)
            {
                validation.Valido = false;
                validation.Erros.Add("Informe o roteiro");
            }

            // retorna o resultado
            return(validation);
        }