54 lines
1.5 KiB
PHP
54 lines
1.5 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace Modules\Restaurant\Database\Seeders;
|
||
|
|
|
||
|
|
use Illuminate\Database\Seeder;
|
||
|
|
use Modules\Restaurant\Models\FoodAvailability;
|
||
|
|
use Modules\Restaurant\Models\FoodAvailabilityTime;
|
||
|
|
|
||
|
|
class FoodAvailabilityTableSeeder extends Seeder
|
||
|
|
{
|
||
|
|
/**
|
||
|
|
* Run the database seeds.
|
||
|
|
*/
|
||
|
|
public function run(): void
|
||
|
|
{
|
||
|
|
$restaurantId = 1; // demo
|
||
|
|
$foodItemId = 1; // demo
|
||
|
|
$days = [
|
||
|
|
'Sunday',
|
||
|
|
'Monday',
|
||
|
|
'Tuesday',
|
||
|
|
'Wednesday',
|
||
|
|
'Thursday',
|
||
|
|
'Friday',
|
||
|
|
'Saturday',
|
||
|
|
];
|
||
|
|
|
||
|
|
$defaultTimeSlots = [
|
||
|
|
['open_time' => '09:00:00', 'close_time' => '12:00:00'],
|
||
|
|
['open_time' => '13:00:00', 'close_time' => '17:00:00'],
|
||
|
|
['open_time' => '18:00:00', 'close_time' => '22:00:00'],
|
||
|
|
];
|
||
|
|
|
||
|
|
foreach ($days as $day) {
|
||
|
|
// Create availability per day
|
||
|
|
$availability = FoodAvailability::create([
|
||
|
|
'restaurant_id' => $restaurantId,
|
||
|
|
'food_item_id' => $foodItemId,
|
||
|
|
'day' => $day,
|
||
|
|
'is_available' => true,
|
||
|
|
]);
|
||
|
|
|
||
|
|
// Create time slots
|
||
|
|
foreach ($defaultTimeSlots as $slot) {
|
||
|
|
FoodAvailabilityTime::create([
|
||
|
|
'food_availability_id' => $availability->id,
|
||
|
|
'open_time' => $slot['open_time'],
|
||
|
|
'close_time' => $slot['close_time'],
|
||
|
|
]);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|