public LeaveRequestForEdit GetLeaveRequestForEdit(int id)
        {
            LeaveRequest        request    = _dbContext.LeaveRequests.Where(x => x.Id == id).FirstOrDefault();
            int                 CreditId   = _dbContext.LeaveCredit.Where(x => x.PersonId == request.PersonId && x.LeaveId == request.TypeId).FirstOrDefault().Id;
            LeaveRequestForEdit NewRequest = new LeaveRequestForEdit()
            {
                Id            = request.Id,
                AppliedDate   = request.AppliedDate,
                ApprovedBy    = request.ApprovedBy,
                ApprovedDays  = request.ApprovedDays,
                Available     = request.Available,
                CreatedBy     = request.CreatedBy,
                CreatedDate   = request.CreatedDate,
                EmployeeName  = request.EmployeeName,
                FromDate      = request.FromDate,
                IsActive      = request.IsActive,
                LeaveType     = request.LeaveType,
                PersonId      = request.PersonId,
                Reason        = request.Reason,
                RequestedDays = request.RequestedDays,
                RowVersion    = request.RowVersion,
                Status        = request.Status,
                TenantId      = request.TenantId,
                ToDate        = request.ToDate,
                TypeId        = request.TypeId,
                UpdatedBy     = request.UpdatedBy,
                UpdatedDate   = request.UpdatedDate,
                CreditId      = CreditId
            };

            return(NewRequest);
        }
        public IActionResult EditLeaveRequest(int id, int PersonId)
        {
            response = _services.LeaveRules.GetResponse(ApiUrl + "/api/LeaveCredit/GetLeaveCreditsForEdit/" + PersonId);
            string stringData = response.Content.ReadAsStringAsync().Result;

            data = JsonConvert.DeserializeObject <List <LeaveCredit> >(stringData).ToList();
            if (data.Count == 0)
            {
                ViewBag.Status       = "NoData";
                ViewBag.ListOfPolicy = data;
            }
            else
            {
                ViewBag.ListOfPolicy = data;
            }
            string Data = _services.LeaveRequest.GetResponse(ApiUrl + "/api/LeaveRequest/GetLeaveRequestForEdit/" + id + "").Content.ReadAsStringAsync().Result;
            LeaveRequestForEdit leave = JsonConvert.DeserializeObject <LeaveRequestForEdit>(Data);

            return(PartialView("EditLeaveRequest", leave));
            //response = _services.LeaveRules.GetResponse(ApiUrl+"/api/LeavePolicy" );
            //string stringData1 = response.Content.ReadAsStringAsync().Result;
            //data = JsonConvert.DeserializeObject<List<LeaveCredit>>(stringData1);
            //ViewBag.ListOfPolicy = data;
            //string stringData = _services.LeaveRequest.GetResponse(ApiUrl+"/api/LeaveRequest/" + id + "" ).Content.ReadAsStringAsync().Result;
            //LeaveRequest leave = JsonConvert.DeserializeObject<LeaveRequest>(stringData);
            //return View(leave);
        }
 public IActionResult EditLeaveRequest(int id, LeaveRequestForEdit request)
 {
     request.UpdatedDate = DateTime.Now;
     if (ModelState.IsValid)
     {
         request.UpdatedBy = Convert.ToInt32(GetSession().PersonId);
         request.IsActive  = true;
         LeaveRequest NewRequest = new LeaveRequest()
         {
             Id            = request.Id,
             AppliedDate   = request.AppliedDate,
             ApprovedBy    = request.ApprovedBy,
             ApprovedDays  = request.ApprovedDays,
             Available     = request.Available,
             CreatedBy     = request.CreatedBy,
             CreatedDate   = request.CreatedDate,
             EmployeeName  = request.EmployeeName,
             FromDate      = request.FromDate,
             ToDate        = request.ToDate,
             IsActive      = request.IsActive,
             LeaveType     = request.LeaveType,
             PersonId      = request.PersonId,
             Reason        = request.Reason,
             RequestedDays = request.RequestedDays,
             RowVersion    = request.RowVersion,
             Status        = request.Status,
             TenantId      = request.TenantId,
             TypeId        = request.TypeId,
             UpdatedBy     = request.UpdatedBy,
             UpdatedDate   = request.UpdatedDate
         };
         HttpResponseMessage response = _services.LeaveRequest.PostResponse(ApiUrl + "/api/LeaveRequest/" + id + "/Null", NewRequest);
         if (response.IsSuccessStatusCode == true)
         {
             return(View());
         }
     }
     return(PartialView("EditLeaveRequest", request));
 }