feat: Add CustomerSeeder to DatabaseSeeder for customer data initialization
This commit is contained in:
parent
d8038b59b9
commit
7c15781d5d
23
database/factories/CustomerFactory.php
Normal file
23
database/factories/CustomerFactory.php
Normal file
@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
namespace Database\Factories;
|
||||
|
||||
use App\Models\Customer;
|
||||
use Illuminate\Database\Eloquent\Factories\Factory;
|
||||
|
||||
/**
|
||||
* @extends \Illuminate\Database\Eloquent\Factories.Factory<\App\Models\Customer>
|
||||
*/
|
||||
class CustomerFactory extends Factory
|
||||
{
|
||||
protected $model = Customer::class;
|
||||
|
||||
public function definition(): array
|
||||
{
|
||||
return [
|
||||
'name' => $this->faker->name(),
|
||||
'phone_number' => $this->faker->unique()->numerify('08##########'),
|
||||
'address' => $this->faker->optional()->address(),
|
||||
];
|
||||
}
|
||||
}
|
||||
47
database/seeders/CustomerSeeder.php
Normal file
47
database/seeders/CustomerSeeder.php
Normal file
@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
namespace Database\Seeders;
|
||||
|
||||
use App\Models\Customer;
|
||||
use Illuminate\Database\Seeder;
|
||||
|
||||
class CustomerSeeder extends Seeder
|
||||
{
|
||||
/**
|
||||
* Run the database seeds.
|
||||
*/
|
||||
public function run(): void
|
||||
{
|
||||
// Beberapa pelanggan default
|
||||
$defaults = [
|
||||
[
|
||||
'name' => 'John Doe',
|
||||
'phone_number' => '081234567890',
|
||||
'address' => 'Jl. Raya No. 123, Jakarta Selatan',
|
||||
],
|
||||
[
|
||||
'name' => 'Jane Smith',
|
||||
'phone_number' => '082233445566',
|
||||
'address' => 'Jl. Merdeka No. 45, Bandung',
|
||||
],
|
||||
[
|
||||
'name' => 'Toko Sembako Makmur',
|
||||
'phone_number' => '081298765432',
|
||||
'address' => 'Jl. Pasar Baru No. 10, Surabaya',
|
||||
],
|
||||
];
|
||||
|
||||
foreach ($defaults as $data) {
|
||||
Customer::firstOrCreate(
|
||||
['phone_number' => $data['phone_number']],
|
||||
[
|
||||
'name' => $data['name'],
|
||||
'address' => $data['address'],
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
// Tambah beberapa pelanggan random
|
||||
Customer::factory()->count(10)->create();
|
||||
}
|
||||
}
|
||||
@ -22,6 +22,7 @@ public function run(): void
|
||||
FeedSeeder::class,
|
||||
FeedPurchaseSeeder::class,
|
||||
EggCollectionSeeder::class,
|
||||
CustomerSeeder::class,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user