diff --git a/app/Repositories/LabelRepository.php b/app/Repositories/LabelRepository.php index 22f58313..dac2da31 100644 --- a/app/Repositories/LabelRepository.php +++ b/app/Repositories/LabelRepository.php @@ -12,6 +12,9 @@ class LabelRepository implements LabelRepositoryInterface return Label::when($request->has('sterilizer_id') && $request->sterilizer_id != '', function ($query) use ($request) { $query->where('sterilizer_id', $request->sterilizer_id); }) + ->when($request->has('package_name') && $request->package_name != '', function ($query) use ($request) { + $this->applyPackageNameFilter($query,$request); + }) ->when($request->has('cycle_number') && $request->cycle_number != '', function ($query) use ($request) { $query->where('cycle_number', $request->cycle_number); }) @@ -49,6 +52,9 @@ class LabelRepository implements LabelRepositoryInterface return Label::when($request->has('sterilizer_id') && $request->sterilizer_id != '', function ($query) use ($request) { $query->where('sterilizer_id', $request->sterilizer_id); }) + ->when($request->has('package_name') && $request->package_name != '', function ($query) use ($request) { + $this->applyPackageNameFilter($query,$request); + }) ->when($request->has('cycle_number') && $request->cycle_number != '', function ($query) use ($request) { $query->where('cycle_number', $request->cycle_number); }) @@ -86,6 +92,9 @@ class LabelRepository implements LabelRepositoryInterface return Label::when($request->has('sterilizer_id') && $request->sterilizer_id != '', function ($query) use ($request) { $query->where('sterilizer_id', $request->sterilizer_id); }) + ->when($request->has('package_name') && $request->package_name != '', function ($query) use ($request) { + $this->applyPackageNameFilter($query,$request); + }) ->when($request->has('cycle_number') && $request->cycle_number != '', function ($query) use ($request) { $query->where('cycle_number', $request->cycle_number); }) @@ -114,4 +123,11 @@ class LabelRepository implements LabelRepositoryInterface ->orderByDesc('id') ->paginate(10); } + + public function applyPackageNameFilter($q,$request) + { + return $q->whereHas('package', function ($query) use ($request) { + $query->where('packages.name', 'like', "%{$request->package_name}%"); + }); + } }