Example #1
0
        static public Models.AccountBalance GetAccountBalance(string accountid, string viewid)
        {
            var uri = "http://api.bocapi.net/v1/api/banks/bda8eb884efcef7082792d45/accounts/" + accountid + "/" + viewid + "/account";


            var webrequest = (HttpWebRequest)System.Net.WebRequest.Create(uri);

            webrequest.Headers.Add("Auth-Provider-Name", "01040939298400");
            webrequest.Headers.Add("Auth-ID", "123456789");
            webrequest.Headers.Add("Ocp-Apim-Subscription-Key", "");
            webrequest.Headers.Add("Ocp-Apim-Subscription-Key", "d4af6bd7a1164d8eb6c6fca3c72a809a");
            Models.AccountBalance accountBalance = new Models.AccountBalance();
            using (var response = webrequest.GetResponse())
                using (var reader = new StreamReader(response.GetResponseStream()))
                {
                    //var result = ;
                    dynamic results = JsonConvert.DeserializeObject <dynamic>(reader.ReadToEnd());

                    accountBalance.label    = results.label.Value;
                    accountBalance.number   = results.number.Value;
                    accountBalance.iban     = results.IBAN.Value;
                    accountBalance.balance  = results.balance.amount.Value;
                    accountBalance.currency = results.balance.currency.Value;
                }
            return(accountBalance);
        }
        public IHttpActionResult GetAccountBalance(string id, string currency)
        {
            DataAccess.User user;

            // Retrieve User and Merchant account id's from database
            using (DataAccess.CodeDuoTestEntities entities = new DataAccess.CodeDuoTestEntities())
            {
                int idint = int.Parse(id);

                user = entities.Users.FirstOrDefault(e => e.Id == idint);
            }
            double rate = 1;

            Models.AccountBalance accountBalance = new Models.AccountBalance();
            switch (currency)
            {
            case "EUR":
                accountBalance = DataAccess.bocApi.GetAccountBalance(user.AccountId, "5710bba5d42604e4072d1e92");
                break;

            case "BTC":
                accountBalance          = DataAccess.bocApi.GetAccountBalance(user.AccountId, "5710bba5d42604e4072d1e92");
                accountBalance.currency = "BTC";
                rate = DataAccess.bitCoinAPI.GetBitCoinRate();
                accountBalance.balance = accountBalance.balance / rate;
                break;

            default:
                break;
            }


            if (accountBalance == null)
            {
                return(NotFound());
            }
            return(Ok(accountBalance));
        }