parfum/database/seeders/DatabaseSeeder.php
Yoga Pangestu 3a05ee2617 feat: implement comprehensive migration commands for legacy data
- Added migration commands for users, employees, outlets, categories, products, bottles, and perfumes to transfer data from the old database to the new structure.
- Each command includes options for forced migration and recreation of existing records.
- Implemented progress feedback and error handling during migration processes.
- Updated database configuration to include connection settings for the old database.
- Enhanced DatabaseSeeder to automatically trigger the migration process after seeding essential data.
2026-01-10 19:04:31 +07:00

57 lines
1.7 KiB
PHP

<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
public function run(): void
{
if (app()->environment(['production'])) {
$this->call([
RolePermissionSeeder::class,
WarehouseSeeder::class,
TierSeeder::class,
]);
$this->command->call('migrate:all', ['--force' => true, '--skip-confirm' => true]);
$this->command->newLine();
} elseif (app()->environment(['staging'])) {
$this->call([
RolePermissionSeeder::class,
WarehouseSeeder::class,
OutletSeeder::class,
UserSeeder::class,
TierSeeder::class,
BrandSeeder::class,
CategorySeeder::class,
PerfumeSeeder::class,
ProductSeeder::class,
BottleSeeder::class,
FormulaSeeder::class,
]);
} else {
$this->call([
RolePermissionSeeder::class,
OutletSeeder::class,
WarehouseSeeder::class,
UserSeeder::class,
TierSeeder::class,
VoucherSeeder::class,
CategorySeeder::class,
BrandSeeder::class,
CustomerSeeder::class,
PerfumeSeeder::class,
ProductSeeder::class,
BottleSeeder::class,
FormulaSeeder::class,
FaqSeeder::class,
PerfumeFeatureSeeder::class,
ChooseUsSeeder::class,
TestimonialSeeder::class,
]);
}
}
}