public IQueryable <UserAccountBalance> SetFilter(IQueryable <UserAccountBalance> query) { query = ( from a in _dbContext.Set <UserAccount>() join va in _dbContext.Set <UserAccountBalance>() on a.Id equals va.Id where a.UserOwner.Id == _userOwnerId && a.State.Id == (long)UserAccountStates.Active && a.DeletedAt == null select new UserAccountBalance { Id = a.Id, CreatedAt = a.CreatedAt, State = a.State, Type = a.Type, UserOwner = a.UserOwner, TotalBalance = va.TotalBalance, AvailableBalance = va.AvailableBalance, BetBalance = va.BetBalance } ).AsQueryable(); return(query); }
private async Task <AccountTransaction> ApplyWelcomeBonusTransaction(UserAccount userAccount) { AccountTransaction accountTransaction = null; decimal amount = GetWelcomeBonusAmmountByUserAccountType(userAccount.Type); if (amount > 0M) { accountTransaction = await FillAccountTransaction(userAccount); accountTransaction.Amount = amount; _dbContext.Set <AccountTransaction>().Add(accountTransaction); await _dbContext.SaveChangesAsync(); } return(accountTransaction); }