// GET: CheckUp



        public ActionResult GetChecksUp(string sortOrder, string currentFilter, string searchString, int?page)
        {
            ViewBag.CurrentSort  = sortOrder;
            ViewBag.NameSortParm = string.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
            ViewBag.DateSortParm = sortOrder == "Date" ? "date_desc" : "Date";
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewBag.CurrentFilter = searchString;


            IQueryable <CheckUp> Checks = db.CheckUps;

            if (!string.IsNullOrEmpty(searchString))
            {
                Checks = Checks.Where(s => s.doctor.doctorName.Contains(searchString) ||
                                      s.Patient.name.Contains(searchString) || s.CheckType.Contains(searchString) || s.CreateAt.ToString().Contains(searchString));
            }

            var viewModels = new List <CheckUpViewModel>();

            if (Checks != null)
            {
                foreach (var item in Checks)
                {
                    var viewModel = new CheckUpViewModel();

                    viewModel.id          = item.id;
                    viewModel.doctorName  = item.doctor.doctorName;
                    viewModel.Patientname = item.Patient.name;
                    viewModel.CreateAt    = item.CreateAt;
                    viewModel.CheckType   = item.CheckType;
                    viewModels.Add(viewModel);
                }
            }

            if (page.HasValue && page < 1)
            {
                return(null);
            }
            // retrieve list from database/wherever9
            var listUnpaged = viewModels.ToList();
            // page the list
            const int pageSize  = 10;
            var       listPaged = listUnpaged.ToPagedList(page ?? 1, pageSize);

            // return a 404 if user browses to pages beyond last page. special case first page if no items exist
            if (listPaged.PageNumber != 1 && page.HasValue && page > listPaged.PageCount)
            {
                return(null);
            }

            return(View(listPaged));
        }
        public ActionResult Delete(CheckUpViewModel checkUpView)
        {
            var result = db.CheckUps.Find(checkUpView.id);

            db.CheckUps.Remove(result);
            db.SaveChanges();
            return(RedirectToAction("GetChecksUp"));
        }
        public ActionResult Delete(int id)
        {
            var checkup = db.CheckUps.Find(id);
            CheckUpViewModel viewModel = new CheckUpViewModel
            {
                CheckType   = checkup.CheckType,
                doctorName  = checkup.doctor.doctorName,
                Patientname = checkup.Patient.name,
                CreateAt    = checkup.CreateAt,
                id          = checkup.id
            };

            return(View(viewModel));
        }