Example #1
0
        public async Task <ISaida> CadastrarConta(CadastrarContaEntrada cadastroEntrada)
        {
            // Verifica se as informações para cadastro foram informadas corretamente
            if (cadastroEntrada.Invalido)
            {
                return(new Saida(false, cadastroEntrada.Mensagens, null));
            }

            // Verifica se o usuário já possui alguma conta com o nome informado
            this.NotificarSeVerdadeiro(await _contaRepositorio.VerificarExistenciaPorNome(cadastroEntrada.IdUsuario, cadastroEntrada.Nome), ContaMensagem.Conta_Com_Mesmo_Nome);

            if (this.Invalido)
            {
                return(new Saida(false, this.Mensagens, null));
            }

            var conta = new Conta(cadastroEntrada);

            await _contaRepositorio.Inserir(conta);

            await _uow.Commit();

            return(_uow.Invalido
                ? new Saida(false, _uow.Mensagens, null)
                : new Saida(true, new[] { ContaMensagem.Conta_Cadastrada_Com_Sucesso }, new ContaSaida(conta)));
        }
Example #2
0
        public async Task <IActionResult> Create([Bind("ContaId,UsuarioId,Saldo")] Conta conta)
        {
            if (ModelState.IsValid)
            {
                await _contaRepositorio.Inserir(conta);

                _logger.LogInformation("Novo saldo criado");
                return(RedirectToAction(nameof(Index)));
            }
            _logger.LogError("Informações inválidas");
            ViewData["UsuarioId"] = new SelectList(_usuarioRepositorio.PegarTodos(), "Id", "Email", conta.UsuarioId);
            return(View(conta));
        }
Example #3
0
        public int Inserir(Conta conta)
        {
            Cliente titular = _repositorioCliente.PegarPorId(conta.Titular.Id) ?? throw new NaoEncontradoException();
            Conta   _conta  = new Conta(titular);

            _conta.Limite = conta.Limite;
            _conta.Estado = conta.Estado;
            _conta.Validar();

            var novaConta = _repositorioConta.Inserir(_conta);

            return(novaConta.Id);
        }
Example #4
0
        public async Task <Model.Conta> Handle(CriarContaCommand request, CancellationToken cancellationToken)
        {
            using (var uow = unitOfWork)
            {
                var conta = mapper.Map <Model.Conta>(request);

                var resultado = await contaRepositorio.Inserir(conta);

                uow.PersistirTransacao();

                return(resultado);
            }
        }
Example #5
0
        //Método para a resquisição javascript de cadastro..
        public JsonResult CadastrarConta(ContaViewModelCadastro model)
        {
            try
            {
                Conta c = new Conta()
                {
                    Nome  = model.Nome,
                    Valor = model.Valor,
                    Data  = model.Data,
                    Tipo  = (TipoConta)model.Tipo
                };

                contaRepositorio.Inserir(c);

                return(Json($"Conta {c.Nome} cadastrada com sucesso."));
            }
            catch (Exception e)
            {
                return(Json(e.Message));
            }
        }