public virtual void AdicionarTaxa(Taxa taxa, decimal valor)
 {
     if (!Taxas.ContainsKey(taxa))
     {
         Taxas.Add(taxa, valor);
     }
 }
Example #2
0
 public override string ToString()
 {
     return("Pagamento Básico: R$ "
            + PagtoBasico.ToString("F2")
            + "\nTaxas: R$ "
            + Taxas.ToString("F2")
            + "\nPagamento Total: R$ "
            + PagtoTotal.ToString("F2"));
 }
 public Taxas Add(Taxas item)
 {
     if (item == null)
     {
         throw new ArgumentNullException("item");
     }
     item.IdTaxa = _nextId++;
     listaTaxas.Add(item);
     return(item);
 }
        public bool Update(Taxas item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }

            int index = listaTaxas.FindIndex(p => p.IdTaxa == item.IdTaxa);

            if (index == -1)
            {
                return(false);
            }
            listaTaxas.RemoveAt(index);
            listaTaxas.Add(item);
            return(true);
        }
Example #5
0
 private void btnCalcula_Click(object sender, EventArgs e)
 {
     if (txtNomFunc.Text == "")
     {
         MessageBox.Show("PREENCHA CORRETAMENTE O CAMPO NOME");
         txtNomFunc.Focus();
     }
     else
     {
         if (txtHorTra.Text == "")
         {
             MessageBox.Show("PREENCHA CORRETAMENTE O CAMPO HORAS");
             txtHorTra.Focus();
         }
         else
         {
             if (txtValor.Text == "")
             {
                 MessageBox.Show("PREENCHA CORRETAMENTE O CAMPO VALOR");
                 txtValor.Focus();
             }
             else
             {
                 if (txtDepen.Text == "")
                 {
                     MessageBox.Show("PREENCHA CORRETAMENTE O CAMPO DEPENDENTES");
                     txtDepen.Focus();
                 }
                 else
                 {
                     double x = double.Parse(txtHorTra.Text);
                     double y = double.Parse(txtValor.Text);
                     txtSalBruto.Text = Taxas.salario(x, y).ToString("###,###,##0.00");
                     double salBruto = double.Parse(txtSalBruto.Text);
                     txtInss.Text = Taxas.calculaINSS(salBruto).ToString("###,###,##0.00");
                     double dependente = double.Parse(txtDepen.Text);
                     double Inss       = double.Parse(txtInss.Text);
                     txtImpRen.Text = Taxas.CalculaIR(Inss, salBruto, dependente).ToString("###,###,##0.00");
                     double IR = double.Parse(txtImpRen.Text);
                     txtSalLiq.Text = (salBruto - Inss - IR).ToString("###,###,##0.00");
                 }
             }
         }
     }
 }
Example #6
0
 private void btnCalcular_Click(object sender, EventArgs e)
 {
     if (string.IsNullOrEmpty(txtnomefunc.Text) || string.IsNullOrEmpty(txthorastrab.Text) || string.IsNullOrEmpty(txtvalorhora.Text) || string.IsNullOrEmpty(txtNumDep.Text))
     {
         MessageBox.Show("Caixas de Texto não podem estar vazias");
         txtnomefunc.Text  = "";
         txthorastrab.Text = "";
         txtNumDep.Text    = "";
         txtvalorhora.Text = "";
         txtnomefunc.Focus();
     }
     else
     {
         lblSalarioBruto.Text   = Taxas.CalcularSalBruto(float.Parse(txthorastrab.Text), float.Parse(txtvalorhora.Text)).ToString("###,###,##0.00");
         lblINSS.Text           = Taxas.CalcularINSS(float.Parse(lblSalarioBruto.Text)).ToString("###,###,##0.00");
         lblImpostoRenda.Text   = Taxas.CalcularIRR(float.Parse(lblSalarioBruto.Text), float.Parse(lblINSS.Text), int.Parse(txtNumDep.Text)).ToString("###,###,##0.00");
         lblSalarioLiquido.Text = Taxas.CalcularSalLiquido(float.Parse(lblSalarioBruto.Text), float.Parse(lblINSS.Text), float.Parse(lblImpostoRenda.Text)).ToString("###,###,##0.00");
     }
 }
