Some checks failed
tests / ci (pull_request) Has been cancelled
- Updated LecturerController to load multiple departments for lecturers. - Modified LecturerRequest to accept an array of department IDs instead of a single department ID. - Changed Department model to establish a many-to-many relationship with Lecturer. - Adjusted Lecturer model to reflect the new many-to-many relationship with Department. - Updated LecturerService to handle multiple departments during creation and updates. - Created LecturerFactory and StudentFactory for generating test data. - Added a migration for the new lecturer_department pivot table. - Refactored seeder classes to accommodate the new structure for lecturers and departments. - Enhanced frontend components for creating and editing lecturers to support multiple department selection.
28 lines
708 B
PHP
28 lines
708 B
PHP
<?php
|
|
|
|
namespace Database\Factories;
|
|
|
|
use App\Enums\StudentStatus;
|
|
use App\Models\Department;
|
|
use App\Models\Student;
|
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
|
|
|
/**
|
|
* @extends Factory<Student>
|
|
*/
|
|
class StudentFactory extends Factory
|
|
{
|
|
protected $model = Student::class;
|
|
|
|
public function definition(): array
|
|
{
|
|
return [
|
|
'student_number' => fake()->unique()->numerify('########'),
|
|
'department_id' => fn () => Department::query()->inRandomOrder()->value('id'),
|
|
'enrollment_year' => fake()->numberBetween(now()->year - 4, now()->year),
|
|
'academic_advisor_id' => null,
|
|
'status' => StudentStatus::Active,
|
|
];
|
|
}
|
|
}
|