Beispiel #1
0
        public async Task <IViewComponentResult> InvokeAsync()
        {
            //var id = HttpContext.User.Claims.FirstOrDefault();
            var user = await this.userManager.GetUserAsync(HttpContext.User);

            var balance = await this.userBalanceService.GetUserBalanceByIdAsync(user.Id);

            var userBalanceVM = new UserBalanceViewModel()
            {
                Balance  = Math.Round(balance, 2),
                Currency = user.Currency
            };

            return(View("Default", userBalanceVM));
        }
Beispiel #2
0
        public UserBalanceViewModel GetBalance(string userName, int pin)
        {
            var currentPin = new Encoder().Encode(pin);
            var user       = _userRepository.Get(x => x.Pin == currentPin && x.UserName == userName);

            if (user == null)
            {
                throw new InvalidOperationException("No such user in database");
            }

            var balanceModel = new UserBalanceViewModel
            {
                Balance  = user.Balance,
                UserName = userName
            };

            return(balanceModel);
        }
Beispiel #3
0
        /// <summary>
        /// Получает инфо о балансе пользователя
        /// </summary>
        /// <returns></returns>
        public async Task <UserBalanceViewModel> GetOfficeInfoAsync()
        {
            var result = new UserBalanceViewModel();

            result.TradingUri  = _configuration.GetValue <string>("LocalTransactionUri");
            result.UserId      = Guid.Parse(_configuration.GetValue <string>("UserId"));
            result.UserBalance = new List <UserBalance>();

            var currencies = await _currencyClient.GetCurrenciesAsync();

            var userBalance = await _transactionClient.BalanceAsync(result.UserId);

            foreach (var item in currencies.OrderBy(c => c.CurrencyId))
            {
                var balance = userBalance.Any(b => b.CurrencyPairId == item.CurrencyId)
                    ? userBalance.FirstOrDefault(b => b.CurrencyPairId == item.CurrencyId).Balance
                    : 0;
                result.UserBalance.Add(new UserBalance {
                    CurrencyPairId = item.CurrencyId.ToUpper(), Balance = balance
                });
            }

            return(result);
        }
Beispiel #4
0
 public IActionResult BalanceDashboard(UserBalanceViewModel model)
 {
     return(View(model));
 }