public CalculateInterestsStrategy(ISavingsContract pSaving, User pUser, int pWeekEndDay2)
 {
     if (pSaving is Saving)
     {
         if (((Saving)pSaving).Product.InterestBase == OSavingInterestBase.Daily)
             _ici = new Accrual.Daily(pSaving, pUser);
         else if (((Saving)pSaving).Product.InterestBase == OSavingInterestBase.Monthly)
         {
             if (((Saving)pSaving).Product.CalculAmountBase == OSavingCalculAmountBase.MinimalAmount)
                 _ici = new Accrual.MinimalAmount.Monthly((Saving)pSaving, pUser);
         }
         else if (((Saving)pSaving).Product.InterestBase == OSavingInterestBase.Weekly)
         {
             if (((Saving)pSaving).Product.CalculAmountBase == OSavingCalculAmountBase.MinimalAmount)
                 _ici = new Accrual.MinimalAmount.Weekly((Saving)pSaving, pUser, pWeekEndDay2);
         }
     }
     else if (pSaving is SavingDeposit)
     {
         if (((SavingDeposit)pSaving).Product.InterestFrequency == OTermDepositInterestFrequency.Daily)
             _ici = new Accrual.Daily(pSaving, pUser);
         else if (((SavingDeposit)pSaving).Product.InterestFrequency == OTermDepositInterestFrequency.Maturity)
             _ici = new Accrual.Maturity((SavingDeposit)pSaving, pUser);
     }
 }
        public CalculateInterestsStrategy(ISavingsContract pSaving, User pUser, int pWeekEndDay2)
        {
            if (((SavingBookContract)pSaving).Product.InterestBase == OSavingInterestBase.Daily)
            {
                _ici = new Accrual.Daily(pSaving, pUser);
            }
            else if (((SavingBookContract)pSaving).Product.InterestBase == OSavingInterestBase.Monthly)
            {
                if (((SavingBookContract)pSaving).Product.CalculAmountBase == OSavingCalculAmountBase.MinimalAmount)
                {
                    _ici = new Accrual.MinimalAmount.Monthly((SavingBookContract)pSaving, pUser);
                }

                else if (((SavingBookContract)pSaving).Product.CalculAmountBase == OSavingCalculAmountBase.Usage)
                {
                    _ici = new Accrual.MinimalAmount.Monthly((SavingBookContract)pSaving, pUser, true);
                }
            }
            else if (((SavingBookContract)pSaving).Product.InterestBase == OSavingInterestBase.Weekly)
            {
                if (((SavingBookContract)pSaving).Product.CalculAmountBase == OSavingCalculAmountBase.MinimalAmount)
                {
                    _ici = new Accrual.MinimalAmount.Weekly((SavingBookContract)pSaving, pUser, pWeekEndDay2);
                }
            }
        }
예제 #3
0
 public CalculateInterestsStrategy(ISavingsContract pSaving, User pUser, int pWeekEndDay2)
 {
     if (((SavingBookContract)pSaving).Product.InterestBase == OSavingInterestBase.Daily)
         _ici = new Accrual.Daily(pSaving, pUser);
     else if (((SavingBookContract)pSaving).Product.InterestBase == OSavingInterestBase.Monthly)
     {
         if (((SavingBookContract)pSaving).Product.CalculAmountBase == OSavingCalculAmountBase.MinimalAmount)
             _ici = new Accrual.MinimalAmount.Monthly((SavingBookContract)pSaving, pUser);
     }
     else if (((SavingBookContract)pSaving).Product.InterestBase == OSavingInterestBase.Weekly)
     {
         if (((SavingBookContract)pSaving).Product.CalculAmountBase == OSavingCalculAmountBase.MinimalAmount)
             _ici = new Accrual.MinimalAmount.Weekly((SavingBookContract)pSaving, pUser, pWeekEndDay2);
     }
 }