Exemple #1
0
        public override async Task <ActionResult <AccountDetailsResponse> > HandleAsync(
            CancellationToken cancellationToken = default)
        {
            var response = await _finApiService.GetAllBankAccounts(cancellationToken);

            if (response == null)
            {
                return(Ok());
            }

            foreach (var responseAccount in response.Accounts)
            {
                responseAccount.FormattedBalance = long.Parse(responseAccount.Balance.FormatBalance());
            }

            var session = await _finApiService.BuildUserSessionConfiguration(cancellationToken);

            var client             = new BankConnectionsApi(session);
            var allBankConnections = await client.GetAllBankConnectionsAsync(cancellationToken : cancellationToken);

            var allBankConnectionIds = allBankConnections.Connections.SelectMany(x => x.AccountIds).Shuffle();
            var transactionsPayload  =
                await _finApiService.GetAllBankTransactions(allBankConnectionIds.Shuffle().Take(1).FirstOrDefault(), cancellationToken);

            var finalTransactions = transactionsPayload.Transactions.Shuffle().OrderByDescending(x => x.BankBookingDate).Take(5).ToList();

            foreach (var finalTransaction in finalTransactions)
            {
                finalTransaction.FormattedBalance = long.Parse(finalTransaction.Amount.FormatBalance());
            }

            return(Ok(new AccountDetailsResponse(response.Accounts, finalTransactions)));
        }
Exemple #2
0
        public override async Task <ActionResult> HandleAsync([FromRoute] DeleteBankRequest request,
                                                              CancellationToken cancellationToken = default)
        {
            var session = await _finApiService.BuildUserSessionConfiguration(cancellationToken);

            var api = new BankConnectionsApi(session);
            await api.DeleteBankConnectionAsync(request.Id, cancellationToken);

            return(Ok());
        }
        public BankConnectionList AllConnections(string userId, string userPassword)
        {
            var token = GetUserAccessToken(userId, userPassword);

            var api = new BankConnectionsApi(BasePath);

            api.ApiClient.AddDefaultHeader("Authorization", "Bearer " + token);
            var result = api.GetAllBankConnections(null);

            return(result);
        }