diff options
| author | Sam Light <samlight1994@gmail.com> | 2026-02-10 00:21:10 +0000 |
|---|---|---|
| committer | Sam Light <samlight1994@gmail.com> | 2026-02-10 00:21:10 +0000 |
| commit | ad1c06ee1819b3512e2443d5cbe06199a0ae9bad (patch) | |
| tree | b873596f86173c70c29decc301397d716ad7ca8d /workbench/database/seeders/DatabaseSeeder.php | |
| parent | 47c3c4b4e772c30dac12169300e20346fa47b71f (diff) | |
Created order tables and models
Diffstat (limited to 'workbench/database/seeders/DatabaseSeeder.php')
| -rw-r--r-- | workbench/database/seeders/DatabaseSeeder.php | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/workbench/database/seeders/DatabaseSeeder.php b/workbench/database/seeders/DatabaseSeeder.php index 9b7e84a..5dddc62 100644 --- a/workbench/database/seeders/DatabaseSeeder.php +++ b/workbench/database/seeders/DatabaseSeeder.php @@ -4,6 +4,7 @@ namespace Workbench\Database\Seeders; use Illuminate\Database\Seeder; use Workbench\App\Models\Category; +use Workbench\App\Models\Order; use Workbench\App\Models\Product; class DatabaseSeeder extends Seeder @@ -15,9 +16,21 @@ class DatabaseSeeder extends Seeder { $categories = Category::factory()->count(10)->create(); - Product::factory() + $products = Product::factory() ->state(fn () => ['category_id' => $categories->random()->id]) ->count(104) ->create(); + + Order::factory()->count(50)->create()->each(function ($order) use ($products) { + $orderProducts = $products->random(rand(1, 5)); + foreach ($orderProducts as $product) { + $quantity = rand(1, 5); + $order->products()->attach($product->id, [ + 'quantity' => $quantity, + 'price' => $product->price, + ]); + } + $order->update(['total' => $order->products->sum(fn ($p) => $p->pivot->quantity * $p->pivot->price)]); + }); } } |
