-- select -- "; $counties = DB::table('counties') ->whereNull('deleted_at') ->where(['district_id' => $id]) ->get(); foreach ($counties as $county) { $code .= ""; } return $code; } public function get_subcounties($id) { $code = ""; $subcounties = DB::table('subcounties') ->whereNull('deleted_at') ->where(['county_id' => $id]) ->get(); foreach ($subcounties as $subcounty) { $code .= ""; } $code .= ""; return $code; } public function get_parishes($id) { $code = ""; $parishes = DB::table('parishes') ->whereNull('deleted_at') ->where(['subcounty_id' => $id]) ->get(); foreach ($parishes as $parish) { $code .= ""; } return $code; } public function get_villages($id) { $code = ""; $villages = DB::table('villages') ->whereNull('deleted_at') ->where(['parish_id' => $id]) ->get(); foreach ($villages as $village) { $code .= ""; } return $code; } /* * get patient residences and send corresponding drop down options */ public function search_districts(Request $request) { $data = []; if ($request->has('q')) { $search = $request->q; $data = DB::table('districts')->select("name", "id") ->where('name', 'LIKE', "%$search%") ->get(); } return response()->json($data); } public function search_counties(Request $request) { $data = []; if ($request->has('q')) { $search = $request->q; $data = DB::table('counties')->leftJoin('districts', 'districts.id', '=', 'counties.district_id') ->select("counties.name", "counties.id", "districts.name as district_name") ->where('counties.name', 'LIKE', "%$search%") ->get(); } return response()->json($data); } public function search_subcounties(Request $request) { $data = []; if ($request->has('q')) { $search = $request->q; $data = DB::table('subcounties')->leftJoin('counties', 'counties.id', '=', 'subcounties.county_id') ->select("subcounties.name", "subcounties.id", "counties.name as county_name") ->where('subcounties.name', 'LIKE', "%$search%") ->get(); } return response()->json($data); } public function search_parishes(Request $request) { $data = []; if ($request->has('q')) { $search = $request->q; $data = DB::table('parishes')->leftJoin('subcounties', 'subcounties.id', '=', 'parishes.subcounty_id') ->select("parishes.name", "parishes.id", "subcounties.name as sub_county_name") ->where('parishes.name', 'LIKE', "%$search%") ->get(); } return response()->json($data); } public function search_villages(Request $request) { $data = []; if ($request->has('q')) { $search = $request->q; $data = DB::table('villages')->leftJoin('parishes', 'parishes.id', '=', 'villages.parish_id') ->select("villages.name", "villages.id", "parishes.name as parish_name") ->where('villages.name', 'LIKE', "%$search%") ->get(); } return response()->json($data); } public function get_residence($district_id) { //loop is going to take long execution time $villages_array = []; $parishes_array = []; $subcounties_array = []; $counties = DB::table('counties')->where(['district_id' => $district_id])->whereNull('deleted_at')->pluck("name", "id"); foreach ($counties as $county_id => $county_name) { $subcounties = DB::table('subcounties')->where(['county_id' => $county_id])->whereNull('deleted_at')->get(); foreach ($subcounties as $subcounty) { $subcounties_array[$subcounty->id] = $subcounty->name; $parishes = DB::table('parishes')->where(['subcounty_id' => $subcounty->id])->whereNull('deleted_at')->get(); foreach ($parishes as $parish) { $parishes_array[$parish->id] = $parish->name; $villages = DB::table('villages')->where(['parish_id' => $parish->id])->whereNull('deleted_at')->get(); foreach ($villages as $village) { $villages_array[$village->id] = $village->name; } } } } return ['subcounties' => $subcounties_array, 'parishes' => $parishes_array, 'villages' => $villages_array]; } public function get_residence_district($district_id) { //loop is going to take long execution time $villages_array = []; $parishes_array = []; $sub_counties_array = []; $counties_array = []; $residences_array = []; $counties = DB::table('counties')->where(['district_id' => $district_id])->whereNull('deleted_at')->orderBy("name", "asc")->pluck("name", "id"); foreach ($counties as $county_id => $county_name) { $counties_array[$county_id] = $county_name; $subcounties = DB::table('subcounties')->where(['county_id' => $county_id])->whereNull('deleted_at')->get(); foreach ($subcounties as $subcounty) { $sub_counties_array[$subcounty->id] = $subcounty->name; $parishes = DB::table('parishes')->where(['subcounty_id' => $subcounty->id])->whereNull('deleted_at')->get(); foreach ($parishes as $parish) { $parishes_array[$parish->id] = $parish->name; $villages = DB::table('villages')->where(['parish_id' => $parish->id])->whereNull('deleted_at')->get(); foreach ($villages as $village) { $villages_array[$village->id] = $village->name; } } } } $residences_array['counties'] = $counties_array; $residences_array['subcounties'] = $sub_counties_array; $residences_array['parishes'] = $parishes_array; $residences_array['villages'] = $villages_array; return json_encode($residences_array); } public function get_residence_county($county_id) { //loop is going to take long execution time $villages_array = []; $parishes_array = []; $sub_counties_array = []; $residences_array = []; $subcounties = DB::table('subcounties')->where(['county_id' => $county_id])->whereNull('deleted_at')->orderBy("name", "asc")->get(); foreach ($subcounties as $subcounty) { $sub_counties_array[$subcounty->id] = $subcounty->name; $parishes = DB::table('parishes')->where(['subcounty_id' => $subcounty->id])->whereNull('deleted_at')->get(); foreach ($parishes as $parish) { $parishes_array[$parish->id] = $parish->name; $villages = DB::table('villages')->where(['parish_id' => $parish->id])->whereNull('deleted_at')->get(); foreach ($villages as $village) { $villages_array[$village->id] = $village->name; } } } $residences_array['subcounties'] = $sub_counties_array; $residences_array['parishes'] = $parishes_array; $residences_array['villages'] = $villages_array; return json_encode($residences_array); } public function get_residence_sub_county($sub_county_id) { //loop is going to take long execution time $villages_array = []; $parishes_array = []; $residences_array = []; $parishes = DB::table('parishes')->where(['subcounty_id' => $sub_county_id])->whereNull('deleted_at')->orderBy("name", "asc")->get(); foreach ($parishes as $parish) { $parishes_array[$parish->id] = $parish->name; $villages = DB::table('villages')->where(['parish_id' => $parish->id])->whereNull('deleted_at')->get(); foreach ($villages as $village) { $villages_array[$village->id] = $village->name; } } $residences_array['parishes'] = $parishes_array; $residences_array['villages'] = $villages_array; return json_encode($residences_array); } public function get_residence_parish($parish_id) { //loop is going to take long execution time $villages_array = []; $residences_array = []; $villages = DB::table('villages')->where(['parish_id' => $parish_id])->whereNull('deleted_at')->orderBy("name", "asc")->get(); foreach ($villages as $village) { $villages_array[$village->id] = $village->name; } $residences_array['villages'] = $villages_array; return json_encode($residences_array); } /* cater for adding a new occupation from a modal dynamically */ public function add_new_occupation_dynamically(Request $request) { $occupation = new Occupation; $occupation->name = $request->name; $occupation->created_by = Auth::user()->id; $occupation->updated_by = Auth::user()->id; try { $occupation->save(); return $occupation->id; } catch (QueryException $e) { flash("An error occurred")->error(); return back()->withInput(); } } public function add_new_district_dynamically(Request $request) { $district = new District; $district->name = $request->name; $district->created_by = Auth::user()->id; $district->updated_by = Auth::user()->id; $check = District::where('name', $request->name)->pluck('name')->first(); if (is_null($check)) { try { $district->save(); return $district->id; } catch (QueryException $e) { flash("An error occurred")->error(); return back()->withInput(); } } else { return 'false'; } } public function add_new_county_dynamically(Request $request) { $county = new County; $county->name = $request->name; $county->district_id = $request->district_id; $county->created_by = Auth::user()->id; $county->updated_by = Auth::user()->id; $check = County::where('name', $request->name)->pluck('name')->first(); if (is_null($check)) { try { $county->save(); return $county->id; } catch (QueryException $e) { flash("An error occurred")->error(); return back()->withInput(); } } else { return 'false'; } } public function add_new_subcounty_dynamically(Request $request) { $sub_county = new Subcounty; $sub_county->name = $request->name; $sub_county->county_id = $request->county_id; $sub_county->created_by = Auth::user()->id; $sub_county->updated_by = Auth::user()->id; $check = Subcounty::where('name', $request->name)->pluck('name')->first(); if (is_null($check)) { try { $sub_county->save(); return $sub_county->id; } catch (QueryException $e) { flash("An error occurred")->error(); return back()->withInput(); } } else { return 'false'; } } public function add_new_parish_dynamically(Request $request) { $parish = new Parish; $parish->name = $request->name; $parish->subcounty_id = $request->subcounty_id; $parish->created_by = Auth::user()->id; $parish->updated_by = Auth::user()->id; $check = Parish::where('name', $request->name)->pluck('name')->first(); if (is_null($check)) { try { $parish->save(); return $parish->id; } catch (QueryException $e) { flash("An error occurred")->error(); return back()->withInput(); } } else { return 'false'; } } public function add_new_village_dynamically(Request $request) { $village = new Village; $village->name = $request->name; $village->parish_id = $request->parish_id; $village->created_by = Auth::user()->id; $village->updated_by = Auth::user()->id; $check = Village::where('name', $request->name)->pluck('name')->first(); if (is_null($check)) { try { $village->save(); return $village->id; } catch (QueryException $e) { flash("An error occurred")->error(); return back()->withInput(); } } else { return 'false'; } } public function quick_add_residence(Request $request) { $district_id = $request->district_id; $new_district_name = $request->new_district_name; $county_id = $request->county_id; $new_county_name = $request->new_county_name; $subcounty_id = $request->subcounty_id; $new_subcounty_name = $request->new_subcounty_name; $parish_id = $request->parish_id; $new_parish_name = $request->new_parish_name; $village_id = 0; $new_village_name = $request->new_village_name; if (!isset($district_id) && isset($new_district_name)) { $district = new District; $district->name = $new_district_name; $district->created_by = Auth::user()->id; $district->updated_by = Auth::user()->id; $district->save(); $district_id = $district->id; } if (!isset($county_id) && isset($new_county_name) && is_numeric($district_id)) { $county = new County; $county->name = $new_county_name; $county->district_id = $district_id; $county->created_by = Auth::user()->id; $county->updated_by = Auth::user()->id; $county->save(); $county_id = $county->id; } if (!isset($subcounty_id) && isset($new_subcounty_name) && is_numeric($county_id)) { $sub_county = new Subcounty; $sub_county->name = $new_subcounty_name; $sub_county->county_id = $county_id; $sub_county->created_by = Auth::user()->id; $sub_county->updated_by = Auth::user()->id; $sub_county->save(); $subcounty_id = $sub_county->id; } if (!isset($parish_id) && isset($new_parish_name) && is_numeric($subcounty_id)) { $parish = new Parish; $parish->name = $new_parish_name; $parish->subcounty_id = $subcounty_id; $parish->created_by = Auth::user()->id; $parish->updated_by = Auth::user()->id; $parish->save(); $parish_id = $parish->id; } if (isset($new_village_name)) { $village = new Village; $village->name = $new_village_name; $village->parish_id = is_numeric($parish_id) ? $parish_id : 0; $village->created_by = Auth::user()->id; $village->updated_by = Auth::user()->id; $village->save(); $village_id = $village->id; } return (is_numeric($village_id) ? $village_id : 0) . "," . (is_numeric($parish_id) ? $parish_id : 0) . "," . (is_numeric($subcounty_id) ? $subcounty_id : 0) . "," . (is_numeric($county_id) ? $county_id : 0) . "," . (is_numeric($district_id) ? $district_id : 0); } }