From beb4adfaef87038b26a1c24ea1ac6370856c4dd0 Mon Sep 17 00:00:00 2001 From: Sallu9007 Date: Mon, 27 Jan 2025 01:03:13 +0530 Subject: [PATCH] Build: Seeder for users and responses --- database/seeders/DatabaseSeeder.php | 2 + database/seeders/ResponsesTableSeeder.php | 52 +++++++++++++++++++++++ database/seeders/UsersTableSeeder.php | 34 +++++++++++++++ 3 files changed, 88 insertions(+) create mode 100644 database/seeders/ResponsesTableSeeder.php create mode 100644 database/seeders/UsersTableSeeder.php diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index c8ec646..d0e6836 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -18,6 +18,8 @@ class DatabaseSeeder extends Seeder $this->call([ RoleSeeder::class, DepartmentSeeder::class, + UsersTableSeeder::class, + ResponsesTableSeeder::class, ]); // User::factory()->create([ diff --git a/database/seeders/ResponsesTableSeeder.php b/database/seeders/ResponsesTableSeeder.php new file mode 100644 index 0000000..11ece34 --- /dev/null +++ b/database/seeders/ResponsesTableSeeder.php @@ -0,0 +1,52 @@ +subDays(rand(1, 30))->addHours(rand(0, 23))->addMinutes(rand(0, 59)); + $endDate = (clone $startDate)->addDays(rand(0, 3))->addHours(rand(0, 23))->addMinutes(rand(0, 59)); + $numDays = $startDate->diffInDays($endDate) ?: 1; + + // Create the response record + Response::create([ + 'title' => $titles[array_rand($titles)], // Random title + 'organising_institute' => $organizingInstitutes[array_rand($organizingInstitutes)], // Random organization + 'address' => $addresses[array_rand($addresses)], // Random address + 'department_id' => rand(1, 5), // Random department ID + 'faculty_id' => rand(1, 3), // Random faculty ID + 'start_date' => $startDate->format('Y-m-d H:i:s'), // Start date and time + 'end_date' => $endDate->format('Y-m-d H:i:s'), // End date and time + 'num_days' => $numDays, // Number of days + 'activity_type' => $activityTypes[array_rand($activityTypes)], // Random activity type + 'category' => $categories[array_rand($categories)], // Random category + 'level' => $levels[array_rand($levels)], // Random level + 'proof' => null, // Null for proof + ]); + } + } +} diff --git a/database/seeders/UsersTableSeeder.php b/database/seeders/UsersTableSeeder.php new file mode 100644 index 0000000..2a89e66 --- /dev/null +++ b/database/seeders/UsersTableSeeder.php @@ -0,0 +1,34 @@ + 3, // Default role + 'department_id' => rand(1, 5), // Random department between 1 and 5 + 'name' => 'User ' . $i, // Unique name + 'email' => 'user' . $i . '@example.com', // Unique email + 'email_verified_at' => null, // Email not verified + 'password' => Hash::make('password123'), // Default hashed password + 'remember_token' => null, // Null for remember token + ]); + } + } +}