@@ -66,26 +66,34 @@ class $CLASS$ extends Model
66
66
public function scopeFilter(Builder $query, array $filters = []): Builder
67
67
{
68
68
return $query
69
- ->when(!empty($filters['search']),
70
- fn(Builder $query) => $query->whereAny($this->searchable, 'like', "%{$filters['search']}%")
69
+ ->when(!empty($filters['search']), function(Builder $query) use($filters) {
70
+ return $query->where(function(Builder $query) use($filters) {
71
+ return $query->whereAny($this->searchable, 'like', "%{$filters['search']}%")
72
+ })
71
73
})->when(
72
74
!empty($filters['created_at_from_date']),
73
- fn(Builder $query) => $query->whereDate($this->getTable().'.created_at', '>=', $filters['created_at_from_date'])
75
+ fn(Builder $query)
76
+ => $query->whereDate($this->getTable().'.created_at', '>=', $filters['created_at_from_date'])
74
77
)->when(
75
78
!empty($filters['created_at_to_date']),
76
- fn(Builder $query) => $query->whereDate($this->getTable().'.created_at', '<=', $filters['created_at_to_date'])
79
+ fn(Builder $query)
80
+ => $query->whereDate($this->getTable().'.created_at', '<=', $filters['created_at_to_date'])
77
81
)->when(
78
82
!empty($filters['updated_at_from_date']),
79
- fn(Builder $query) => $query->whereDate($this->getTable().'.updated_at', '>=', $filters['updated_at_from_date'])
83
+ fn(Builder $query)
84
+ => $query->whereDate($this->getTable().'.updated_at', '>=', $filters['updated_at_from_date'])
80
85
)->when(
81
86
!empty($filters['updated_at_to_date']),
82
- fn(Builder $query) => $query->whereDate($this->getTable().'.updated_at', '<=', $filters['updated_at_to_date'])
87
+ fn(Builder $query)
88
+ => $query->whereDate($this->getTable().'.updated_at', '<=', $filters['updated_at_to_date'])
83
89
)->when(
84
90
!empty($filters['limit']),
85
- fn(Builder $query) => $query->limit($filters['limit'])
91
+ fn(Builder $query)
92
+ => $query->limit($filters['limit'])
86
93
)->when(
87
94
!empty($filters['columns']),
88
- fn(Builder $query) => $query->select($filters['columns'])
95
+ fn(Builder $query)
96
+ => $query->select($filters['columns'])
89
97
);
90
98
}
91
99
}
0 commit comments