Ejemplo n.º 1
0
        public void Get_Set_Date()
        {
            SavingDepositEvent saving = new SavingDepositEvent {
                Date = TimeProvider.Today
            };

            Assert.AreEqual(TimeProvider.Today, saving.Date);
        }
Ejemplo n.º 2
0
        public void Get_Set_Amount()
        {
            SavingDepositEvent saving = new SavingDepositEvent {
                Amount = 125.5m
            };

            Assert.AreEqual(125.5m, saving.Amount.Value);
        }
Ejemplo n.º 3
0
        public void Get_Set_Id()
        {
            SavingDepositEvent saving = new SavingDepositEvent {
                Id = 1
            };

            Assert.AreEqual(1, saving.Id);
        }
Ejemplo n.º 4
0
        public void Get_Set_Description()
        {
            SavingDepositEvent saving = new SavingDepositEvent {
                Description = "Saving Description"
            };

            Assert.AreEqual("Saving Description", saving.Description);
        }
Ejemplo n.º 5
0
        public override List <SavingEvent> Deposit(OCurrency pAmount, DateTime pDate, string pDescription, string pReferenceNumber, User pUser,
                                                   bool pIsDesactivateFees, bool isPending, bool?isLocal, OSavingsMethods savingsMethod, PaymentMethod paymentMethod, int?pendingEventId, Teller teller)
        {
            List <SavingEvent> events = new List <SavingEvent>();

            int?tellerId = null;

            if (teller != null && teller.Id != 0)
            {
                tellerId = teller.Id;
            }

            SavingEvent savingEvent;

            if (isPending)
            {
                savingEvent         = new SavingPendingDepositEvent();
                savingEvent.IsLocal = isLocal;
            }
            else
            {
                savingEvent = new SavingDepositEvent();
            }

            savingEvent.Amount          = pAmount;
            savingEvent.Date            = pDate;
            savingEvent.Description     = pDescription;
            savingEvent.ReferenceNumber = pReferenceNumber;
            savingEvent.User            = pUser;
            savingEvent.Cancelable      = true;
            savingEvent.IsPending       = isPending;
            savingEvent.SavingsMethod   = savingsMethod;
            savingEvent.PaymentsMethod  = paymentMethod;
            savingEvent.PaymentMethod   = paymentMethod;
            savingEvent.PendingEventId  = pendingEventId;
            savingEvent.TellerId        = tellerId;
            savingEvent.ProductType     = typeof(SavingsBookProduct);

            Events.Add(savingEvent);
            events.Add(savingEvent);

            //slycode: Check if its cheque or pending event
            if (!savingEvent.IsPending)
            {
                List <SavingEvent> dutyStampFeeEvents = ChargeDutyStampFee(savingEvent);
                //Events.AddRange(dutyStampFeeEvents);
                events.AddRange(dutyStampFeeEvents);
            }

            if (Status != OSavingsStatus.Closed && !pIsDesactivateFees)
            {
                savingEvent.Fee = savingsMethod == OSavingsMethods.Cheque ? ChequeDepositFees : DepositFees;
            }

            return(events);
        }
Ejemplo n.º 6
0
        public void CompareEventLessThanDate()
        {
            SavingDepositEvent event1 = new SavingDepositEvent {
                Date = new DateTime(2008, 10, 13)
            };
            SavingDepositEvent event2 = new SavingDepositEvent {
                Date = new DateTime(2008, 10, 15)
            };

            Assert.IsTrue(event1 < event2);
        }
Ejemplo n.º 7
0
        public override List <SavingEvent> Deposit(OCurrency pAmount, DateTime pDate, string pDescription, User pUser,
                                                   bool pIsDesactivateFees, bool isPending, OSavingsMethods savingsMethod, int?pendingEventId, Teller teller)
        {
            List <SavingEvent> events = new List <SavingEvent>();

            int?tellerId = null;

            if (teller != null && teller.Id != 0)
            {
                tellerId = teller.Id;
            }

            SavingEvent savingEvent;

            if (isPending)
            {
                savingEvent = new SavingPendingDepositEvent();
            }
            else
            {
                savingEvent = new SavingDepositEvent();
            }

            savingEvent.Amount         = pAmount;
            savingEvent.Date           = pDate;
            savingEvent.Description    = pDescription;
            savingEvent.User           = pUser;
            savingEvent.Cancelable     = true;
            savingEvent.IsPending      = isPending;
            savingEvent.SavingsMethod  = savingsMethod;
            savingEvent.PendingEventId = pendingEventId;
            savingEvent.TellerId       = tellerId;
            savingEvent.ProductType    = typeof(SavingsBookProduct);

            Events.Add(savingEvent);
            events.Add(savingEvent);

            if (Status != OSavingsStatus.Closed && !pIsDesactivateFees)
            {
                savingEvent.Fee = savingsMethod == OSavingsMethods.Cheque ? ChequeDepositFees : DepositFees;
            }

            return(events);
        }
