Example #1
0
        private Int32 GarantContributionWithFactor(decimal employeeBase, decimal employeeFactor)
        {
            decimal decimalResult = SocialOperations.DecFactorResult(employeeBase, employeeFactor);

            Int32 roundedResult = SocialOperations.IntRoundUp(decimalResult);

            return(roundedResult);
        }
Example #2
0
        public decimal BasisGeneralAdapted(MonthPeriod period, bool negSuppress, decimal valResult)
        {
            decimal adaptedResult = SocialOperations.DecSuppressNegative(negSuppress, valResult);

            decimal roundedResult = SocialOperations.DecRoundUp(adaptedResult);

            return(roundedResult);
        }
Example #3
0
        public decimal EmployeeGarantContribution(MonthPeriod period, bool negSuppress, decimal employeeBase)
        {
            decimal employeeFactor = PeriodEmployeeGarantFactor(period, PENSION_SCHEME_YES);

            decimal calculatedBase = SocialOperations.DecSuppressNegative(negSuppress, employeeBase);

            Int32 resultPaymentValue = EmployeeContributionWithFactor(calculatedBase, employeeFactor);

            return(resultPaymentValue);
        }
Example #4
0
        // EmployerContribution
        public decimal EmployerContribution(MonthPeriod period, bool negSuppress, decimal employerBase)
        {
            decimal employerFactor = PeriodEmployerFactor(period);

            decimal calculatedBase = SocialOperations.DecSuppressNegative(negSuppress, employerBase);

            Int32 resultPaymentValue = EmployerContributionWithFactor(calculatedBase, employerFactor);

            return(resultPaymentValue);
        }
Example #5
0
        public decimal BasisLegalCapBalance(MonthPeriod period, decimal accumulBasis, decimal actualBasis)
        {
            bool negativeSuppress = true;

            decimal calculatedBase = SocialOperations.DecSuppressNegative(negativeSuppress, actualBasis);

            decimal maxHealthLimit = PeriodMaximumAnnualBasis(period);

            decimal balancedResult = HealthOperations.MaxValueAlign(calculatedBase, accumulBasis, maxHealthLimit);

            decimal legalCapsBasis = Math.Max(0, decimal.Subtract(calculatedBase, balancedResult));

            return(legalCapsBasis);
        }