예제 #1
0
 public void instanciarEntidadesDeTransacao()
 {
     transacao = new Transacao();
     transacao.OrdemServico = new OrdemServico();
     transacao.Pessoa = new Pessoa(); //Este é o Funcionário
     transacao.Pessoa1 = new Pessoa(); //Este é o Cliente
 }
 public ActionResult Edit([Bind(Include = "ID,IDContaRemetente,IDContaDestino,DataHora,Valor")] Transacao transacao)
 {
     if (ModelState.IsValid)
     {
         db.Entry(transacao).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(transacao));
 }
        public IActionResult Create([FromBody] Transacao deposito)
        {
            if (deposito == null)
            {
                return(BadRequest());
            }

            _depositoRepositorio.AddDeposito(deposito);
            return(new ObjectResult(_depositoRepositorio.FindByID(deposito.idTransacao)));
        }
예제 #4
0
 public IActionResult NovaTransacao(Transacao transacao)
 {
     if (ModelState.IsValid)
     {
         transacao.HttpContextAccessor = HttpContextAccessor;
         transacao.NovaTransacao();
         return(RedirectToAction("ListarTransacao"));
     }
     return(View());
 }
        public void AoCancelarUmaTransacaoAConexaoDeveSerFechada()
        {
            var mockConexao = CriarMockDaConexao();

            using (var transacao = new Transacao(mockConexao.Object))
            {
                transacao.CancelarTransacao();
                mockConexao.Verify(c => c.Close());
            }
        }
예제 #6
0
 private void criaNovaEntrada()
 {
     entrada                 = new Transacao();
     entrada.data            = Convert.ToDateTime(txtDataEntrada.Text);
     entrada.desconto        = 0;
     entrada.idTipoTransacao = 1;
     entrada.idCliente       = Convert.ToInt32(txtCodFornecedor.Text);
     entrada.idFuncionario   = 1;
     entrada.idStatus        = 1;
 }
 public ActionResult Edit([Bind(Include = "TId,TCount,Tday")] Transacao transacao)
 {
     if (ModelState.IsValid)
     {
         db.Entry(transacao).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(transacao));
 }
예제 #8
0
        private static Transacao GetTransacao(string Nome, string TIPO)
        {
            Transacao tr = _crl.FindTransacaoByName(FormatNome(Nome, TIPO));

            if (tr == null)
            {
                tr = NewTransacao(Nome, TIPO);
            }
            return(tr);
        }
예제 #9
0
 public static LogCompraVendaViewModel ConvertToViewModel(this Transacao o)
 {
     return(new LogCompraVendaViewModel()
     {
         DataHoraTransacao = $"{o.DataTransacao.ToShortDateString()} { o.DataTransacao.ToShortTimeString() }",
         Quantidade = o.QtdTransacao,
         TipoTransacao = o.CompraOuVenda,
         ValorUnitario = o.ValorTransacao
     });
 }
