LMIV-SNACKAUTOMAT/database/seeders/AssignExistingDataToTenantsSeeder.php

37 lines
1.3 KiB
PHP

<?php
namespace Database\Seeders;
use App\Models\Tenant;
use App\Models\VendingMachine;
use App\Models\Product;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
class AssignExistingDataToTenantsSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
// Hole den ersten Mandanten (Bürogebäude A)
$tenant = Tenant::where('slug', 'buerogebaeude-a')->first();
if (!$tenant) {
$this->command->error('Mandant "Bürogebäude A" nicht gefunden. Bitte zuerst TenantSeeder ausführen.');
return;
}
// Weise alle Automaten ohne tenant_id dem ersten Mandanten zu
$machinesUpdated = VendingMachine::whereNull('tenant_id')->update(['tenant_id' => $tenant->id]);
$this->command->info("$machinesUpdated Automaten wurden Mandant '{$tenant->name}' zugewiesen.");
// Weise alle Produkte ohne tenant_id dem ersten Mandanten zu
$productsUpdated = Product::whereNull('tenant_id')->update(['tenant_id' => $tenant->id]);
$this->command->info("$productsUpdated Produkte wurden Mandant '{$tenant->name}' zugewiesen.");
$this->command->info('Alle existierenden Daten wurden erfolgreich einem Mandanten zugewiesen.');
}
}