diff --git a/be/app/Models/Team.php b/be/app/Models/Team.php new file mode 100644 index 0000000..aa26518 --- /dev/null +++ b/be/app/Models/Team.php @@ -0,0 +1,21 @@ +belongsToMany(User::class); + } +} diff --git a/be/app/Models/User.php b/be/app/Models/User.php index 23b4063..a13a05a 100644 --- a/be/app/Models/User.php +++ b/be/app/Models/User.php @@ -2,7 +2,6 @@ namespace App\Models; -// use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; @@ -33,12 +32,9 @@ class User extends Authenticatable 'remember_token', ]; - /** - * The attributes that should be cast. - * - * @var array - */ - protected $casts = [ - 'email_verified_at' => 'datetime', - ]; + public function teams() + { + return $this->belongsToMany(Team::class); + } + } diff --git a/be/database/factories/TeamFactory.php b/be/database/factories/TeamFactory.php new file mode 100644 index 0000000..4ae446c --- /dev/null +++ b/be/database/factories/TeamFactory.php @@ -0,0 +1,24 @@ + + */ +class TeamFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition() + { + return [ + 'name' => fake()->company(), + ]; + } +} diff --git a/be/database/factories/UserFactory.php b/be/database/factories/UserFactory.php index 41f8ae8..8b200c5 100644 --- a/be/database/factories/UserFactory.php +++ b/be/database/factories/UserFactory.php @@ -18,11 +18,15 @@ class UserFactory extends Factory public function definition() { return [ - 'name' => fake()->name(), 'email' => fake()->unique()->safeEmail(), - 'email_verified_at' => now(), 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password 'remember_token' => Str::random(10), + 'firstname' => fake()->firstname(), + 'lastname' => fake()->lastname(), + 'code' => strtoupper(Str::random(3)), + 'work_start' => '9.0', + 'work_end' => '17.0', + ]; } diff --git a/be/database/migrations/2023_01_16_103816_create_teams_table.php b/be/database/migrations/2023_01_16_103816_create_teams_table.php new file mode 100644 index 0000000..c91473e --- /dev/null +++ b/be/database/migrations/2023_01_16_103816_create_teams_table.php @@ -0,0 +1,32 @@ +id(); + $table->string('name'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('teams'); + } +}; diff --git a/be/database/migrations/2023_01_17_071943_update_users_table.php b/be/database/migrations/2023_01_17_071943_update_users_table.php new file mode 100644 index 0000000..6c7e1c2 --- /dev/null +++ b/be/database/migrations/2023_01_17_071943_update_users_table.php @@ -0,0 +1,39 @@ +dropColumn('name'); + $table->dropColumn('email_verified_at'); + }); + + Schema::table('users', function (Blueprint $table) { + $table->string('firstname'); + $table->string('lastname'); + $table->string('code'); + $table->float('work_start', 3, 1); + $table->float('work_end', 3, 1); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('users'); + } +}; diff --git a/be/database/migrations/2023_01_17_073747_reorder_users_table.php b/be/database/migrations/2023_01_17_073747_reorder_users_table.php new file mode 100644 index 0000000..aee1cbd --- /dev/null +++ b/be/database/migrations/2023_01_17_073747_reorder_users_table.php @@ -0,0 +1,30 @@ +foreignIdFor(\App\Models\User::class); + $table->foreignIdFor(\App\Models\Team::class); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('team_user'); + } +}; diff --git a/be/database/seeders/TeamSeeder.php b/be/database/seeders/TeamSeeder.php new file mode 100644 index 0000000..b3d4c23 --- /dev/null +++ b/be/database/seeders/TeamSeeder.php @@ -0,0 +1,25 @@ +count(25) + ->hasUsers(5) + ->create(); + } +} diff --git a/be/database/seeders/UserSeeder.php b/be/database/seeders/UserSeeder.php new file mode 100644 index 0000000..b06c298 --- /dev/null +++ b/be/database/seeders/UserSeeder.php @@ -0,0 +1,22 @@ +count(200) + ->create(); + } +}