private void ProcessInvBalances( List <int> usersFound, int monthsCnt, string startYearMonthStr) { foreach (var email in userEmails) { int custId = db.Users .Where(u => u.Email == email) .Select(u => u.Id) .SingleOrDefault(); if (custId != 0) { usersFound.Add(custId); SetDbMonthlyPortfolioLossesForTestPlayers(custId, monthsCnt, startYearMonthStr); } } DbUtil.DbSchema.GzRunTimeDb sqlProviderCtx; using (sqlProviderCtx = DbUtil.getOpenDb(devDbConnString)) { var portfoliosPrices = GetPortfoliosPrices(startYearMonthStr, monthsCnt); UserTrx.processGzTrx(sqlProviderCtx, startYearMonthStr, portfoliosPrices, FSharpOption <string> .None); } }
private void ProcessInvBalances_1_through_4(int caseNo, List <int> usersFound, int monthsCnt, string currentYearMonthStr) { PortfolioTypes.PortfoliosPrices monthPortfoliosPrices = null; DbUtil.DbSchema.GzRunTimeDb sqlProviderCtx; using (sqlProviderCtx = DbUtil.getOpenDb(devDbConnString)) { foreach (var email in userEmails) { int userId = db.Users .Where(u => u.Email == email) .Select(u => u.Id) .SingleOrDefault(); if (userId != 0) { usersFound.Add(userId); SetDbMonthlyPortfolioSelection(monthsCnt, userId, currentYearMonthStr); SetDbMonthlyPlayerLossTrx_3_4(currentYearMonthStr, userId); var userVintages = AssertUserVintagesCount(userId, monthsCnt); monthPortfoliosPrices = GetPortfoliosPrices(currentYearMonthStr, monthsCnt); SellVintages(caseNo, currentYearMonthStr, userVintages, userId); } } // Process losses -> invbalance UserTrx.processGzTrx(sqlProviderCtx, currentYearMonthStr, monthPortfoliosPrices, FSharpOption <string> .None); } AssertAllUsersVintagesCountAfterMonthClearance(usersFound, monthsCnt + 1); }