Example #7
0
        private void txtDepen_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == (char)13 && txtNomFunc.Text != "" && txtHorTra.Text != "" && txtValor.Text != "" && txtDepen.Text != "")
            {
                int    x = int.Parse(txtHorTra.Text);
                double y = double.Parse(txtValor.Text);
                txtSalBruto.Text = Taxas.salario(x, y).ToString("###,###,##0.00");
                double salBruto = double.Parse(txtSalBruto.Text);
                txtInss.Text = Taxas.calculaINSS(salBruto).ToString("###,###,##0.00");
                double dependente = double.Parse(txtDepen.Text);
                double Inss       = double.Parse(txtInss.Text);
                txtImpRen.Text = Taxas.CalculaIR(Inss, salBruto, dependente).ToString("###,###,##0.00");
                double IR = double.Parse(txtImpRen.Text);
                txtSalLiq.Text = (salBruto - Inss - IR).ToString("###,###,##0.00");
            }
            e.KeyChar = virgula.consisteNum(e.KeyChar);
            int i = txtDepen.Text.IndexOf(',');

            if (e.KeyChar == ',')
            {
                e.KeyChar = (char)0;
                MessageBox.Show("Apenas numeros inteiros");
            }
        }
Example #8
0
        public bool AddPagamento(int idPedido, int formaPgto, string valorS, string inicio, string parcela = "1", int idTaxa = 0)
        {
            #region Variaveis

            var _mTaxa     = new Taxas();
            var data       = new Model.Titulo();
            var valor      = Validation.ConvertToDouble(valorS);
            var vencimento = DateTime.Now;

            if (Validation.ConvertToDouble(valorS) <= 0)
            {
                Alert.Message("Opss", "O valor informado é inválido!", Alert.AlertType.error);
                return(false);
            }

            if (idTaxa > 0)
            {
                _mTaxa = _mTaxa.FindById(idTaxa).FirstOrDefault <Taxas>();
            }

            if (idPedido > 0)
            {
                if (GetRestante(idPedido) <= 0)
                {
                    Alert.Message("Opss", "Valor total já recebido. Verifique os lançamentos!", Alert.AlertType.error);
                    return(false);
                }

                data.Id_Pedido = idPedido;

                var clienteId = new Model.Pedido().FindById(idPedido).Select("cliente").Where("excluir", 0)
                                .FirstOrDefault();
                data.Id_Pessoa = clienteId.CLIENTE ?? 0;
            }

            if (valor < 0)
            {
                return(false);
            }

            if (!string.IsNullOrEmpty(inicio))
            {
                vencimento = Validation.ConvertStringDateTime(inicio);
            }

            if (vencimento.ToString().Contains("01/01/0001"))
            {
                Alert.Message("Opss", "Data inválida", Alert.AlertType.error);
                return(false);
            }

            #endregion

            //2 CHEQUE 4 CARTÃO DE CRÉDITO 5 CREDIÁRIO 6 BOLETO
            if (parcela.IndexOf("+") > 0)
            {
                //15+20+30+50+70 / dias e parcelas

                var numeros = parcela.Split(new[] { "+" }, StringSplitOptions.RemoveEmptyEntries).Select(int.Parse)
                              .ToArray();

                var qtdDecimall = Validation.GetNumberOfDigits((decimal)valor);
                var qtdD        = qtdDecimall + 1;
                data.Total = Validation.Round(valor / Validation.ConvertToInt32(parcela), qtdD);

                for (var i = 0; i < numeros.Length; i++)
                {
                    vencimento = vencimento.AddDays(numeros[i]);

                    data.Id           = 0;
                    data.Id_FormaPgto = formaPgto;
                    data.Emissao      = Validation.DateNowToSql();
                    data.Vencimento   = Validation.ConvertDateToSql(vencimento);
                    data.Recebido     = data.Total;

                    double taxaAntecipacao = 0;
                    bool   parcelaJuros    = false;
                    if (formaPgto == 4)
                    {
                        if (_mTaxa.Antecipacao_Auto == 1)
                        {
                            taxaAntecipacao = _mTaxa.Taxa_Antecipacao;
                        }

                        var taxacredito            = valor / 100 * _mTaxa.Taxa_Credito;
                        var taxaparcelas           = valor / 100 * _mTaxa.Taxa_Parcela;
                        var taxaFixa               = _mTaxa.Taxa_Fixa / Validation.ConvertToInt32(parcela);
                        var taxaAntecipacaoParcela = taxaAntecipacao / Validation.ConvertToInt32(parcela);

                        if (_mTaxa.Parcela_Semjuros > 0)
                        {
                            if (i > _mTaxa.Parcela_Semjuros)
                            {
                                parcelaJuros       = true;
                                data.Valor_Liquido = (valor - taxacredito - taxaFixa - taxaAntecipacaoParcela - taxaparcelas) /
                                                     Validation.ConvertToInt32(parcela); // com juros
                            }
                            else
                            {
                                data.Valor_Liquido = (valor - taxacredito - taxaFixa - taxaAntecipacaoParcela) /
                                                     Validation.ConvertToInt32(parcela); // sem juros
                            }
                        }
                        else
                        {
                            data.Valor_Liquido = (valor - taxacredito - taxaFixa - taxaAntecipacaoParcela) /
                                                 Validation.ConvertToInt32(parcela);
                        }
                    }

                    data.Taxas    = $@"{_mTaxa.Taxa_Fixa}|{_mTaxa.Taxa_Credito}|{_mTaxa.Taxa_Parcela}|{taxaAntecipacao}|{_mTaxa.Dias_Receber}|{parcela}|{parcelaJuros}";
                    data.Id_Caixa = Home.idCaixa;
                    data.Tipo     = "Receber";

                    if (formaPgto == 1 || formaPgto == 3 || formaPgto == 4)
                    {
                        data.Baixa_data         = data.Vencimento;
                        data.Baixa_id_formapgto = formaPgto;
                        data.Baixa_total        = data.Total;
                    }

                    data.Save(data, false);
                }
            }
            else if (Validation.ConvertToInt32(parcela) > 0 && formaPgto != 1 && formaPgto != 3)
            {
                #region Validation.ConvertToInt32(parcela) > 0 && formaPgto != 1 && formaPgto != 3

                var qtdDecimall = Validation.GetNumberOfDigits((decimal)valor);
                var qtdD        = qtdDecimall + 1;
                data.Total = Validation.Round(valor / Validation.ConvertToInt32(parcela), 2);

                var count = 1;
                while (count <= Validation.ConvertToInt32(parcela))
                {
                    data.Id           = 0;
                    data.Id_FormaPgto = formaPgto;
                    data.Emissao      = Validation.DateNowToSql();
                    data.Vencimento   = Validation.ConvertDateToSql(vencimento.AddMonths(count));
                    data.Recebido     = data.Total;

                    double taxaAntecipacao = 0;
                    bool   parcelaJuros    = false;
                    if (formaPgto == 4)
                    {
                        if (_mTaxa.Antecipacao_Auto == 1)
                        {
                            taxaAntecipacao = _mTaxa.Taxa_Antecipacao;
                        }

                        // taxa de intermediação
                        var taxacredito            = valor / 100 * _mTaxa.Taxa_Credito;
                        var taxaparcelas           = valor / 100 * _mTaxa.Taxa_Parcela;
                        var taxaFixa               = _mTaxa.Taxa_Fixa / Validation.ConvertToInt32(parcela);
                        var taxaAntecipacaoParcela = taxaAntecipacao / Validation.ConvertToInt32(parcela);

                        if (_mTaxa.Parcela_Semjuros > 0)
                        {
                            if (count > _mTaxa.Parcela_Semjuros)
                            {
                                parcelaJuros       = true;
                                data.Valor_Liquido = (valor - taxacredito - taxaFixa - taxaAntecipacaoParcela - taxaparcelas) / Validation.ConvertToInt32(parcela); // com juros
                            }
                            else
                            {
                                data.Valor_Liquido = (valor - taxacredito - taxaFixa - taxaAntecipacaoParcela) / Validation.ConvertToInt32(parcela); // sem juros
                            }
                        }
                        else
                        {
                            data.Valor_Liquido = (valor - taxacredito - taxaFixa - taxaAntecipacaoParcela) / Validation.ConvertToInt32(parcela);
                        }
                    }

                    data.Taxas    = $@"{_mTaxa.Taxa_Fixa}|{_mTaxa.Taxa_Credito}|{_mTaxa.Taxa_Parcela}|{taxaAntecipacao}|{_mTaxa.Dias_Receber}|{parcela}|{parcelaJuros}";
                    data.Id_Caixa = Home.idCaixa;
                    data.Tipo     = "Receber";

                    if (formaPgto == 1 || formaPgto == 3 || formaPgto == 4)
                    {
                        data.Baixa_data         = data.Vencimento;
                        data.Baixa_id_formapgto = formaPgto;
                        data.Baixa_total        = data.Total;
                    }

                    data.Save(data, false);
                    count++;
                }

                #endregion

                ConferePagamento(idPedido);
            }
            else
            {
                //1 DINHEIRO 3 CARTÃO DE DÉBITO

                data.Id           = 0;
                data.Id_FormaPgto = formaPgto;
                data.Emissao      = Validation.DateNowToSql();
                data.Vencimento   = !string.IsNullOrEmpty(inicio)
                    ? Validation.ConvertDateToSql(inicio)
                    : Validation.DateNowToSql();

                double taxaAntecipacao = 0;
                if (formaPgto == 1 && valor > GetRestante(idPedido))
                {
                    data.Total    = GetRestante(idPedido);
                    data.Recebido = valor;
                }
                else
                {
                    data.Total    = valor;
                    data.Recebido = valor;

                    if (_mTaxa.Antecipacao_Auto == 1)
                    {
                        taxaAntecipacao = _mTaxa.Taxa_Antecipacao;
                    }

                    var taxadebito = valor / 100 * _mTaxa.Taxa_Debito;
                    data.Valor_Liquido = valor - taxadebito - _mTaxa.Taxa_Fixa - taxaAntecipacao;
                }

                data.Taxas    = $@"{_mTaxa.Taxa_Fixa}|{_mTaxa.Taxa_Debito}|{_mTaxa.Taxa_Parcela}|{taxaAntecipacao}|{_mTaxa.Dias_Receber}|{parcela}|{_mTaxa.Parcela_Semjuros}";
                data.Id_Caixa = Home.idCaixa;
                data.Tipo     = Home.pedidoPage == "Compras" ? "Pagar" : "Receber";

                if (formaPgto == 1 || formaPgto == 3 || formaPgto == 4)
                {
                    data.Baixa_data         = data.Vencimento;
                    data.Baixa_id_formapgto = formaPgto;
                    data.Baixa_total        = data.Total;
                }

                return(data.Save(data, false));
            }

            return(false);
        }
