private void GenerateTellerEvents(OCurrency amount, bool isOpen) { if (isOpen) { OpenOfDayAmountEvent.Amount = amount; OpenOfDayAmountEvent.TellerId = _teller.Id; OpenOfDayAmountEvent.Date = TimeProvider.Now; OCurrency expectedOpeningBalance = ServicesProvider.GetInstance().GetTellerServices().GetTellerBalance(_teller); OCurrency cashAmount = decimal.Parse(tbAmount.Text); if (expectedOpeningBalance < cashAmount) { OpenAmountPositiveDifferenceEvent = new OpenAmountPositiveDifferenceEvent(); OpenAmountPositiveDifferenceEvent.TellerId = _teller.Id; OpenAmountPositiveDifferenceEvent.Date = TimeProvider.Now; OpenAmountPositiveDifferenceEvent.Amount = cashAmount - expectedOpeningBalance; } else if (expectedOpeningBalance > cashAmount) { OpenAmountNegativeDifferenceEvent = new OpenAmountNegativeDifferenceEvent(); OpenAmountNegativeDifferenceEvent.TellerId = _teller.Id; OpenAmountNegativeDifferenceEvent.Date = TimeProvider.Now; OpenAmountNegativeDifferenceEvent.Amount = expectedOpeningBalance - cashAmount; } } else { CloseOfDayAmountEvent.Amount = amount; CloseOfDayAmountEvent.TellerId = Teller.CurrentTeller.Id; CloseOfDayAmountEvent.Date = TimeProvider.Now; OCurrency excpectedClosingBalance = ServicesProvider.GetInstance().GetTellerServices().GetTellerBalance(_teller); excpectedClosingBalance += ServicesProvider.GetInstance().GetTellerServices().GetLatestTellerOpenBalance(_teller); OCurrency cashAmount = decimal.Parse(tbAmount.Text); if (excpectedClosingBalance < cashAmount) { CloseAmountPositiveDifferenceEvent = new CloseAmountPositiveDifferenceEvent(); CloseAmountPositiveDifferenceEvent.Amount = cashAmount - excpectedClosingBalance; CloseAmountPositiveDifferenceEvent.TellerId = Teller.CurrentTeller.Id; CloseAmountPositiveDifferenceEvent.Date = TimeProvider.Now; } else if (excpectedClosingBalance > cashAmount) { CloseAmountNegativeDifferenceEvent = new CloseAmountNegativeDifferenceEvent(); CloseAmountNegativeDifferenceEvent.Amount = excpectedClosingBalance - cashAmount; CloseAmountNegativeDifferenceEvent.TellerId = Teller.CurrentTeller.Id; CloseAmountNegativeDifferenceEvent.Date = TimeProvider.Now; } } }
private void GenerateTellerEvents(OCurrency amount, bool isOpen) { if (isOpen) { OpenOfDayAmountEvent.Amount = amount; OpenOfDayAmountEvent.TellerId = _teller.Id; OpenOfDayAmountEvent.Date = TimeProvider.Now; OCurrency expectedOpeningBalance = ServicesProvider.GetInstance().GetTellerServices().GetTellerBalance(_teller); OCurrency cashAmount = decimal.Parse(tbAmount.Text); if (expectedOpeningBalance < cashAmount) { OpenAmountPositiveDifferenceEvent = new OpenAmountPositiveDifferenceEvent(); OpenAmountPositiveDifferenceEvent.TellerId = _teller.Id; OpenAmountPositiveDifferenceEvent.Date = TimeProvider.Now; OpenAmountPositiveDifferenceEvent.Amount = cashAmount - expectedOpeningBalance; Notify($"Opening teller {Teller.CurrentTeller.Name} with positive difference of {OpenAmountPositiveDifferenceEvent.Amount.GetFormatedValue(true)} "); } else if (expectedOpeningBalance > cashAmount) { OpenAmountNegativeDifferenceEvent = new OpenAmountNegativeDifferenceEvent(); OpenAmountNegativeDifferenceEvent.TellerId = _teller.Id; OpenAmountNegativeDifferenceEvent.Date = TimeProvider.Now; OpenAmountNegativeDifferenceEvent.Amount = expectedOpeningBalance - cashAmount; Notify($"Opening teller {Teller.CurrentTeller.Name} with negative difference of {OpenAmountNegativeDifferenceEvent.Amount.GetFormatedValue(true)} "); } } else { CloseOfDayAmountEvent.Amount = amount; CloseOfDayAmountEvent.TellerId = Teller.CurrentTeller.Id; CloseOfDayAmountEvent.Date = TimeProvider.Now; OCurrency excpectedClosingBalance = ServicesProvider.GetInstance().GetTellerServices().GetTellerBalance(_teller); //excpectedClosingBalance += //ServicesProvider.GetInstance().GetTellerServices().GetLatestTellerOpenBalance(_teller); OCurrency cashAmount = decimal.Parse(tbAmount.Text); if (excpectedClosingBalance < cashAmount) { CloseAmountPositiveDifferenceEvent = new CloseAmountPositiveDifferenceEvent(); CloseAmountPositiveDifferenceEvent.Amount = cashAmount - excpectedClosingBalance; CloseAmountPositiveDifferenceEvent.TellerId = Teller.CurrentTeller.Id; CloseAmountPositiveDifferenceEvent.Date = TimeProvider.Now; Notify($"Closing teller {Teller.CurrentTeller.Name} with positive difference of {CloseAmountPositiveDifferenceEvent.Amount.GetFormatedValue(true)} "); } else if (excpectedClosingBalance > cashAmount) { CloseAmountNegativeDifferenceEvent = new CloseAmountNegativeDifferenceEvent(); CloseAmountNegativeDifferenceEvent.Amount = excpectedClosingBalance - cashAmount; CloseAmountNegativeDifferenceEvent.TellerId = Teller.CurrentTeller.Id; CloseAmountNegativeDifferenceEvent.Date = TimeProvider.Now; Notify($"Closing teller {Teller.CurrentTeller.Name} with negative difference of {CloseAmountNegativeDifferenceEvent.Amount.GetFormatedValue(true)} "); } } }