faker->randomElement(PriceRequestStatus::cases()); return [ 'user_id' => User::factory(), 'module' => $this->faker->randomElement(['product', 'perfume', 'bottle']), 'status' => $status, 'finalized_at' => $status === PriceRequestStatus::PENDING ? null : $this->faker->dateTime(), ]; } public function pending(): Factory { return $this->state(fn () => [ 'status' => PriceRequestStatus::PENDING, 'finalized_at' => null, ]); } public function approved(): Factory { return $this->state(fn () => [ 'status' => PriceRequestStatus::APPROVED, 'finalized_at' => $this->faker->dateTime(), ]); } public function rejected(): Factory { return $this->state(fn () => [ 'status' => PriceRequestStatus::REJECTED, 'finalized_at' => $this->faker->dateTime(), ]); } }