File: /var/www/html/sarvodayahospital/app/Http/Controllers/TreatmentController.php
<?php
namespace App\Http\Controllers;
use App\Models\CMSPage;
use App\Models\Doctor;
use App\Models\Speciality;
use App\Models\Treatment;
class TreatmentController extends Controller
{
public function index()
{
$seo = [];
$search = request('search');
$treatments = Treatment::query()
->when($search, function ($query) use ($search) {
$query->whereHas('speciality', function ($q) use ($search) {
$q->where('Slug', $search);
});
})
->get();
$specialitiesDropdown = Speciality::whereHas('treatments')->get();
$cmsPage = CMSPage::query()
->where('Slug', request()->path())
->firstOrFail();
if ($cmsPage) {
$seo = $cmsPage->seoComponent()->first();
}
return view('pages.treatment', compact('treatments', 'specialitiesDropdown', 'seo'));
}
public function show($slug)
{
$seo = [];
$sp = [];
$treatment = Treatment::query()
->with('faqs')
->with('hospitals')
->where('Slug', $slug)
->firstOrFail();
$spo = Speciality::whereHas('treatments', function ($q) use ($slug) {
$q->where('Slug', $slug);
})->with('ss')->get();
foreach ($spo as $p) {
$sp[] = $p->Slug;
foreach ($p->ss as $s) {
$sp[] = $s->Slug;
}
}
$doctors = Doctor::WhereHas('specialities', function ($q) use ($sp) {
$q->WhereIn('Slug', $sp);
})->orderByRaw('ISNULL(Weight), Weight ASC')->orderBy('Surname', 'asc')->get();
if ($treatment) {
$seo = $treatment->seoComponent()->first();
}
return view('pages.single-treatment', compact('treatment', 'seo', 'doctors'));
}
}