예제 #10
0
        public bool EfetuarSaque(string cpf, decimal valor)
        {
            try
            {
                using (Contexto db = new Contexto())
                {
                    var usuario = db.Usuario.Include(a => a.Conta).FirstOrDefault(m => m.CPF == cpf);
                    if (usuario != null)
                    {
                        Transacao trans = new Transacao();
                        if (usuario.Conta.Saldo > valor)
                        {
                            usuario.Conta.Saldo = (usuario.Conta.Saldo - valor);

                            trans = new Transacao()
                            {
                                ContaId         = usuario.Conta.ContaId,
                                Data            = DateTime.Now,
                                TipoTransacaoId = 2,
                                Valor           = valor
                            }; //TipoTransacaoId(1- Depósito, 2- Saque, 3- Transferência)
                        }
                        else if ((usuario.Conta.Saldo + usuario.Conta.Limite) > valor)
                        {
                            usuario.Conta.Saldo = (usuario.Conta.Saldo - valor);

                            trans = new Transacao()
                            {
                                ContaId         = usuario.Conta.ContaId,
                                Data            = DateTime.Now,
                                TipoTransacaoId = 2,
                                Valor           = valor
                            }; //TipoTransacaoId(1- Depósito, 2- Saque, 3- Transferência)
                        }
                        else
                        {
                            throw new Exception("Saldo insuficiente");
                        }

                        db.Transacao.Add(trans);
                        db.SaveChanges();

                        return(true);
                    }
                    else
                    {
                        throw new Exception("Saldo insuficiente");
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
예제 #11
0
        public async Task <IActionResult> Create([Bind("Id,Nome,Valor,Data,Debito,Efetivada")] Transacao transacao)
        {
            if (ModelState.IsValid)
            {
                _context.Add(transacao);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(transacao));
        }
예제 #12
0
        protected object ExecutarScalar(string command)
        {
            try
            {
                Conexao = MyDatabase.CreateConnection();
                Conexao.Open();

                if (UsarTransacao)
                {
                    Transacao = Conexao.BeginTransaction();
                }

                MyCommand = MyDatabase.GetStoredProcCommand(command);
                VincularParametros();

                MyCommand.Connection = Conexao;

                var retorno = MyCommand.ExecuteScalar();

                if (UsarTransacao)
                {
                    Transacao.Commit();
                }

                return(retorno);
            }
            catch (Exception e)
            {
                if (UsarTransacao)
                {
                    Transacao.Rollback();
                }

                if (!UsarException)
                {
                    return(null);
                }


                throw new Exception(e.Message);
            }
            finally
            {
                if (MyCommand != null)
                {
                    MyCommand.Dispose();
                }
                if (Conexao != null)
                {
                    Conexao.Dispose();
                    Conexao.Close();
                }
            }
        }
예제 #13
0
        public IRestResponse Log(Transacao transacao)
        {
            var client  = new RestClient(transactionBasePath);
            var request = new RestRequest(Method.POST);

            request.AddJsonBody(transacao);

            var response = client.Execute(request);

            return(response);
        }
예제 #14
0
 public void limpar()
 {
     transacao = new Transacao();
     atualizarDgvListaProduto();
     txtClienteVenda.Text         = "";
     txtTotalVenda.Text           = "";
     tabCadastrar.SelectedIndex   = 0;
     tabCadastrarVenda.Enabled    = false;
     txtClienteVenda.ReadOnly     = true;
     cbxFuncionario.DropDownStyle = ComboBoxStyle.DropDownList;
 }
예제 #15
0
        public void Trasacao_Deve_Ter_Um_Usuario_Responsavel()
        {
            var usuario   = usuarioMock.Object;
            var transacao = new Transacao(usuario, contaOrigemMock.Object,
                                          umaContaDestino,
                                          valor,
                                          dateTimeProviderMock.Object);

            transacao.UsuarioResponsavelId.Should().Be(usuarioId);
            transacao.UsuarioResponsavel.Should().BeSameAs(usuario);
        }
예제 #16
0
        public virtual RetornoApi Salvar(Transacao value)
        {
            value = _servicoTroco.ObterTroco(value);


            return(new RetornoApi
            {
                resultado = true,
                valor = value.Observacao
            });
        }
예제 #17
0
        public void Trasacao_Deve_Ter_Uma_Conta_Origem()
        {
            var contaOrigem = contaOrigemMock.Object;
            var transacao   = new Transacao(usuarioMock.Object, contaOrigem,
                                            umaContaDestino,
                                            valor,
                                            dateTimeProviderMock.Object);

            transacao.ContaOrigemId.Should().Be(contaOrigemId);
            transacao.ContaOrigem.Should().BeSameAs(contaOrigem);
        }
        // GET: Transacaos/Create


        // POST: Transacaos/Create
        // Para se proteger de mais ataques, ative as propriedades específicas a que você quer se conectar. Para
        // obter mais detalhes, consulte https://go.microsoft.com/fwlink/?LinkId=317598.

        public ActionResult Create([Bind(Include = "TId,TCount,Tday")] Transacao transacao, string Tday, string TCount)
        {
            if (ModelState.IsValid)
            {
                db.Transacoes.Add(transacao);
                db.SaveChanges();
                return(RedirectToAction("Index", "Home"));
            }

            return(View(transacao));
        }
예제 #19
0
        public void Salvar(Transacao t)
        {
            JavaScriptSerializer json_serializer = new JavaScriptSerializer();
            UsuarioCtx           Uctx            = new UsuarioCtx();

            t.empresa_contratante    = new Empresa();
            t.empresa_contratante.id = json_serializer
                                       .Deserialize <Usuario>(Uctx.DecryptText(Request.Cookies["token"].Value))
                                       .empresa.id;
            ctx.Salvar(t);
        }
예제 #20
0
        public void Test1()
        {
            var transacao = new Transacao();

            transacao.ValorCompra   = 85.50;
            transacao.ValorEntregue = 100;
            transacao.DataTransacao = DateTime.Now;
            var xxx = new TrocoServico(servicoTransacao, servicoNotas, servicoMoedas).ObterTroco(transacao);

            Assert.AreNotEqual(xxx.ValorTroco, 0);
        }
예제 #21
0
 public static TransacaoResposta Mapa(Transacao transacao)
 {
     return(new TransacaoResposta()
     {
         Id = transacao.Id.ToString(),
         DataTransacao = transacao.DataTransacao.ToString(),
         descricao = transacao.descricao,
         Valor = transacao.Valor.ToString(),
         IdCliente = transacao.IdCliente.ToString(),
         IdCaixaEletronico = transacao.IdCaixaEletronico.ToString()
     });
 }
예제 #22
0
 public IEnumerable <LancamentoModel> GetLancamentosByTransacao(Transacao transacao)
 {
     return(_LancamentoService.GetByTransacao(transacao)
            .Select(x => new LancamentoModel
     {
         Transacao = x.Transacao,
         ContaId = x.ContaId,
         Data = x.Data.ToString("dd/MM/yyyy HH:mm:ss"),
         Tipo = x.Tipo.ToString(),
         Valor = x.Valor
     }));
 }
        public void SeExcluirObjetoTransacaoComUmaTransacaoEmAndamentoAMesmaDeveSerCancelada()
        {
            var mockTransacao = CriarMockDaTransacao();
            var mockConexao   = CriarMockDaConexao(mockTransacao);

            using (var transacao = new Transacao(mockConexao.Object))
            {
            }

            mockTransacao.Verify(t => t.Rollback());
            mockTransacao.Verify(t => t.Dispose());
        }
        public void SeExcluirObjetoTransacaoDisposeDeveSerChamado()
        {
            var mockConexao = CriarMockDaConexao();

            using (var transacao = new Transacao(mockConexao.Object))
            {
                transacao.EmTransacao
                .Should().BeFalse();
            }

            mockConexao.Verify(c => c.Dispose());
        }
예제 #25
0
        private static Caso NewCaso(string CasoNome, string TransacaoNome, int order, string CASO_TIPO, string TRANSACAO_TIPO)
        {
            Caso caso = new Caso();

            caso.Nome  = FormatNome(CasoNome, CASO_TIPO);
            caso.Order = order;
            Transacao tr = GetTransacao(TransacaoNome, TRANSACAO_TIPO);

            caso.Transacao = tr;

            return(caso);
        }
예제 #26
0
        public async Task <IActionResult> Create([Bind("Id,Tipo,Descricao,Data,Valor,ContaId")] Transacao transacao)
        {
            if (ModelState.IsValid)
            {
                _context.Add(transacao);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["ContaId"] = new SelectList(_context.Contas, "Id", "Id", transacao.ContaId);
            return(View(transacao));
        }
 public async Task AdicionarTransacao(Transacao transacao)
 {
     try
     {
         await _repo.CreateAsync(transacao);
     }
     catch (Exception ex)
     {
         _logger.LogError(ex, $"Erro ao registrar Transacao para conta {transacao.Id} em {DateTime.Now}");
         throw;
     }
 }
        public void EditarTransacao(Usuario user)
        {
            new TextoNo().TextoTransacaoIdSelecao();
            Transacao editartransacao = this.EditarTransacao(int.Parse(Console.ReadLine()));

            Console.WriteLine("Transação selecionada :");
            this.TexListarumaTransacao(editartransacao);
            new TextoNo().TextoEdicaoTransacao();
            editartransacao = DecicaoTransacao(int.Parse(Console.ReadLine()), editartransacao, user);
            this.TexListarumaTransacao(editartransacao);
            new  TransacaoDados().EditarTransacao(editartransacao);
        }
예제 #29
0
        public XPZ(string caminho, Conexao conexao)
        {
            this.Caminho = caminho;
            XML          = new XmlDocument();
            this.CarregarXML();

            this.sGenexus = new CarregarObjetosGenexus(this, conexao);

            this.Atributos = sGenexus.CarregarAtributos();
            this.Transacao = sGenexus.CarregarTransacao();
            this.Tabelas   = sGenexus.CarregarTabelas();
        }
 public IActionResult Post(Transacao transacao)
 {
     try
     {
         var resposta = new { valorLiquido = Math.Round(_calculo.CalculoTaxa(transacao), 2) };
         return(Ok(resposta));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
예제 #31
0
        static Transacao ObterInformacaoTransacao(StreamReader streamReader, Extrato extrato)
        {
            Transacao transacao = new Transacao();

            transacao.Status = new Status();

            extrato.InstituicaoFinanceira.Conta = new InstituicaoFinanceiraConta();

            var linha = streamReader.ReadLine().Trim();

            while (!FimInformacaoTransacao(linha))
            {
                switch (ObterDescricaoItemExtrato(linha))
                {
                case ("TRNUID"):
                    transacao.Codigo = ObterNumeroInteiroLinha(linha, "<TRNUID>", "</TRNUID>");
                    break;

                case ("CODE"):
                    transacao.Status.Codigo = ObterNumeroInteiroLinha(linha, "<CODE>", "</CODE>");
                    break;

                case ("SEVERITY"):
                    transacao.Status.Categoria = ObterTextoLinha(linha, "<SEVERITY>", "</SEVERITY>");
                    break;

                case ("CURDEF"):
                    transacao.Moeda = ObterTextoLinha(linha, "<CURDEF>", "</CURDEF>");
                    break;

                case ("ACCTID"):
                    extrato.InstituicaoFinanceira.Conta.Conta = ObterTextoLinha(linha, "<ACCTID>", "</ACCTID>");
                    break;

                case ("ACCTTYPE"):
                    extrato.InstituicaoFinanceira.Conta.Tipo = ObterTextoLinha(linha, "<ACCTTYPE>", "</ACCTTYPE>");
                    break;

                case ("DTSTART"):
                    transacao.DataInicial = ObterDataHoraLinha(linha, "<DTSTART>", "</DTSTART>");
                    break;

                case ("DTEND"):
                    transacao.DataFinal = ObterDataHoraLinha(linha, "<DTEND>", "</DTEND>");
                    break;
                }

                linha = streamReader.ReadLine().Trim();
            }

            return(transacao);
        }
예제 #32
0
 public string adicionarEntrada(Transacao entrada)
 {
     string erro = null;
     try
     {
         entradas.AddObject(entrada);
         db.SaveChanges();
     }
     catch (Exception ex)
     {
         erro = ex.Message;
     }
     return erro;
 }
예제 #33
0
 public string excluirProduto(Transacao entrada)
 {
     string erro = null;
     try
     {
         entradas.DeleteObject(entrada);
         db.SaveChanges();
     }
     catch (Exception ex)
     {
         erro = ex.Message;
     }
     return erro;
 }
예제 #34
0
        public string excluirEntrada(Transacao t)
        {
            string erro = null;
            try
            {
                db.Transacao.DeleteObject(t);
                db.SaveChanges();

            }

            catch (Exception ex)
            {
                erro = ex.Message;
            }

            return erro;
        }
예제 #35
0
        public string editarEntrada(Transacao entrada)
        {
            string erro = null;
            try
            {
                if (entrada.EntityState == System.Data.EntityState.Detached)
                {
                    entradas.Attach(entrada);
                }
                db.ObjectStateManager.ChangeObjectState(entrada, System.Data.EntityState.Modified);

                db.SaveChanges();
            }
            catch (Exception ex)
            {
                erro = ex.Message;
            }
            return erro;
        }
예제 #36
0
 private void inicializar()
 {
     inicializarDataGridViewListaEntradas();
     entrada = getEntradaSelecionada();
 }
예제 #37
0
 private void dgvTransacao_DoubleClick(object sender, EventArgs e)
 {
     transacao = ((Transacao)dgvTransacoes.CurrentRow.DataBoundItem);
     buscarOrdemServico();
     tbcTransacao.SelectedIndex = 1;
     tbpOrdemDeServico.Enabled = true;
 }
예제 #38
0
        private void inserirValoresTransacao()
        {
            if (transacao.idTransacao == 0)
            {
                transacao = new Transacao();
                transacao.OrdemServico = new OrdemServico();
            }

            transacao.idTipoTransacao = 2; //2 é o ID da Transação de Saída
            transacao.idCliente = pessoa.idPessoa;
            transacao.idFuncionario = (int)cbxFuncionario.SelectedValue;
            transacao.idStatus = (int)cbxStatus.SelectedValue;
            transacao.data = DateTime.Now;

            if (txtDesconto.Text != "")
                transacao.desconto = Convert.ToInt32(txtDesconto.Text);

            transacao.OrdemServico.dataEntrada = DateTime.Now;
            transacao.OrdemServico.dataPrevistaEntrega = Convert.ToDateTime(dtpPrevisaoDeEntrega.Value);
            transacao.OrdemServico.descricao = txtDescricaoOrdem.Text;
        }
예제 #39
0
 private bool obterTransacaoDaLista()
 {
     if (dgvTransacoes.CurrentRow != null)
     {
         transacao = (Transacao)dgvTransacoes.CurrentRow.DataBoundItem;
         return true;
     }
     else
     {
         MessageBox.Show("Selecione uma transação antes!", "Erro");
         return false;
     }
 }
예제 #40
0
 private void criaNovaEntrada()
 {
     entrada = new Transacao();
     entrada.data = Convert.ToDateTime(txtDataEntrada.Text);
     entrada.desconto = 0;
     entrada.idTipoTransacao = 1;
     entrada.idCliente = Convert.ToInt32(txtCodFornecedor.Text);
     entrada.idFuncionario = 1;
     entrada.idStatus = 1;
 }
예제 #41
0
        private void btnExcluir_Click(object sender, EventArgs e)
        {
            DataGridViewRow p = dgvListaVenda.CurrentRow;
            if (p == null)
            {
                MessageBox.Show("Selecione uma venda para excluir!");
                return;
            }
            if (MessageBox.Show("Tem certeza que deseja excluir?", "Atenção", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                Object t = p.DataBoundItem;
                transacao = (Transacao)t.GetType().GetProperty("transacao").GetValue(t, null);

                string erro = transacaoData.excluirTransacao(transacao);
                if (erro == null)
                {
                    MessageBox.Show("Excluído com sucesso!");
                }
                else
                {
                    MessageBox.Show("Ocorreu um erro: " + erro);
                }
                atualizarDgvListaVenda();
            }
        }
예제 #42
0
        private void btnEditar_Click(object sender, EventArgs e)
        {
            DataGridViewRow p = dgvListaVenda.CurrentRow;
            if (p == null)
            {
                MessageBox.Show("Selecione uma venda para excluir!");
            }
            else
            {
                Object t = p.DataBoundItem;
                transacao = (Transacao)t.GetType().GetProperty("transacao").GetValue(t, null);
                if (transacao.StatusTransacao.idStatus != 2)
                {
                    atualizarDgvListaProduto();
                    tabCadastrar.SelectedIndex = 1;
                    tabCadastrarVenda.Enabled = true;
                    Pessoa pess = pessoaData.obterPessoa(transacao.idCliente);
                    txtClienteVenda.Text = pess.nome;
                    transacao.idCliente = pess.idPessoa;
                }
                else
                {
                    MessageBox.Show("Esta venda já esta finalizada!");
                }

            }
        }
예제 #43
0
 public void limpar()
 {
     transacao = new Transacao();
     atualizarDgvListaProduto();
     txtClienteVenda.Text = "";
     txtTotalVenda.Text = "";
     tabCadastrar.SelectedIndex = 0;
     tabCadastrarVenda.Enabled = false;
     txtClienteVenda.ReadOnly = true;
     cbxFuncionario.DropDownStyle = ComboBoxStyle.DropDownList;
 }
예제 #44
0
 private void dgvEntradas_DoubleClick(object sender, EventArgs e)
 {
     resetarCampos();
     exibirCampos();
     tabListaEntradas.SelectedIndex = 1;
     entrada = getEntradaSelecionada();
     totalNota = 0;
     if (entrada != null)
     {
         btnPesquisarFornecedor.Enabled = false;
         txtNumEntrada.Text = entrada.idTransacao.ToString();
         DateTime dataEntrada = Convert.ToDateTime(entrada.data);
         txtDataEntrada.Text = dataEntrada.ToString("d");
         txtCodFornecedor.Text = entrada.idCliente.ToString();
         txtFornecedor.Text = pessoaData.obterPessoa(entrada.idCliente).nome;
         txtNotaFiscal.Text = nFiscalData.obterNotaFiscal(entrada.idTransacao).numero;
         DateTime dataNotaFiscal = Convert.ToDateTime(nFiscalData.obterNotaFiscal(entrada.idTransacao).dataHora);
         txtDataNotaFiscal.Text = dataNotaFiscal.ToString("d");
         atualizarTabelaProdutosTransacao();
         calcularTotalNota();
     }
     else
     {
         MessageBox.Show("Nenhuma entrada selecionada!");
     }
 }
예제 #45
0
 public void inicializarData()
 {
     db = new ProjetoLojaEntities();
     produtoData = new ProdutoData(db);
     pessoaData = new PessoaData(db);
     usuarioData = new UsuarioData(db);
     transacao = new Transacao();
     transacaoData = new TransacaoData(db);
     statusData = new StatusTransacaoData();
 }
예제 #46
0
 public FormPagamento(Transacao transacao)
 {
     InitializeComponent();
     this.transacao = transacao;
     inicia();
 }
예제 #47
0
        public ActionResult RealizarTransacao(EstoqueViewModel estoque)
        {
            Transacao transacao = new Transacao();

            transacao.IdBebida = estoque.BebidaId;
            transacao.Qtd += estoque.TipoTransacao == "Entrada" ? estoque.Quantidade : -estoque.Quantidade;

            string userName = Membership.GetUser().UserName;
            List<Usuario> users = db.Usuario.ToList();
            Usuario user = db.Usuario.FirstOrDefault(x => x.User == userName);

            transacao.Usuario = user;
            transacao.IdUsuario = user.Id;
            transacao.TipoTransacao = db.TipoTransacao.FirstOrDefault(x => x.Tipo == estoque.TipoTransacao);

            db.Transacao.Add(transacao);
            db.SaveChanges();

            return RedirectToAction("Index","Home");
        }