loadDefinition(UserProducerDefinition::class); } public function filterByUser(User $user): self { $this->andWhere(['id_user' => $user->id]); return $this; } public function filterByActive(bool $active): self { $this->andWhere(['active' => $active]); return $this; } public function filterByBookmark(bool $bookmark): self { $this->andWhere(['bookmark' => $bookmark]); return $this; } public function filterHasNegativeOrPositiveCredit(): self { $this->andWhere('user_producer.credit IS NOT NULL AND user_producer.credit != 0'); return $this; } }