/// <summary>
        /// It gets all the account statements from Account API
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public async Task <HttpResponseMessage> GetAccountStatement(GetAccountStatementViewModel model)
        {
            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri("http://52.224.198.245");
                var response = await client.PostAsJsonAsync("api/Account/getAccountStatement", new { AccountId = model.Id, from_date = model.StartDate, to_date = model.EndDate });

                return(response);
            }
        }
 public IActionResult GetAccountStatementView(int id)
 {
     if (HttpContext.Session.GetString("IsEmployee") == null)
     {
         return(RedirectToAction("Login", "Authentication"));
     }
     else
     {
         GetAccountStatementViewModel model = new GetAccountStatementViewModel()
         {
             Id = id
         };
         return(View(model));
     }
 }
        public async Task <IActionResult> GetAccountStatement(GetAccountStatementViewModel model)
        {
            if (HttpContext.Session.GetString("IsEmployee") == null)
            {
                return(RedirectToAction("Login", "Authentication"));
            }
            else
            {
                List <StatementViewModel> statementViews = new List <StatementViewModel>();
                try
                {
                    var response = await _accountProvider.GetAccountStatement(model);

                    if (response.StatusCode == System.Net.HttpStatusCode.OK)
                    {
                        var JsonContent = await response.Content.ReadAsStringAsync();

                        statementViews = JsonConvert.DeserializeObject <List <StatementViewModel> >(JsonContent);
                        return(View(statementViews));
                    }
                    else if (response.StatusCode == System.Net.HttpStatusCode.NotFound)
                    {
                        ViewBag.Message = "Having server issue while adding record";
                        return(View(statementViews));
                    }
                    else if (response.StatusCode == System.Net.HttpStatusCode.InternalServerError)
                    {
                        ViewBag.Message = "Internal Server Error! Please try again later";
                        return(View(statementViews));
                    }
                }
                catch (Exception ex)
                {
                    _logger.Error("Exceptions Occured as " + ex.Message);
                }
                return(View(statementViews));
            }
        }