public async Task <ActionResult> List()
        {
            SetSessionVariable();

            List <SeatUsageResponse> seatUsages = null;
            ServiceResult <List <SeatUsageResponse> > result = null;
            List <SeatUsageViewModel> seatUsageList          = new List <SeatUsageViewModel>();

            try
            {
                using (HttpClient client = new HttpClient())
                {
                    client.BaseAddress = new Uri(Common.Instance.ApiSeatUsageControllerName);
                    var responsetask = await client.GetAsync(Common.Instance.ApiSeatUsageList);

                    result = await responsetask.Content.ReadAsAsync <ServiceResult <List <SeatUsageResponse> > >();

                    seatUsages = result.Result;

                    SeatUsageViewModel seatUsageViewModel = null;

                    foreach (var seatUsage in seatUsages)
                    {
                        seatUsageViewModel = new SeatUsageViewModel();
                        seatUsageViewModel.SetViewModel(seatUsage);
                        seatUsageList.Add(seatUsageViewModel);
                    }
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError(string.Empty, "Server error. Please contact administrator");
            }
            return(View(seatUsageList));
        }
        public async Task <ActionResult> Update(int ID)
        {
            SetSessionVariable();

            ServiceResult <SeatUsage> result = null;

            SeatUsage seatUsage = new SeatUsage();

            SeatUsageViewModel seatUsageVM = null;

            try
            {
                using (HttpClient client = new HttpClient())
                {
                    client.BaseAddress = new Uri(Common.Instance.ApiSeatUsageControllerName);
                    var responsetask = await client.GetAsync(Common.Instance.ApiSeatUsageGet + "/" + ID);

                    result = await responsetask.Content.ReadAsAsync <ServiceResult <SeatUsage> >();

                    seatUsage = result.Result;

                    seatUsageVM = new SeatUsageViewModel();
                    seatUsageVM.GetViewModel(seatUsage);
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError(string.Empty, "Server error. Please contact administrator");
            }
            return(View(seatUsageVM));
        }
        public ActionResult Update(SeatUsageViewModel seatUsageVM)
        {
            seatUsageVM.ModifyBy       = GetSessionObject().UserID;
            seatUsageVM.ModifyDateTime = DateTime.Now;

            SeatUsage seatUsage = seatUsageVM.GetObject();

            SetSessionVariable();

            try
            {
                using (HttpClient client = new HttpClient())
                {
                    client.BaseAddress = new Uri(Common.Instance.ApiSeatUsageControllerName);
                    var posttask = client.PostAsJsonAsync <SeatUsage>(Common.Instance.ApiSeatUsageUpdate, seatUsage);
                    posttask.Wait();

                    var result = posttask.Result;
                    if (result.IsSuccessStatusCode)
                    {
                        var rs = result.Content.ReadAsAsync <ServiceResult <SeatUsage> >().Result;
                    }
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError(string.Empty, "Server error. Please contact administrator");
            }
            return(RedirectToAction("List"));
        }