Esempio n. 1
0
        public async Task <IActionResult> Post([FromBody] FormaPagamentoDto formaPagamentoDto)
        {
            try
            {
                var resultado = await _service.Salvar(formaPagamentoDto);

                return(CreatedAtAction(nameof(GetByCodigo), new { codigo = resultado.Codigo }, formaPagamentoDto));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Esempio n. 2
0
        public async Task <FormaPagamentoDto> Salvar(FormaPagamentoDto formaPagamentoDto)
        {
            FormaPagamento formaPagamento = await _repositorio.PegarPorCodigo(formaPagamentoDto.Codigo);

            FormaPagamento resultado;

            try
            {
                if (formaPagamento is null)
                {
                    await JaExiste(formaPagamentoDto.Codigo, formaPagamentoDto.Nome);

                    formaPagamento = new(formaPagamentoDto.Codigo, formaPagamentoDto.Nome, formaPagamentoDto.Ativo);

                    resultado = await _repositorio.Adicionar(formaPagamento);

                    if (resultado is null)
                    {
                        throw new Exception("Erro ao cadastrar, contate o administrador do sistema.");
                    }

                    return(formaPagamentoDto);
                }
                else
                {
                    if (formaPagamento is null)
                    {
                        throw new Exception("Forma de pagamento não encontrada");
                    }

                    formaPagamento.Nome  = formaPagamentoDto.Nome;
                    formaPagamento.Ativo = formaPagamentoDto.Ativo;

                    resultado = await _repositorio.Atualizar(formaPagamento);

                    if (resultado is null)
                    {
                        throw new Exception("Erro ao atualizar, contate o administrador do sistema.");
                    }

                    return(formaPagamentoDto);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 3
0
        public async Task <IActionResult> Put([FromBody] FormaPagamentoDto formaPagamentoDto)
        {
            try
            {
                var formaPagamento = await _service.PegarPorCodigo(formaPagamentoDto.Codigo);

                if (formaPagamento is null)
                {
                    return(NotFound());
                }

                formaPagamento.Nome  = formaPagamentoDto.Nome;
                formaPagamento.Ativo = formaPagamentoDto.Ativo;

                await _service.Salvar(formaPagamento);

                return(NoContent());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }