//método para abrir a página de edição
        public IActionResult Edicao(string id)
        {
            var model = new ContaEdicaoModel();

            try
            {
                //buscar a conta pelo id..
                var conta = contaRepository.GetById(Guid.Parse(id));

                //transferir os dados da conta para model
                model.Id               = conta.Id.ToString();
                model.NomeConta        = conta.NomeConta;
                model.Observacoes      = conta.Observacoes;
                model.ValorConta       = conta.ValorConta.ToString();
                model.DataConta        = conta.DataConta.ToString("dd/MM/yyyy");
                model.Categoria        = conta.Categoria;
                model.Tipo             = conta.Tipo;
                model.FormaDePagamento = conta.FormaDePagamento;
            }
            catch (Exception e)
            {
                TempData["MensagemErro"] = e.Message;
            }

            return(View(model));
        }
        public IActionResult Edicao(ContaEdicaoModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var conta = new Conta
                    {
                        Id               = Guid.Parse(model.Id),
                        NomeConta        = model.NomeConta,
                        DataConta        = DateTime.Parse(model.DataConta),
                        ValorConta       = decimal.Parse(model.ValorConta),
                        Observacoes      = model.Observacoes,
                        Categoria        = (CategoriaConta)model.Categoria,
                        FormaDePagamento = (FormaDePagamento)model.FormaDePagamento,
                        Tipo             = (TipoConta)model.Tipo
                    };

                    contaRepository.Update(conta);

                    TempData["MensagemSucesso"] = $"Conta {conta.NomeConta}, atualizada com sucesso.";
                }
                catch (Exception e)
                {
                    TempData["MensagemErro"] = e.Message;
                }
            }

            return(View());
        }
Esempio n. 3
0
        public IActionResult Edicao(ContaEdicaoModel model,
                                    [FromServices] IContaRepository contaRepository)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var conta = new Conta();

                    conta.Id        = Guid.Parse(model.Id);
                    conta.Nome      = model.Nome;
                    conta.Data      = DateTime.Parse(model.Data);
                    conta.Valor     = decimal.Parse(model.Valor);
                    conta.Descricao = model.Descricao;
                    conta.Categoria = model.Categoria;
                    conta.Tipo      = model.Tipo;

                    contaRepository.Update(conta);

                    TempData["MensagemSucesso"] = "Conta atualizada com sucesso.";
                }
                catch (Exception e)
                {
                    TempData["MensagemErro"] = e.Message;
                }
            }

            return(View());
        }
Esempio n. 4
0
        [HttpPut]  //requisição do Tipo PUT
        public IActionResult Post(ContaEdicaoModel model)
        {
            //Verifica se os dados da model passaram nas regras de validação
            if (ModelState.IsValid)
            {
                try
                {
                    Conta conta = new Conta();
                    conta.IdConta   = model.IdConta;
                    conta.Nome      = model.Nome;
                    conta.Data      = model.Data;
                    conta.Valor     = model.Valor;
                    conta.Tipo      = model.Tipo;
                    conta.IdUsuario = model.IdUsuario;


                    //gravar no banco de dados
                    repository.Alterar(conta);

                    //retornar status de sucesso 200 (OK)
                    return(StatusCode(200, $"Conta {conta.Nome}, cadastrada com sucesso. "));
                }
                catch (Exception e)
                {
                    //retornar um status de erro 500 (Erro Interno do Servidor)
                    return(StatusCode(500, e.Message));
                }
            }
            else
            {
                //retornar um status de erro 400 (Requisição inválida)
                return(StatusCode(400, "Ocorreram erros de validação."));
            }
        }
        [HttpPost] //recebe o SUBMIT do formulário
        public IActionResult Edicao(ContaEdicaoModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var conta = new Conta
                    {
                        IdConta     = Guid.Parse(model.IdConta),
                        NomeConta   = model.Nome,
                        ValorConta  = decimal.Parse(model.Valor),
                        DataConta   = DateTime.Parse(model.Data),
                        IdCategoria = Guid.Parse(model.IdCategoria)
                    };

                    unitOfWork.ContaRepository.Update(conta);
                    unitOfWork.SaveChanges();

                    TempData["MensagemSucesso"] = $"Conta {conta.NomeConta}, atualizada com sucesso.";
                    return(RedirectToAction("Consulta"));
                }
                catch (Exception e)
                {
                    TempData["MensagemErro"] = e.Message;
                }
            }

            return(View(GetContaEdicaoModel()));
        }
        private ContaEdicaoModel GetContaEdicaoModel()
        {
            var model = new ContaEdicaoModel();

            model.ItensCategoria = GetItensCategoria();

            return(model);
        }
Esempio n. 7
0
        public IActionResult Edicao(string id,
                                    [FromServices] IContaRepository contaRepository)
        {
            var model = new ContaEdicaoModel();

            try
            {
                var conta = contaRepository.GetById(Guid.Parse(id));
                model.Id        = conta.Id.ToString();
                model.Nome      = conta.Nome;
                model.Data      = conta.Data.ToString("dd/MM/yyyy");
                model.Valor     = conta.Valor.ToString();
                model.Descricao = conta.Descricao;
                model.Tipo      = conta.Tipo;
                model.Categoria = conta.Categoria;
            }
            catch (Exception e)
            {
                TempData["MensagemErro"] = e.Message;
            }

            return(View(model));
        }