예제 #1
0
        public async Task Post([FromBody] JObject objData)
        {
            //Dados do usuario
            Usuario usuario = objData.ToObject <Usuario>();

            var filter = Builders <Usuario> .Filter.Eq("FireBaseUserUID", usuario.FireBaseUserUID);

            var usuarioPesquisa = _repository.usuarios.Find(filter).FirstOrDefaultAsync();

            if (usuarioPesquisa.Result == null)
            {
                //inserting data
                await _repository.usuarios.InsertOneAsync(usuario);

                //Criando uma nova conta de APP para o usuario
                ContaApp novaContaApp = new ContaApp();
                novaContaApp.Ativa              = true;
                novaContaApp.DataDeCadastro     = DateTime.Now;
                novaContaApp.DataDeUltimoAcesso = DateTime.Now;
                novaContaApp.UsuarioDono        = usuario;

                //Criando uma nova conta para o APP
                await _repository.contasApp.InsertOneAsync(novaContaApp);
            }
            else
            {
                var update = Builders <Usuario> .Update
                             .Set(x => x.FireBaseUserUID, usuario.FireBaseUserUID);
            }
        }
        public async Task <DeleteResult> Delete([FromBody] JObject objData)
        {
            ContaApp deleteContaApp = objData.ToObject <ContaApp>();

            var filter = Builders <ContaApp> .Filter.Eq("_id", deleteContaApp._id);

            return(await _repository.contasApp.DeleteOneAsync(filter));
        }
예제 #3
0
        private static void Depositar()
        {
            Console.Write("Digite o número da conta: ");
            int indiceConta = int.Parse(Console.ReadLine());

            Console.Write("Digite o valor a ser depositado: ");
            double valorDeposito = double.Parse(Console.ReadLine());

            ContaDTO conta = ContaApp.Depositar(indiceConta, valorDeposito);

            Console.WriteLine("Saldo atual da conta de {0} é {1}", conta.Nome, conta.Saldo);
        }
예제 #4
0
        private static void ListarContas()
        {
            Console.WriteLine("Listar contas");

            List <ContaDTO> listContas = ContaApp.ListarContas();

            if (listContas.Count == 0)
            {
                Console.WriteLine("Nenhuma conta cadastrada.");
                return;
            }

            for (int i = 0; i < listContas.Count; i++)
            {
                Console.Write("#{0} - ", i);
                Console.WriteLine(SerializarContaDTO(listContas[i]));
            }
        }
예제 #5
0
        private static void Sacar()
        {
            Console.Write("Digite o número da conta: ");
            int indiceConta = int.Parse(Console.ReadLine());

            Console.Write("Digite o valor a ser sacado: ");
            double valorSaque = double.Parse(Console.ReadLine());

            bool sacar = ContaApp.Sacar(indiceConta, valorSaque);

            if (!sacar)
            {
                Console.WriteLine("Saldo insuficiente!");
            }
            else
            {
                ContaDTO conta = ContaApp.ObterConta(indiceConta);
                Console.WriteLine("Saldo atual da conta de {0} é {1}", conta.Nome, conta.Saldo);
            }
        }
        public async Task <bool> Put([FromBody] JObject objData)
        {
            ContaApp edicaoContaApp = objData.ToObject <ContaApp>();

            var filter = Builders <ContaApp> .Filter.Eq("_id", edicaoContaApp._id);

            var banco = _repository.contasApp.Find(filter).FirstOrDefaultAsync();

            if (banco.Result == null)
            {
                return(false);
            }
            var update = Builders <ContaApp> .Update
                         .Set(x => x.Ativa, edicaoContaApp.Ativa)
                         .Set(x => x.DataDeUltimoAcesso, DateTime.Now)
                         .Set(x => x.UsuariosCompartilhados, edicaoContaApp.UsuariosCompartilhados);

            await _repository.contasApp.UpdateOneAsync(filter, update);

            return(true);
        }
예제 #7
0
        private static void InserirConta()
        {
            Console.WriteLine("Inserir nova conta");

            Console.Write("Digite 1 para Conta Fisica ou 2 para Juridica: ");
            int entradaTipoConta = int.Parse(Console.ReadLine());

            Console.Write("Digite o Nome do Cliente: ");
            string entradaNome = Console.ReadLine();

            Console.Write("Digite o saldo inicial: ");
            double entradaSaldo = double.Parse(Console.ReadLine());

            Console.Write("Digite o crédito: ");
            double entradaCredito = double.Parse(Console.ReadLine());

            ContaApp.InserirConta(tipoConta: entradaTipoConta,
                                  saldo: entradaSaldo,
                                  credito: entradaCredito,
                                  nome: entradaNome);
        }
예제 #8
0
        private static void Transferir()
        {
            Console.Write("Digite o número da conta de origem: ");
            int indiceContaOrigem = int.Parse(Console.ReadLine());

            Console.Write("Digite o número da conta de destino: ");
            int indiceContaDestino = int.Parse(Console.ReadLine());

            Console.Write("Digite o valor a ser transferido: ");
            double valorTransferencia = double.Parse(Console.ReadLine());

            bool transferencia = ContaApp.Transferir(indiceContaOrigem, indiceContaDestino, valorTransferencia);

            if (!transferencia)
            {
                Console.WriteLine("Saldo insuficiente!");
            }
            else
            {
                ContaDTO conta = ContaApp.ObterConta(indiceContaOrigem);
                Console.WriteLine("Saldo atual da conta de {0} é {1}", conta.Nome, conta.Saldo);
            }
        }
 public async Task Post([FromBody] JObject objData)
 {
     ContaApp novoContaApp = objData.ToObject <ContaApp>();
     //inserting data
     await _repository.contasApp.InsertOneAsync(novoContaApp);
 }