Beispiel #1
0
        //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));
        }
Beispiel #2
0
        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));
        }