62 lines
1.8 KiB
PHP
62 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use App\Models\ClientTier;
|
|
use Illuminate\Database\Seeder;
|
|
|
|
class ClientTierSeeder extends Seeder
|
|
{
|
|
/**
|
|
* Run the database seeds.
|
|
*/
|
|
public function run(): void
|
|
{
|
|
$tiers = [
|
|
[
|
|
'tier_name' => 'Bronce',
|
|
'min_purchase_amount' => 0.00,
|
|
'max_purchase_amount' => 10000.00,
|
|
'discount_percentage' => 0.00,
|
|
'is_active' => true,
|
|
],
|
|
[
|
|
'tier_name' => 'Plata',
|
|
'min_purchase_amount' => 15000.00,
|
|
'max_purchase_amount' => 20000.00,
|
|
'discount_percentage' => 5.00,
|
|
'is_active' => true,
|
|
],
|
|
[
|
|
'tier_name' => 'Oro',
|
|
'min_purchase_amount' => 25000.00,
|
|
'max_purchase_amount' => 40000.00,
|
|
'discount_percentage' => 10.00,
|
|
'is_active' => true,
|
|
],
|
|
[
|
|
'tier_name' => 'Platino',
|
|
'min_purchase_amount' => 60000.00,
|
|
'max_purchase_amount' => null, // Sin límite superior
|
|
'discount_percentage' => 15.00,
|
|
'is_active' => true,
|
|
],
|
|
];
|
|
|
|
foreach ($tiers as $tier) {
|
|
ClientTier::create($tier);
|
|
}
|
|
|
|
$this->command->info('Client tiers creados exitosamente');
|
|
$this->command->table(
|
|
['Tier', 'Desde', 'Hasta', 'Descuento'],
|
|
collect($tiers)->map(fn($t) => [
|
|
$t['tier_name'],
|
|
'$' . number_format($t['min_purchase_amount'], 2),
|
|
$t['max_purchase_amount'] ? '$' . number_format($t['max_purchase_amount'], 2) : 'Sin límite',
|
|
$t['discount_percentage'] . '%',
|
|
])
|
|
);
|
|
}
|
|
}
|