refactor(outlet): make landmark field nullable in outlets table and update seeder data
This commit is contained in:
parent
3e0ff70eea
commit
9f9089ebdd
@ -18,7 +18,7 @@ public function up(): void
|
||||
$table->string('slug', 120);
|
||||
$table->string('phone_number', 20);
|
||||
$table->text('address');
|
||||
$table->string('landmark', 30);
|
||||
$table->string('landmark', 30)->nullable();
|
||||
$table->text('maps_url')->nullable();
|
||||
$table->enum('status', [OutletStatus::values()])->default(OutletStatus::OPERATIONAL)->comment(OutletStatus::comment());
|
||||
$table->date('opened_date');
|
||||
|
||||
@ -12,42 +12,54 @@ class OutletSeeder extends Seeder
|
||||
{
|
||||
public function run(): void
|
||||
{
|
||||
$outlet1 = Outlet::create([
|
||||
'name' => 'Outlet 1',
|
||||
'slug' => 'outlet-1',
|
||||
'phone_number' => '0821 2149 5806',
|
||||
'address' => 'Jl. Taman Pahlawan No.41, Nagri Kaler, Kec. Purwakarta, Kabupaten Purwakarta, Jawa Barat 41119',
|
||||
'landmark' => 'Samping Gacoan',
|
||||
'status' => OutletStatus::OPERATIONAL,
|
||||
'opened_date' => now()->toDateString(),
|
||||
]);
|
||||
$outlets = [
|
||||
[
|
||||
'name' => 'Toko 1',
|
||||
'slug' => 'toko-1',
|
||||
'phone_number' => '085135557595',
|
||||
'address' => 'Jl. Taman Pahlawan No.41, Nagri Kaler, Kec. Purwakarta, Kabupaten Purwakarta, Jawa Barat 41119',
|
||||
'landmark' => 'Samping Gacoan',
|
||||
],
|
||||
[
|
||||
'name' => 'Outlet 2',
|
||||
'slug' => 'outlet-2',
|
||||
'phone_number' => '085135557595',
|
||||
'address' => 'Jl. Ipik Gandamanah, Kabupaten Purwakarta, Jawa Barat 41117',
|
||||
'landmark' => 'Samping Global Bakery',
|
||||
],
|
||||
[
|
||||
'name' => 'Outlet 3',
|
||||
'slug' => 'outlet-3',
|
||||
'phone_number' => '085135557595',
|
||||
'address' => 'Pabuaran, Subang Regency, West Java',
|
||||
'landmark' => null,
|
||||
],
|
||||
[
|
||||
'name' => 'Outlet 4',
|
||||
'slug' => 'outlet-4',
|
||||
'phone_number' => '085135557595',
|
||||
'address' => 'Jl. Raya Citeko, Pamoyanan, Kec. Plered, Kabupaten Purwakarta, Jawa Barat',
|
||||
'landmark' => null,
|
||||
],
|
||||
];
|
||||
|
||||
foreach (Day::cases() as $day) {
|
||||
OpeningHour::insert([
|
||||
'outlet_id' => $outlet1->id,
|
||||
foreach ($outlets as $data) {
|
||||
$outlet = Outlet::create([
|
||||
...$data,
|
||||
'status' => OutletStatus::OPERATIONAL,
|
||||
'opened_date' => now()->toDateString(),
|
||||
]);
|
||||
|
||||
$hours = collect(Day::cases())->map(fn($day) => [
|
||||
'outlet_id' => $outlet->id,
|
||||
'day' => $day->value,
|
||||
'open_time' => '09:00:00',
|
||||
'close_time' => '21:00:00',
|
||||
]);
|
||||
}
|
||||
])->toArray();
|
||||
|
||||
$outlet2 = Outlet::create([
|
||||
'name' => 'Outlet 2',
|
||||
'slug' => 'outlet-2',
|
||||
'phone_number' => '0821 2149 5806',
|
||||
'address' => 'Toko Yadi Parfum, Jl. Ipik Gandamanah, Kabupaten Purwakarta, Jawa Barat 41117',
|
||||
'landmark' => 'Samping Global Bakeri',
|
||||
'status' => OutletStatus::OPERATIONAL,
|
||||
'opened_date' => now()->toDateString(),
|
||||
]);
|
||||
$outlet->facilities()->create(['name' => 'Parkir']);
|
||||
|
||||
foreach (Day::cases() as $day) {
|
||||
OpeningHour::insert([
|
||||
'outlet_id' => $outlet2->id,
|
||||
'day' => $day->value,
|
||||
'open_time' => '09:00:00',
|
||||
'close_time' => '21:00:00',
|
||||
]);
|
||||
OpeningHour::insert($hours);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -24,7 +24,6 @@ public function run(): void
|
||||
'limit_per_user' => 2,
|
||||
'start_date' => now()->subDays(5),
|
||||
'end_date' => now()->addMonth(),
|
||||
'is_active' => IsActive::ACTIVE,
|
||||
],
|
||||
[
|
||||
'name' => 'Diskon 20%',
|
||||
@ -37,7 +36,6 @@ public function run(): void
|
||||
'limit_per_user' => 1,
|
||||
'start_date' => now(),
|
||||
'end_date' => now()->addDays(30),
|
||||
'is_active' => IsActive::ACTIVE,
|
||||
],
|
||||
[
|
||||
'name' => 'Potongan Rp25K',
|
||||
@ -50,7 +48,6 @@ public function run(): void
|
||||
'limit_per_user' => 3,
|
||||
'start_date' => now(),
|
||||
'end_date' => now()->addDays(15),
|
||||
'is_active' => IsActive::ACTIVE,
|
||||
],
|
||||
[
|
||||
'name' => 'Potongan Rp50K',
|
||||
@ -63,7 +60,6 @@ public function run(): void
|
||||
'limit_per_user' => 1,
|
||||
'start_date' => now()->addDays(3),
|
||||
'end_date' => now()->addDays(60),
|
||||
'is_active' => IsActive::ACTIVE,
|
||||
],
|
||||
[
|
||||
'name' => 'Gratis Ongkir',
|
||||
@ -76,7 +72,6 @@ public function run(): void
|
||||
'limit_per_user' => 5,
|
||||
'start_date' => now(),
|
||||
'end_date' => now()->addDays(90),
|
||||
'is_active' => IsActive::ACTIVE,
|
||||
],
|
||||
[
|
||||
'name' => 'Flash Sale 30%',
|
||||
@ -89,7 +84,6 @@ public function run(): void
|
||||
'limit_per_user' => 1,
|
||||
'start_date' => now()->subDay(),
|
||||
'end_date' => now()->addDay(),
|
||||
'is_active' => IsActive::ACTIVE,
|
||||
],
|
||||
[
|
||||
'name' => 'Spesial Member',
|
||||
@ -102,7 +96,6 @@ public function run(): void
|
||||
'limit_per_user' => null,
|
||||
'start_date' => now(),
|
||||
'end_date' => null,
|
||||
'is_active' => IsActive::ACTIVE,
|
||||
],
|
||||
];
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user