/// <summary> /// Инициализация оплат /// </summary> /// <returns></returns> private async Task PaymentsInitAsync() { if (_dbContext.Payments.Count() == 0) { var casherRole = await _roleManager.FindByNameAsync("casher"); var cahserUserRole = await _dbContext.UserRoles .FirstOrDefaultAsync(ur => ur.RoleId.Equals(casherRole.Id)); var casherProfile = await _dbContext.Profiles .Include(p => p.User) .FirstOrDefaultAsync(p => p.User.Id.Equals(cahserUserRole.UserId)); for (int i = 0; i < 200; i++) { var profileToPaymet = await _dbContext.Profiles .Include(p => p.Tariff) .Where(p => !p.Tariff.Name.Equals("Коллегиальный")) .OrderBy(o => Guid.NewGuid()) .FirstOrDefaultAsync(); var payment = new Payment() { SourceProfile = casherProfile, DestinationProfile = profileToPaymet, Role = casherRole, Amount = profileToPaymet.Tariff.Price + 10, Comment = "Инициализатор" }; profileToPaymet.BalanceOfCash += payment.Amount; await Task.Run(() => { _dbContext.Update(profileToPaymet); _dbContext.Add(payment); }); } await _dbContext.SaveChangesAsync(); } }