예제 #1
0
        public Demonstrativo GerarDemonstrativo(int horasCategoria, double salarioBase, double horasExtras, double horasDescontadas)
        {
            double valorHora             = arredondarValor(salarioBase / horasCategoria);
            double totalHorasExtras      = arredondarValor(horasExtras * valorHora);
            double totalHorasDescontadas = arredondarValor(horasDescontadas * valorHora);
            double totalProventos        = salarioBase + totalHorasExtras - totalHorasDescontadas;
            var    totalDescontos        = calcularIrrf(totalProventos).Valor + calcularInss(totalProventos).Valor;
            var    salarioLiquido        = arredondarValor(totalProventos - totalDescontos);
            var    fgts = new Desconto(0.11, arredondarValor(salarioBase * 0.11));

            return(new Demonstrativo(salarioBase, horasCategoria, new HorasCalculadas(horasExtras, totalHorasExtras), new HorasCalculadas(horasDescontadas, totalHorasDescontadas), totalProventos, calcularInss(totalProventos), calcularIrrf(totalProventos), totalDescontos,
                                     salarioLiquido, fgts));
        }
예제 #2
0
 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;
 }