Esempio n. 1
0
        /// <summary>
        /// The get accounts.
        /// </summary>
        /// <param name="sessionId">
        /// The session id.
        /// </param>
        /// <returns>
        /// </returns>
        public AccountOverview GetAccounts(Guid sessionId)
        {
            var userId = this.VerifySession(sessionId);

            using (var context = this.GetContext())
            {
                var query = from account in context.Users.Find(userId).AccountAccess.Select(x => x.Account)
                            let accountWithBalance = context.AccountsWithBalance.Find(account.AccountId)
                            select
                                new AccountOverviewAccount
                                {
                                    AccountId = account.AccountId,
                                    Balance = accountWithBalance.Available,
                                    CurrencyId = accountWithBalance.Currency.CurrencyId,
                                    DisplayName = account.DisplayName,
                                    Type = account.AccountType
                                };

                var result = new AccountOverview();
                result.AddRange(query);
                return result;
            }
        }