private void StoreUnallocatedCompletionPayments(int v) { var employerAccountId = long.Parse(Config.EmployerAccountID); var balance = ForecastingDataContext.Balances.FirstOrDefault(m => m.EmployerAccountId == employerAccountId); if (balance == null) { balance = new Models.Balance.BalanceModel { EmployerAccountId = employerAccountId, Amount = 5001, TransferAllowance = 501, RemainingTransferBalance = 501, BalancePeriod = DateTime.UtcNow, ReceivedDate = DateTime.UtcNow, UnallocatedCompletionPayments = 2401 }; ForecastingDataContext.Balances.Add(balance); } else { balance.UnallocatedCompletionPayments = 2401; } ForecastingDataContext.SaveChanges(); }
public async Task Store(Models.Balance.BalanceModel balance) { var persistedBalance = await Get(balance.EmployerAccountId); if (persistedBalance != null) { persistedBalance.Amount = balance.Amount; persistedBalance.BalancePeriod = balance.BalancePeriod; persistedBalance.ReceivedDate = balance.ReceivedDate; persistedBalance.RemainingTransferBalance = balance.RemainingTransferBalance; persistedBalance.TransferAllowance = balance.TransferAllowance; persistedBalance.UnallocatedCompletionPayments = balance.UnallocatedCompletionPayments; } else { if (balance.ReceivedDate != DateTime.MinValue && balance.BalancePeriod != DateTime.MinValue) { _forecastingDataContext.Balances.Add(balance); } } var stopwatch = new Stopwatch(); stopwatch.Start(); var startTime = DateTime.UtcNow; await _forecastingDataContext.SaveChangesAsync(); stopwatch.Stop(); _telemetry.TrackDependency(DependencyType.SqlDatabaseUpdate, "Store Balance", startTime, stopwatch.Elapsed, true); }
public CurrentBalance( Models.Balance.BalanceModel balance, IAccountBalanceService accountBalanceService, EmployerCommitments employerCommitments) { Model = balance ?? throw new ArgumentNullException(nameof(balance)); _accountBalanceService = accountBalanceService ?? throw new ArgumentNullException(nameof(accountBalanceService)); EmployerCommitments = employerCommitments ?? throw new ArgumentNullException(nameof(employerCommitments)); }
public void SetUp() { _moqer = new AutoMoqer(); _previousAccountBalance = new BalanceModel { EmployerAccountId = 12345, BalancePeriod = DateTime.MinValue, }; _currentAccountBalance = new BalanceModel { EmployerAccountId = 12345, BalancePeriod = DateTime.Today, Amount = 10000, TransferAllowance = 1000, RemainingTransferBalance = 1000 }; _moqer.SetInstance(new EmployerCommitments(12345, new EmployerCommitmentsModel { LevyFundedCommitments = new List <CommitmentModel> { new CommitmentModel { EmployerAccountId = 12345, PlannedEndDate = DateTime.Today.AddMonths(-2), StartDate = DateTime.Today.AddMonths(-3), NumberOfInstallments = 1, CompletionAmount = 1000, MonthlyInstallment = 80, HasHadPayment = true, FundingSource = FundingSource.Levy }, new CommitmentModel { EmployerAccountId = 12345, PlannedEndDate = DateTime.Today.AddMonths(-1), StartDate = DateTime.Today.AddMonths(-3), NumberOfInstallments = 1, CompletionAmount = 1000, MonthlyInstallment = 80, HasHadPayment = true, FundingSource = FundingSource.Levy } } })); _moqer.SetInstance(_previousAccountBalance); _moqer.GetMock <IAccountBalanceService>() .Setup(svc => svc.GetAccountBalance(It.IsAny <long>())) .Returns(Task.FromResult <BalanceModel>(_currentAccountBalance)); }