29 lines
798 B
PHP
29 lines
798 B
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use App\Enums\PriceType;
|
|
use App\Models\ProductPrice;
|
|
use App\Models\ProductVariant;
|
|
use Illuminate\Database\Seeder;
|
|
|
|
class ProductPriceSeeder extends Seeder
|
|
{
|
|
public function run(): void
|
|
{
|
|
ProductVariant::query()
|
|
->whereDoesntHave('prices')
|
|
->each(function (ProductVariant $variant): void {
|
|
$basePrice = fake()->numberBetween(50_000, 250_000);
|
|
|
|
foreach (PriceType::cases() as $type) {
|
|
ProductPrice::factory()->create([
|
|
'variant_id' => $variant->id,
|
|
'type' => $type->value,
|
|
'price' => $basePrice + fake()->numberBetween(0, 50_000),
|
|
]);
|
|
}
|
|
});
|
|
}
|
|
}
|