*/ class ProjectFactory extends Factory { protected $model = Project::class; public function definition(): array { return [ 'id' => (string) Str::uuid(), 'code' => strtoupper(fake()->unique()->bothify('PRJ-####')), 'title' => fake()->sentence(3), 'status_id' => ProjectStatus::factory(), 'type_id' => ProjectType::factory(), 'approved_estimate' => null, 'forecasted_effort' => null, ]; } public function approved(): static { return $this->state(fn (array $attributes) => [ 'approved_estimate' => fake()->randomFloat(2, 5000, 50000), 'forecasted_effort' => [ 'frontend' => fake()->numberBetween(40, 200), 'backend' => fake()->numberBetween(60, 300), 'qa' => fake()->numberBetween(20, 100), ], ]); } }