public int CalcularCantidadDias(int cantidadDias, ResponsablePago responsablePago)
        {
            if (responsablePago.DiasIncapacidadInicial == cantidadDias || responsablePago.DiasIncapacidadFinal == cantidadDias)
            {
                return(cantidadDias);
            }

            if (responsablePago.DiasIncapacidadFinal < cantidadDias)
            {
                return(responsablePago.DiasIncapacidadFinal);
            }

            return((cantidadDias + 1) - responsablePago.DiasIncapacidadInicial);
        }
        public Dinero CalcularReconocimientoEconomico(Empleado empleado, ResponsablePago responsablePago, int cantidadDiasRestantes)
        {
            decimal reconocimientoEconomico = (empleado.SalarioDiario.Cantidad * responsablePago.ReconocimientoPorcentaje) * cantidadDiasRestantes;

            return(new Dinero(reconocimientoEconomico, empleado.SalarioDiario.Moneda));
        }
        public DateTime CalcularFechaInicial(DateTime fecha, int cantidadDiasInicial, int cantidadDias, ResponsablePago responsablePago)
        {
            if (responsablePago.DiasIncapacidadInicial == cantidadDiasInicial || responsablePago.DiasIncapacidadFinal == cantidadDiasInicial || responsablePago.DiasIncapacidadFinal < cantidadDiasInicial)
            {
                return(fecha);
            }

            return(fecha.AddDays(cantidadDias));
        }