when($filters['search'] ?? false, function ($query, $search) { return $query ->where('service_code', 'like', "%" . $search . "%") ->orWhere('code', 'like', "%" . $search . "%") ->orWhereHas('plan', function ($query) use ($search) { $query->where('code', 'like', "%" . $search . "%"); }); }); } // public function benefit() // { // return $this->belongsTo(Benefit::class, 'benefit_code', 'code'); // } public function plans() { return $this->belongsToMany(Plan::class, 'corporate_benefits', 'benefit_id', 'id') ->withTimestamps() ->withPivot([ // TODO corporate_benefits pivot ]); } }