add package name filter to label index

This commit is contained in:
ehsan.moradi
2025-05-06 11:31:05 +03:30
parent bcba3b7a8d
commit 0bd017360c
+16
View File
@@ -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}%");
});
}
}