Esempio n. 1
0
 public function processMarital($patientquery, $visitquery, $value, $title = "")
 {
     if ($value != "all") {
         $title .= $value;
         $patientquery->whereIn('id', PatientReport::where('marital_status', $value)->get()->lists('patient_id') + array('0'));
         $visitquery->whereIn('id', GynecologicalHistory::where('marital_status', $value)->get()->lists('visit_id') + array('0'));
     }
     return array($patientquery, $visitquery, $title);
 }
 public function checkCondition($query, $pat, $key1)
 {
     switch (Input::get('show')) {
         case "General":
             $pat ? $que = $query[0]->where('id', '!=', $key1) : ($que = $query[1]->where('id', '!=', $key1));
             break;
         case "Marital Status":
             $pat ? $que = $query[0]->whereIn('id', PatientReport::where('marital_status', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', GynecologicalHistory::where('marital_status', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "HIV Status":
             $pat ? $que = $query[0]->whereIn('id', PatientReport::where('HIV_status', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', HivStatus::where('status', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "HIV Test  Results":
             if ($pat) {
                 $key1 == 'test' ? $que = $query[1]->whereIn('id', HivStatus::where('pitc_agreed', "yes")->get()->lists('visit_id') + array('0')) : ($que = $query[1]->whereIn('id', HivStatus::where('pitc_result', $key1)->get()->lists('visit_id') + array('0')));
             } else {
                 $key1 == 'test' ? $que = $query[1]->whereIn('id', HivStatus::where('pitc_agreed', "yes")->get()->lists('visit_id') + array('0')) : ($que = $query[1]->whereIn('id', HivStatus::where('pitc_result', $key1)->get()->lists('visit_id') + array('0')));
             }
             break;
         case "CD4 Count":
             $arr = explode("-", $key1);
             $pat ? $que = $query[0]->whereIn('id', PatientReport::whereBetween('cd4_count', array($arr[0], $arr[1]))->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', HivStatus::whereBetween('pitc_cd4_count', array($arr[0], $arr[1]))->get()->lists('visit_id') + ContraceptiveHistory::where('current_status', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Decline Reason":
             $pat ? $que = $query[0]->whereIn('id', HivStatus::where('unknown_reason', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', HivStatus::where('unknown_reason', $key1)->get()->lists('visit_id')));
             break;
         case "Pap Smear Findings":
             $pat ? $que = $query[0]->whereIn('id', PapsmearStatus::where('result_id', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', PapsmearStatus::where('result_id', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Pap Smear Status":
             $pat ? $que = $query[0]->whereIn('id', PapsmearStatus::where('status', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', PapsmearStatus::where('status', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Colposcopy Findings":
             $pat ? $que = $query[0]->whereIn('id', ColposcopyStatus::where('result_id', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', ColposcopyStatus::where('result_id', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Colposcopy Status":
             $pat ? $que = $query[0]->whereIn('id', ColposcopyStatus::where('status', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', ColposcopyStatus::where('status', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Contraceptive History":
             $pat ? $que = $query[0]->whereIn('id', ContraceptiveHistory::where('previous_status', $key1)->get()->lists('patient_id') + ContraceptiveHistory::where('current_status', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', ContraceptiveHistory::where('previous_status', $key1)->get()->lists('visit_id') + ContraceptiveHistory::where('current_status', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Contraceptive Type":
             $pat ? $que = $query[0]->whereIn('id', ContraceptiveHistory::where('previous_contraceptive_id', $key1)->get()->lists('patient_id') + ContraceptiveHistory::where('current_contraceptive_id', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', ContraceptiveHistory::where('previous_contraceptive_id', $key1)->get()->lists('visit_id') + ContraceptiveHistory::where('current_contraceptive_id', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Via Counseling":
             $pat ? $que = $query[0]->whereIn('id', ViaStatus::where('via_counselling_status', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', ViaStatus::where('via_counselling_status', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Via Tests":
             $pat ? $que = $query[0]->whereIn('id', ViaStatus::where('via_test_status', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', ViaStatus::where('via_test_status', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Via Test Result":
             $pat ? $que = $query[0]->whereIn('id', ViaStatus::where('via_result', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', ViaStatus::where('via_result', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Via No Test Reason":
             $pat ? $que = $query[0]->whereIn('id', ViaStatus::where('reject_reason', $key1)->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', ViaStatus::where('reject_reason', $key1)->get()->lists('visit_id') + array('0')));
             break;
         case "Menarche":
             $arr = explode("-", $key1);
             $pat ? $que = $query[0]->whereIn('id', PatientReport::whereBetween('menarche', array($arr[0], $arr[1]))->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', GynecologicalHistory::whereBetween('menarche', array($arr[0], $arr[1]))->get()->lists('visit_id') + array('0')));
             break;
         case "Total Number of Pregnancy":
             $arr = explode("-", $key1);
             $pat ? $que = $query[0]->whereIn('id', PatientReport::whereBetween('number_of_pregnancy', array($arr[0], $arr[1]))->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', GynecologicalHistory::whereBetween('number_of_pregnancy', array($arr[0], $arr[1]))->get()->lists('visit_id') + array('0')));
             break;
         case "Parity":
             $arr = explode("-", $key1);
             $pat ? $que = $query[0]->whereIn('id', PatientReport::whereBetween('parity', array($arr[0], $arr[1]))->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', GynecologicalHistory::whereBetween('parity', array($arr[0], $arr[1]))->get()->lists('visit_id') + array('0')));
             break;
         case "Age At first Marriage":
             $arr = explode("-", $key1);
             $pat ? $que = $query[0]->whereIn('id', PatientReport::whereBetween('first_marriage', array($arr[0], $arr[1]))->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', GynecologicalHistory::whereBetween('age_at_first_marriage', array($arr[0], $arr[1]))->get()->lists('visit_id') + array('0')));
             break;
         case "Number of sexual partners":
             $arr = explode("-", $key1);
             $pat ? $que = $query[0]->whereIn('id', PatientReport::whereBetween('partners', array($arr[0], $arr[1]))->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', GynecologicalHistory::whereBetween('sexual_partner', array($arr[0], $arr[1]))->get()->lists('visit_id') + array('0')));
             break;
         case "Age At Sexual Debut":
             $arr = explode("-", $key1);
             $pat ? $que = $query[0]->whereIn('id', PatientReport::whereBetween('age_at_sexual_debut', array($arr[0], $arr[1]))->get()->lists('patient_id') + array('0')) : ($que = $query[1]->whereIn('id', GynecologicalHistory::whereBetween('age_at_sexual_debut', array($arr[0], $arr[1]))->get()->lists('visit_id') + array('0')));
             break;
     }
     return $que;
 }