//Todo : Filter Data public ActionResult SearchPatientList(SearchPatientModel searchPatient) { searchPatient.ToDate = searchPatient.ToDate.AddDays(1); var patients = db.SearchPatientViews.Where(e => e.DepartmentRadPath == main_department_id && (e.CreatedUtc >= searchPatient.FromDate && e.CreatedUtc <= searchPatient.ToDate)).Distinct(); if (searchPatient.PatientCategory != null && searchPatient.PatientCategory > 0) { patients = patients.Where(e => e.CompanyTypeId == searchPatient.PatientCategory); } if (searchPatient.Company != null && searchPatient.Company > 0) { patients = patients.Where(e => e.CompanyID == searchPatient.Company); } if (searchPatient.Tarrif != null && searchPatient.Tarrif > 0) { patients = patients.Where(e => e.TarrifId == searchPatient.Tarrif); } if (searchPatient.patient_type == "All") { } else if (searchPatient.patient_type == "Direct") { patients = patients.Where(e => e.OPDNo == null || e.OPDType == ""); } else { patients = patients.Where(e => e.OPDType.Trim() == searchPatient.patient_type.Trim()); } if (searchPatient.Department != null && searchPatient.Department > 0) { patients = patients.Where(e => e.TestDepartmentId == searchPatient.Department); } if (searchPatient.Title != null && searchPatient.Title > 0) { patients = patients.Where(e => e.LabTestId == searchPatient.Title); } if (searchPatient.DoctorName != null && searchPatient.DoctorName.Length > 0) { patients = patients.Where(e => e.DoctorUsername.Contains(searchPatient.DoctorName)); } if (searchPatient.PatientRegNo != null && searchPatient.PatientRegNo.Length > 0 && searchPatient.PatientName != null && searchPatient.PatientName.Length > 0) { patients = patients.Where(e => e.PatientRegNumber == (searchPatient.PatientRegNo)); } return(PartialView(patients)); }
public ActionResult SearchPatient(string actionType = "") { if (!isAuthorizedAccess(EmployeeRole.CEO, EmployeeRole.Doctor, EmployeeRole.Nurse, EmployeeRole.Staff)) { ViewBag.ErrorMessage = ACCESS_DENIED_MSG; return(View("~/Views/Shared/Error.cshtml")); } int accountId = Convert.ToInt32(Session["AccountId"]); var employee = getEmployeeAccount(accountId); var model = new SearchPatientModel(); // "input" or "view" medical record, "make-apt" for making appointment (returning patient) model.Action = actionType; model.Role = employee.Role; model.EmployeeId = employee.AccountId; return(View(model)); }