Example #9
0
 public override string Etiqueta()
 {
     return(Nome + " $ " + Total().ToString("F2") + " (Taxas: $ " + Taxas.ToString("F2") + ")");
 }
Example #10
0
        public static List <MDR> ListaMDR()
        {
            List <MDR> lista = new List <MDR>();

            #region AdquirenteA
            var mdrA = new MDR();
            mdrA.Adquirente = Adquirente.A.ToString();

            mdrA.Taxas = new List <Taxas>();

            Taxas taxa1A = new Taxas();
            taxa1A.Bandeira = Bandeira.Visa.ToString();
            taxa1A.Credito  = 2.25m;
            taxa1A.Debito   = 2.00m;
            mdrA.Taxas.Add(taxa1A);


            Taxas taxa2A = new Taxas();
            taxa2A.Bandeira = Bandeira.Master.ToString();
            taxa2A.Credito  = 2.35m;
            taxa2A.Debito   = 1.98m;
            mdrA.Taxas.Add(taxa2A);

            lista.Add(mdrA);
            #endregion

            #region AdquirenteB
            var mdrB = new MDR();
            mdrB.Adquirente = Adquirente.B.ToString();

            mdrB.Taxas = new List <Taxas>();

            Taxas taxa1B = new Taxas();
            taxa1B.Bandeira = Bandeira.Visa.ToString();
            taxa1B.Credito  = 2.50m;
            taxa1B.Debito   = 2.08m;
            mdrB.Taxas.Add(taxa1B);


            Taxas taxa2B = new Taxas();
            taxa2B.Bandeira = Bandeira.Master.ToString();
            taxa2B.Credito  = 2.65m;
            taxa2B.Debito   = 1.75m;
            mdrB.Taxas.Add(taxa2B);

            lista.Add(mdrB);
            #endregion

            #region AdquirenteC
            var mdrC = new MDR();
            mdrC.Adquirente = Adquirente.C.ToString();

            mdrC.Taxas = new List <Taxas>();

            Taxas taxa1C = new Taxas();
            taxa1C.Bandeira = Bandeira.Visa.ToString();
            taxa1C.Credito  = 2.75m;
            taxa1C.Debito   = 2.16m;
            mdrC.Taxas.Add(taxa1C);


            Taxas taxa2C = new Taxas();
            taxa2C.Bandeira = Bandeira.Master.ToString();
            taxa2C.Credito  = 3.10m;
            taxa2C.Debito   = 1.58m;
            mdrC.Taxas.Add(taxa2C);

            lista.Add(mdrC);
            #endregion

            return(lista);
        }