public async Task <MemberHistoryResult> GetMemberHistoryResult(MemberHistoryResultQuery query) { using (var db = databaseManager.GetReadOnlyDatabase(query.OperatorTag)) { var history = await db.GameHistories .Include(gh => gh.Game) .FirstOrDefaultAsync(gh => gh.GameTransactionId == query.TransactionId); if (history != null) { var validTransactionId = MemberHistoryResult.GetTransactionId(history); var spinBetProfile = await db.SpinBetProfiles .FirstOrDefaultAsync(sbp => sbp.GameTransactionId == validTransactionId); return(new MemberHistoryResult( gamePayoutEngine, paylineRepository, gameInfoRepository, history, historyDecoderFactory, spinBetProfile)); } else { return(null); } } }
public async Task <IActionResult> MemberGameHistoryResult([FromQuery] MemberHistoryResultQuery query) => GetResult(await membersRepository.GetMemberHistoryResult(query));