コード例 #1
0
 public AccountingRuleCollection SelectAll()
 {
     return(_accountingRuleManager.SelectAll());
 }
コード例 #2
0
        public void SelectAll()
        {
            Account genericAccount  = _accountManager.Select(1);
            Account specificAccount = _accountManager.Select(2);

            EventType      eventType      = _eventManager.SelectEventTypeByEventType("RGLE");
            EventAttribute eventAttribute = _eventManager.SelectEventAttributeByCode("principal");

            #region adding rule 1
            ContractAccountingRule ruleOne = new ContractAccountingRule
            {
                DebitAccount     = genericAccount,
                CreditAccount    = specificAccount,
                ProductType      = OProductTypes.All,
                ClientType       = OClientTypes.All,
                BookingDirection = OBookingDirections.Both,
                EventType        = eventType,
                EventAttribute   = eventAttribute
            };
            ruleOne.Id = _accountingRuleManager.AddAccountingRule(ruleOne);
            Assert.AreNotEqual(0, ruleOne.Id);
            #endregion

            #region adding rule 2
            LoanProduct            loanProduct = _loanProductManager.Select(1);
            ContractAccountingRule ruleTwo     = new ContractAccountingRule
            {
                DebitAccount     = genericAccount,
                CreditAccount    = specificAccount,
                ProductType      = OProductTypes.Loan,
                LoanProduct      = loanProduct,
                ClientType       = OClientTypes.Corporate,
                BookingDirection = OBookingDirections.Credit,
                EventType        = eventType,
                EventAttribute   = eventAttribute
            };
            ruleTwo.Id = _accountingRuleManager.AddAccountingRule(ruleTwo);
            Assert.AreNotEqual(0, ruleTwo.Id);

            #endregion

            #region adding rule 3
            ContractAccountingRule ruleThree = new ContractAccountingRule
            {
                DebitAccount  = genericAccount,
                CreditAccount = specificAccount,
                //ProductType = OProductTypes.Guarantee,
                ClientType       = OClientTypes.Group,
                BookingDirection = OBookingDirections.Debit,
                EventType        = eventType,
                EventAttribute   = eventAttribute
            };

            ruleThree.Id = _accountingRuleManager.AddAccountingRule(ruleThree);
            Assert.AreNotEqual(0, ruleThree.Id);
            #endregion

            #region adding rule 4
            ISavingProduct         savingsProduct = _savingProductManager.SelectSavingProduct(1);
            ContractAccountingRule ruleFour       = new ContractAccountingRule
            {
                DebitAccount     = genericAccount,
                CreditAccount    = specificAccount,
                ProductType      = OProductTypes.Saving,
                SavingProduct    = savingsProduct,
                ClientType       = OClientTypes.Person,
                BookingDirection = OBookingDirections.Both,
                EventType        = eventType,
                EventAttribute   = eventAttribute
            };
            ruleFour.Id = _accountingRuleManager.AddAccountingRule(ruleFour);
            Assert.AreNotEqual(0, ruleFour.Id);
            #endregion

            #region adding rule 5
            EconomicActivity       economicActivty = _economicActivityManager.SelectEconomicActivity(1);
            ContractAccountingRule ruleFive        = new ContractAccountingRule
            {
                DebitAccount     = genericAccount,
                CreditAccount    = specificAccount,
                ProductType      = OProductTypes.All,
                ClientType       = OClientTypes.Village,
                EconomicActivity = economicActivty,
                BookingDirection = OBookingDirections.Credit,
                EventType        = eventType,
                EventAttribute   = eventAttribute
            };

            ruleFive.Id = _accountingRuleManager.AddAccountingRule(ruleFive);
            Assert.AreNotEqual(0, ruleFive.Id);
            #endregion

            AccountingRuleCollection rules = _accountingRuleManager.SelectAll();
            Assert.AreEqual(5, rules.Count);

            _compareRules(ruleOne, rules[0] as ContractAccountingRule);
            _compareRules(ruleTwo, rules[1] as ContractAccountingRule);
            _compareRules(ruleThree, rules[2] as ContractAccountingRule);
            _compareRules(ruleFour, rules[3] as ContractAccountingRule);
            _compareRules(ruleFive, rules[4] as ContractAccountingRule);
        }