migrate to gtea from bistbucket

This commit is contained in:
2026-03-15 17:08:23 +07:00
commit 129ca2260c
3716 changed files with 566316 additions and 0 deletions

View File

@@ -0,0 +1,162 @@
<?php
namespace Modules\RestaurantDelivery\Database\Seeders;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Str;
class RestaurantZonePricingRuleSeeder extends Seeder
{
public function run(): void
{
$rules = [
// =========================
// Dhanmondi Zone (Zone ID 1)
// =========================
[
'restaurant_id' => 1,
'zone_id' => 1,
'uuid' => Str::uuid(),
'name' => 'Dhanmondi Standard Pricing',
'priority' => 1,
'is_active' => true,
'base_fare' => 30,
'minimum_fare' => 30,
'per_km_charge' => 8,
'free_distance' => 1,
'max_distance' => 8,
'surge_enabled' => false,
'surge_multiplier' => 1.00,
'conditions' => null,
'valid_from' => null,
'valid_until' => null,
'valid_days' => null,
],
[
'restaurant_id' => 1,
'zone_id' => 1,
'uuid' => Str::uuid(),
'name' => 'Dhanmondi Peak Hour Surge',
'priority' => 2,
'is_active' => true,
'base_fare' => 35,
'minimum_fare' => 40,
'per_km_charge' => 9,
'free_distance' => 0,
'max_distance' => null,
'surge_enabled' => true,
'surge_multiplier' => 1.30,
'conditions' => json_encode([
'type' => 'peak_hour',
'note' => 'Evening rush',
]),
'valid_from' => '18:00:00',
'valid_until' => '22:00:00',
'valid_days' => 62, // MonThu, Sun
],
// ======================
// Gulshan Zone (Zone ID 2)
// ======================
[
'restaurant_id' => 1,
'zone_id' => 2,
'uuid' => Str::uuid(),
'name' => 'Gulshan Standard Pricing',
'priority' => 1,
'is_active' => true,
'base_fare' => 40,
'minimum_fare' => 50,
'per_km_charge' => 12,
'free_distance' => 0,
'max_distance' => 10,
'surge_enabled' => false,
'surge_multiplier' => 1.00,
'conditions' => null,
'valid_from' => null,
'valid_until' => null,
'valid_days' => null,
],
[
'restaurant_id' => 1,
'zone_id' => 2,
'uuid' => Str::uuid(),
'name' => 'Gulshan Weekend Surge',
'priority' => 2,
'is_active' => true,
'base_fare' => 45,
'minimum_fare' => 60,
'per_km_charge' => 14,
'free_distance' => 0,
'max_distance' => null,
'surge_enabled' => true,
'surge_multiplier' => 1.50,
'conditions' => json_encode([
'type' => 'weekend',
'note' => 'Friday & Saturday',
]),
'valid_from' => '12:00:00',
'valid_until' => '23:59:59',
'valid_days' => 96, // Fri + Sat
],
// ======================
// Mirpur Zone (Zone ID 3)
// ======================
[
'restaurant_id' => 1,
'zone_id' => 3,
'uuid' => Str::uuid(),
'name' => 'Mirpur Budget Pricing',
'priority' => 1,
'is_active' => true,
'base_fare' => 25,
'minimum_fare' => 30,
'per_km_charge' => 7,
'free_distance' => 1.5,
'max_distance' => 7,
'surge_enabled' => false,
'surge_multiplier' => 1.00,
'conditions' => null,
'valid_from' => null,
'valid_until' => null,
'valid_days' => null,
],
// ======================
// Uttara Zone (Zone ID 4)
// ======================
[
'restaurant_id' => 1,
'zone_id' => 4,
'uuid' => Str::uuid(),
'name' => 'Uttara Long Distance Pricing',
'priority' => 1,
'is_active' => true,
'base_fare' => 35,
'minimum_fare' => 40,
'per_km_charge' => 9,
'free_distance' => 1,
'max_distance' => 12,
'surge_enabled' => false,
'surge_multiplier' => 1.00,
'conditions' => null,
'valid_from' => null,
'valid_until' => null,
'valid_days' => null,
],
];
foreach ($rules as $rule) {
DB::table('restaurant_zone_pricing_rules')->insert(array_merge(
$rule,
[
'created_at' => now(),
'updated_at' => now(),
]
));
}
}
}