private static Desconto CalculaIRPF(double totalProventos, Desconto inss) { double aliquota = 0; double valor = (totalProventos - inss.Valor); if (valor <= 1710.78) { return(new Desconto(0, 0)); } else if (valor <= 2563.91) { aliquota = 7.5; } else if (valor <= 3418.59) { aliquota = 15; } else if (valor <= 4271.59) { aliquota = 22.5; } else { aliquota = 27.5; } return(new Desconto(aliquota, TruncaValor((valor * aliquota) / 100))); }
public Demonstrativo GerarDemonstrativo(int horasCategoria, double salarioBase, double horasExtras, double horasDescontadas) { #region Variáveis double valorHora = salarioBase / horasCategoria; HorasCalculadas hExtras = new HorasCalculadas(horasExtras, TruncaValor(valorHora * horasExtras)); HorasCalculadas hDescontadas = new HorasCalculadas(horasDescontadas, TruncaValor(valorHora * horasDescontadas)); double totalProventos = TruncaValor(salarioBase + hExtras.ValorTotalHoras - hDescontadas.ValorTotalHoras); Desconto inss = CalculaINSS(totalProventos); Desconto irpf = CalculaIRPF(totalProventos, inss); double totalDescontos = TruncaValor(inss.Valor + irpf.Valor); double aliquotaFgts = 11; Desconto fgts = new Desconto(aliquotaFgts, TruncaValor((totalProventos * aliquotaFgts) / 100)); #endregion Demonstrativo dmst = new Demonstrativo( TruncaValor(salarioBase), // salário base TruncaValor(horasCategoria), // horas categoria hExtras, // valor horas extras hDescontadas, // valor horas descontadas totalProventos, // total proventos inss, // inss irpf, // irpf totalDescontos, // total de descontos TruncaValor(totalProventos - totalDescontos), // salário liquido fgts // fgts ); return(dmst); }
public Demonstrativo GerarDemonstrativo(int horasCategoria, double salarioBase, double horasExtras, double horasDescontadas) { var ValorHora = salarioBase / horasCategoria; var HorasExtras = new HorasCalculadas(horasExtras, ValorHora * horasExtras); var HorasDescontadas = new HorasCalculadas(horasDescontadas, ValorHora * horasDescontadas); var TotalProventos = (salarioBase + HorasExtras.ValorTotalHoras - HorasDescontadas.ValorTotalHoras); var Inss = new CalculaINSS().calcular(TotalProventos); var Irpf = new CalculaIRPF().calcular(TotalProventos - Inss.Valor); var TotalDescontos = Inss.Valor + Irpf.Valor; var AliquotaFgts = 0.11; var Fgts = new Desconto(AliquotaFgts, Utils.DoFormat((TotalProventos * AliquotaFgts))); return(new Demonstrativo( salarioBase, horasCategoria, HorasExtras, HorasDescontadas, TotalProventos, Inss, Irpf, Utils.DoFormat(TotalDescontos), Utils.DoFormat((TotalProventos - TotalDescontos)), Fgts )); }
public Demonstrativo( double salarioBase, double hrsConvencao, HorasCalculadas horasExtras, HorasCalculadas horasDescontadas, double totalProventos, Desconto inss, Desconto irrf, double totalDescontos, double totalLiquido, Desconto fgts) { SalarioBase = salarioBase; HrsConvencao = hrsConvencao; HorasExtras = horasExtras; HorasDescontadas = horasDescontadas; TotalProventos = totalProventos; Inss = inss; Irrf = irrf; TotalDescontos = totalDescontos; TotalLiquido = totalLiquido; Fgts = fgts; }