b2in/database/seeders/SettingsSeeder.php
2026-02-20 17:57:50 +01:00

67 lines
2.1 KiB
PHP

<?php
namespace Database\Seeders;
use App\Models\Setting;
use Illuminate\Database\Seeder;
class SettingsSeeder extends Seeder
{
public function run(): void
{
$settings = [
// Ticket-Einstellungen
[
'group' => 'tickets',
'key' => 'validity_days',
'value' => '30',
'type' => 'integer',
'description' => 'Gültigkeitsdauer eines Tickets in Tagen',
],
[
'group' => 'tickets',
'key' => 'receipt_upload_deadline_days',
'value' => '30',
'type' => 'integer',
'description' => 'Frist für den Beleg-Upload nach Ticket-Einlösung in Tagen',
],
[
'group' => 'tickets',
'key' => 'max_per_merchant_per_customer',
'value' => '3',
'type' => 'integer',
'description' => 'Max. Tickets pro Händler pro Kunde',
],
[
'group' => 'tickets',
'key' => 'max_merchants_per_customer',
'value' => '4',
'type' => 'integer',
'description' => 'Max. Händler pro Kunde pro Zeitraum',
],
// Provisions-Einstellungen
[
'group' => 'commissions',
'key' => 'default_broker_rate',
'value' => '0',
'type' => 'integer',
'description' => 'Standard-Makler-Provision in Prozent (individuell je Partner)',
],
[
'group' => 'commissions',
'key' => 'default_cashback_rate',
'value' => '0',
'type' => 'integer',
'description' => 'Standard-Kunden-Cashback in Prozent (individuell je Partner)',
],
];
foreach ($settings as $setting) {
Setting::query()->updateOrCreate(
['group' => $setting['group'], 'key' => $setting['key']],
$setting
);
}
}
}