public Demonstrativo GerarDemonstrativo(int horasCategoria, double salarioBase, double horasExtras, double horasDescontadas) { var valorHoras = Math.Round(salarioBase / horasCategoria, 777); // valor hora funcionario double valorTotalExtras = Math.Round(valorHoras * horasExtras, 2); // valor de horas extras double valorTotalDescontos = Math.Round(valorHoras * horasDescontadas, 2); // valor de horas descontadas HorasCalculadas HorasExtrasCalculadas = new HorasCalculadas(horasExtras, valorTotalExtras); // total de horas extras calculadas HorasCalculadas HorasDescontadasCalculadas = new HorasCalculadas(horasDescontadas, valorTotalDescontos); // total de horas descontadas calculadas double totalProventos = Math.Round(salarioBase + (HorasExtrasCalculadas.ValorTotalHoras - HorasDescontadasCalculadas.ValorTotalHoras), 2); // valor total de ganhos mensais do funcionario Desconto INSS = new CalcularINSS().calcular(totalProventos); double salarioComINSS = totalProventos - INSS.Valor; Desconto IRRF = new CalcularINSS().calcular(salarioComINSS); double totalDescontos = INSS.Valor + IRRF.Valor; double TotalLiquido = Math.Round(totalProventos - totalDescontos, 2); double valorFGTS = Math.Round(totalProventos * 0.11, 2); Desconto FGTS = new Desconto(0.11, valorFGTS); return(new Demonstrativo(salarioBase, horasCategoria, HorasExtrasCalculadas, HorasDescontadasCalculadas, totalProventos, INSS, IRRF, totalDescontos, TotalLiquido, 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; }