Ejemplo n.º 8
0
        public virtual List <SavingEvent> Deposit(OCurrency pAmount, DateTime pDate, string pDescription, string pReferenceNumber, User pUser,
                                                  bool pIsDesactivateFees, bool isPending, bool?isLocal, OSavingsMethods savingsMethod, PaymentMethod paymentMethod, int?pendingEventId, Teller teller)
        {
            List <SavingEvent> events = new List <SavingEvent>();
            SavingEvent        savingEvent;

            int?tellerId = null;

            if (teller != null)
            {
                tellerId = teller.Id;
            }

            if (isPending)
            {
                savingEvent         = new SavingPendingDepositEvent();
                savingEvent.IsLocal = isLocal;
            }
            else
            {
                savingEvent = new SavingDepositEvent();
            }

            savingEvent.Amount          = pAmount;
            savingEvent.Date            = pDate;
            savingEvent.Description     = pDescription;
            savingEvent.ReferenceNumber = pReferenceNumber;
            savingEvent.User            = pUser;
            savingEvent.Cancelable      = true;
            savingEvent.IsPending       = isPending;
            savingEvent.SavingsMethod   = savingsMethod;
            savingEvent.PaymentsMethod  = paymentMethod;
            savingEvent.PaymentMethod   = paymentMethod;
            savingEvent.PendingEventId  = pendingEventId;
            savingEvent.TellerId        = tellerId;
            savingEvent.ProductType     = typeof(SavingsBookProduct);

            Events.Add(savingEvent);
            events.Add(savingEvent);

            return(events);
        }
Ejemplo n.º 9
0
        public void Get_Code()
        {
            SavingInitialDepositEvent savingInitialDeposit = new SavingInitialDepositEvent();

            Assert.AreEqual("SVIE", savingInitialDeposit.Code);
            SavingDepositEvent savingDeposit = new SavingDepositEvent();

            Assert.AreEqual("SVDE", savingDeposit.Code);
            SavingWithdrawEvent savingWithDraw = new SavingWithdrawEvent();

            Assert.AreEqual("SVWE", savingWithDraw.Code);
            SavingInterestsAccrualEvent savingAccrualInterest = new SavingInterestsAccrualEvent();

            Assert.AreEqual("SIAE", savingAccrualInterest.Code);
            SavingInterestsPostingEvent savingPostingInterest = new SavingInterestsPostingEvent();

            Assert.AreEqual("SIPE", savingPostingInterest.Code);
            SavingCreditTransferEvent savingCreditTransfer = new SavingCreditTransferEvent();

            Assert.AreEqual("SCTE", savingCreditTransfer.Code);
            SavingDebitTransferEvent savingDebitTransfer = new SavingDebitTransferEvent();

            Assert.AreEqual("SDTE", savingDebitTransfer.Code);
        }
Ejemplo n.º 10
0
        private static SavingEvent GetSavingsEvent(string code)
        {
            SavingEvent e;

            switch (code)
            {
            case OSavingEvents.Deposit:
                e = new SavingDepositEvent();
                break;

            case OSavingEvents.Withdraw:
                e = new SavingWithdrawEvent();
                break;

            case OSavingEvents.Accrual:
                e = new SavingInterestsAccrualEvent();
                break;

            case OSavingEvents.Posting:
                e = new SavingInterestsPostingEvent();
                break;

            case OSavingEvents.InitialDeposit:
                e = new SavingInitialDepositEvent();
                break;

            case OSavingEvents.CreditTransfer:
                e = new SavingCreditTransferEvent();
                break;

            case OSavingEvents.DebitTransfer:
                e = new SavingDebitTransferEvent();
                break;

            case OSavingEvents.ManagementFee:
                e = new SavingManagementFeeEvent();
                break;

            case OSavingEvents.SavingClosure:
                e = new SavingClosureEvent();
                break;

            case OSavingEvents.Close:
                e = new SavingCloseEvent();
                break;

            case OSavingEvents.OverdraftFees:
                e = new SavingOverdraftFeeEvent();
                break;

            case OSavingEvents.Agio:
                e = new SavingAgioEvent();
                break;

            case OSavingEvents.PendingDeposit:
                e = new SavingPendingDepositEvent();
                break;

            case OSavingEvents.Reopen:
                e = new SavingReopenEvent();
                break;

            case OSavingEvents.PendingDepositRefused:
                e = new SavingPendingDepositRefusedEvent();
                break;

            case OSavingEvents.SpecialOperationCredit:
                e = new SavingCreditOperationEvent();
                break;

            case OSavingEvents.SpecialOperationDebit:
                e = new SavingDebitOperationEvent();
                break;

            case OSavingEvents.InterBranchCreditTransfer:
                e = new SavingCreditInterBranchTransferEvent();
                break;

            case OSavingEvents.InterBranchDebitTransfer:
                e = new SavingDebitInterBranchTransferEvent();
                break;

            case OSavingEvents.LoanDisbursement:
                e = new SavingLoanDisbursementEvent();
                break;

            case OSavingEvents.SavingLoanRepayment:
                e = new LoanRepaymentFromSavingEvent();
                break;

            case OSavingEvents.BlockCompulsarySavings:
                e = new SavingBlockCompulsarySavingsEvent();
                break;

            case OSavingEvents.UnblockCompulsorySavings:
                e = new SavingUnblockCompulsorySavingsEvent();
                break;

            default:
                Debug.Fail("Failed to create saving event object");
                throw new Exception();
            }
            return(e);
        }