





















const db = require('../models');
const Users = db.users;






const Languages = db.languages;

const GdprConsents = db.gdpr_consents;

const GdprRequests = db.gdpr_requests;

const AuditLogs = db.audit_logs;

const Hotels = db.hotels;

const RoomTypes = db.room_types;

const Rooms = db.rooms;

const Amenities = db.amenities;

const RoomFeatures = db.room_features;

const RatePlans = db.rate_plans;

const SeasonalRates = db.seasonal_rates;

const InventoryBlocks = db.inventory_blocks;

const Guests = db.guests;

const Bookings = db.bookings;

const BookingGuests = db.booking_guests;

const Payments = db.payments;

const Invoices = db.invoices;

const Messages = db.messages;

const PromoCodes = db.promo_codes;

const BookingDiscounts = db.booking_discounts;

const HousekeepingTasks = db.housekeeping_tasks;

const ServiceRequests = db.service_requests;

const ContentPages = db.content_pages;

const Settings = db.settings;







const LanguagesData = [
    
    {
    
        
        
            
                "name": "English",
            
        
    
        
        
            
                "locale": "en-US",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                "name": "Ukrainian",
            
        
    
        
        
            
                "locale": "uk-UA",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                "name": "Polish",
            
        
    
        
        
            
                "locale": "pl-PL",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
];



const GdprConsentsData = [
    
    {
    
        
        
            
                "terms_accepted": true,
            
        
    
        
        
            
                "terms_accepted_at": new Date('2026-01-10T10:00:00Z'),
            
        
    
        
        
            
                "privacy_policy_accepted": true,
            
        
    
        
        
            
                "privacy_policy_accepted_at": new Date('2026-01-10T10:00:00Z'),
            
        
    
        
        
            
                "marketing_emails_opt_in": true,
            
        
    
        
        
            
                "marketing_opt_in_at": new Date('2026-01-10T10:00:00Z'),
            
        
    
        
        
            
                "consent_source": "web_guest_checkout",
            
        
    
        
        
            
                "consent_version": "2026-01",
            
        
    
        
        
            
                "ip_address": "203.0.113.10",
            
        
    
        
        
            
                "user_agent": "Mozilla/5.0",
            
        
    
        
        
            
                "lawful_basis": "consent",
            
        
    
    },
    
    {
    
        
        
            
                "terms_accepted": true,
            
        
    
        
        
            
                "terms_accepted_at": new Date('2026-02-05T09:20:00Z'),
            
        
    
        
        
            
                "privacy_policy_accepted": true,
            
        
    
        
        
            
                "privacy_policy_accepted_at": new Date('2026-02-05T09:20:00Z'),
            
        
    
        
        
            
                "marketing_emails_opt_in": true,
            
        
    
        
        
            
                "marketing_opt_in_at": new Date('2026-02-05T09:20:00Z'),
            
        
    
        
        
            
                "consent_source": "admin_recorded",
            
        
    
        
        
            
                "consent_version": "2026-02",
            
        
    
        
        
            
                "ip_address": "203.0.113.11",
            
        
    
        
        
            
                "user_agent": "Mozilla/5.0",
            
        
    
        
        
            
                "lawful_basis": "contract",
            
        
    
    },
    
    {
    
        
        
            
                "terms_accepted": true,
            
        
    
        
        
            
                "terms_accepted_at": new Date('2026-02-18T11:05:00Z'),
            
        
    
        
        
            
                "privacy_policy_accepted": true,
            
        
    
        
        
            
                "privacy_policy_accepted_at": new Date('2026-02-18T11:05:00Z'),
            
        
    
        
        
            
                "marketing_emails_opt_in": true,
            
        
    
        
        
            
                "marketing_opt_in_at": new Date('2026-02-18T11:05:00Z'),
            
        
    
        
        
            
                "consent_source": "account_settings",
            
        
    
        
        
            
                "consent_version": "2026-02",
            
        
    
        
        
            
                "ip_address": "203.0.113.12",
            
        
    
        
        
            
                "user_agent": "Mozilla/5.0",
            
        
    
        
        
            
                "lawful_basis": "legal_obligation",
            
        
    
    },
    
];



const GdprRequestsData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "request_type": "restriction",
            
        
    
        
        
            
                "status": "submitted",
            
        
    
        
        
            
                "submitted_at": new Date('2026-05-20T12:00:00Z'),
            
        
    
        
        
            
                "due_at": new Date('2026-06-19T12:00:00Z'),
            
        
    
        
        
            
                "completed_at": new Date('2026-05-28T10:30:00Z'),
            
        
    
        
        
            
                "details": "Guest requested a copy of personal data associated with recent stays.",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "request_type": "rectification",
            
        
    
        
        
            
                "status": "submitted",
            
        
    
        
        
            
                "submitted_at": new Date('2026-04-10T09:15:00Z'),
            
        
    
        
        
            
                "due_at": new Date('2026-05-10T09:15:00Z'),
            
        
    
        
        
            
                "completed_at": new Date('2026-04-11T14:05:00Z'),
            
        
    
        
        
            
                "details": "Guest requested correction of phone number and address.",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "request_type": "portability",
            
        
    
        
        
            
                "status": "submitted",
            
        
    
        
        
            
                "submitted_at": new Date('2026-06-02T08:00:00Z'),
            
        
    
        
        
            
                "due_at": new Date('2026-07-02T08:00:00Z'),
            
        
    
        
        
            
                "completed_at": new Date('2026-06-02T08:00:00Z'),
            
        
    
        
        
            
                "details": "Former guest requested anonymization after invoice retention requirements check.",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
];



const AuditLogsData = [
    
    {
    
        
        
            
                "event_at": new Date('2026-06-01T08:00:00Z'),
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "action": "update",
            
        
    
        
        
            
                "entity_name": "seasonal_rates",
            
        
    
        
        
            
                "record_key": "SR-2026-SUMMER-STD",
            
        
    
        
        
            
                "summary": "Updated summer rate for Standard Double.",
            
        
    
        
        
            
                "ip_address": "198.51.100.20",
            
        
    
        
        
            
                "user_agent": "Mozilla/5.0",
            
        
    
        
        
            
                "risk_level": "low",
            
        
    
    },
    
    {
    
        
        
            
                "event_at": new Date('2026-06-02T08:10:00Z'),
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "action": "permission_change",
            
        
    
        
        
            
                "entity_name": "bookings",
            
        
    
        
        
            
                "record_key": "ABH-6H2K9Q",
            
        
    
        
        
            
                "summary": "Created a booking from phone inquiry.",
            
        
    
        
        
            
                "ip_address": "198.51.100.21",
            
        
    
        
        
            
                "user_agent": "Mozilla/5.0",
            
        
    
        
        
            
                "risk_level": "high",
            
        
    
    },
    
    {
    
        
        
            
                "event_at": new Date('2026-06-03T09:25:00Z'),
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "action": "create",
            
        
    
        
        
            
                "entity_name": "users",
            
        
    
        
        
            
                "record_key": "frontdesk@aurorabayhotel.com",
            
        
    
        
        
            
                "summary": "Updated role assignment for front desk staff member.",
            
        
    
        
        
            
                "ip_address": "198.51.100.22",
            
        
    
        
        
            
                "user_agent": "Mozilla/5.0",
            
        
    
        
        
            
                "risk_level": "high",
            
        
    
    },
    
];



const HotelsData = [
    
    {
    
        
        
            
                "name": "Aurora Bay Hotel",
            
        
    
        
        
            
                "legal_name": "Aurora Bay Hospitality LLC",
            
        
    
        
        
            
                "tax_number": "UA1234567890",
            
        
    
        
        
            
                "email": "info@aurorabayhotel.com",
            
        
    
        
        
            
                "phone": "+380445551122",
            
        
    
        
        
            
                "website": "https://aurorabayhotel.com",
            
        
    
        
        
            
                "address_line1": "12 Seaside Avenue",
            
        
    
        
        
            
                "address_line2": "Podil District",
            
        
    
        
        
            
                "city": "Kyiv",
            
        
    
        
        
            
                "state_region": "Kyiv City",
            
        
    
        
        
            
                "postal_code": "04070",
            
        
    
        
        
            
                "country": "Ukraine",
            
        
    
        
        
            
                "timezone": "Europe/Kyiv",
            
        
    
        
        
            
                "check_in_time": new Date('1970-01-01T14:00:00Z'),
            
        
    
        
        
            
                "check_out_time": new Date('1970-01-01T11:00:00Z'),
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                "description": "A modern boutique hotel with calm interiors and attentive service.",
            
        
    
    },
    
    {
    
        
        
            
                "name": "Linden Square Hotel",
            
        
    
        
        
            
                "legal_name": "Linden Square Hotel Ltd",
            
        
    
        
        
            
                "tax_number": "PL9876543210",
            
        
    
        
        
            
                "email": "contact@lindensquare.example",
            
        
    
        
        
            
                "phone": "+48221234567",
            
        
    
        
        
            
                "website": "https://lindensquare.example",
            
        
    
        
        
            
                "address_line1": "5 Linden Square",
            
        
    
        
        
            
                "address_line2": "Old Town",
            
        
    
        
        
            
                "city": "Krakow",
            
        
    
        
        
            
                "state_region": "Malopolska",
            
        
    
        
        
            
                "postal_code": "31-001",
            
        
    
        
        
            
                "country": "Poland",
            
        
    
        
        
            
                "timezone": "Europe/Warsaw",
            
        
    
        
        
            
                "check_in_time": new Date('1970-01-01T15:00:00Z'),
            
        
    
        
        
            
                "check_out_time": new Date('1970-01-01T11:00:00Z'),
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                "description": "City-center stay with quiet rooms and professional staff.",
            
        
    
    },
    
    {
    
        
        
            
                "name": "Nordic Pearl Hotel",
            
        
    
        
        
            
                "legal_name": "Nordic Pearl AS",
            
        
    
        
        
            
                "tax_number": "NO1122334455",
            
        
    
        
        
            
                "email": "hello@nordicpearl.example",
            
        
    
        
        
            
                "phone": "+4722334455",
            
        
    
        
        
            
                "website": "https://nordicpearl.example",
            
        
    
        
        
            
                "address_line1": "21 Harbor Street",
            
        
    
        
        
            
                "address_line2": "Waterfront",
            
        
    
        
        
            
                "city": "Oslo",
            
        
    
        
        
            
                "state_region": "Oslo",
            
        
    
        
        
            
                "postal_code": "0150",
            
        
    
        
        
            
                "country": "Norway",
            
        
    
        
        
            
                "timezone": "Europe/Oslo",
            
        
    
        
        
            
                "check_in_time": new Date('1970-01-01T15:00:00Z'),
            
        
    
        
        
            
                "check_out_time": new Date('1970-01-01T12:00:00Z'),
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                "description": "Scandinavian comfort with a focus on sustainability.",
            
        
    
    },
    
];



const RoomTypesData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Standard Double",
            
        
    
        
        
            
                "code": "STD-DBL",
            
        
    
        
        
            
                "short_description": "Comfortable double room for two.",
            
        
    
        
        
            
                "description": "A bright room with a double bed, work desk, and modern bathroom.",
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                "max_occupancy": 2,
            
        
    
        
        
            
                "max_adults": 2,
            
        
    
        
        
            
                "max_children": 0,
            
        
    
        
        
            
                "bed_count": 1,
            
        
    
        
        
            
                "bed_type": "king",
            
        
    
        
        
            
                "base_area_sqm": 18.0,
            
        
    
        
        
            
                "is_active": true,
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Deluxe King",
            
        
    
        
        
            
                "code": "DLX-KNG",
            
        
    
        
        
            
                "short_description": "Spacious king room with premium finishes.",
            
        
    
        
        
            
                "description": "A larger room featuring a king bed, seating area, and upgraded amenities.",
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                "max_occupancy": 3,
            
        
    
        
        
            
                "max_adults": 2,
            
        
    
        
        
            
                "max_children": 1,
            
        
    
        
        
            
                "bed_count": 1,
            
        
    
        
        
            
                "bed_type": "bunk",
            
        
    
        
        
            
                "base_area_sqm": 28.0,
            
        
    
        
        
            
                "is_active": true,
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Family Suite",
            
        
    
        
        
            
                "code": "FAM-STE",
            
        
    
        
        
            
                "short_description": "Two-room suite for families.",
            
        
    
        
        
            
                "description": "Separate sleeping and living area, ideal for longer stays with children.",
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                "max_occupancy": 4,
            
        
    
        
        
            
                "max_adults": 2,
            
        
    
        
        
            
                "max_children": 2,
            
        
    
        
        
            
                "bed_count": 2,
            
        
    
        
        
            
                "bed_type": "double",
            
        
    
        
        
            
                "base_area_sqm": 42.0,
            
        
    
        
        
            
                "is_active": true,
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
];



const RoomsData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "room_number": "101",
            
        
    
        
        
            
                "floor": "1",
            
        
    
        
        
            
                "status": "out_of_service",
            
        
    
        
        
            
                "notes": "Near elevator, offer quiet room option when possible.",
            
        
    
        
        
            
                "is_smoking_allowed": true,
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "room_number": "102",
            
        
    
        
        
            
                "floor": "1",
            
        
    
        
        
            
                "status": "maintenance",
            
        
    
        
        
            
                "notes": "Standard layout.",
            
        
    
        
        
            
                "is_smoking_allowed": true,
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "room_number": "201",
            
        
    
        
        
            
                "floor": "2",
            
        
    
        
        
            
                "status": "out_of_service",
            
        
    
        
        
            
                "notes": "Corner room with extra light.",
            
        
    
        
        
            
                "is_smoking_allowed": false,
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
];



const AmenitiesData = [
    
    {
    
        
        
            
                "name": "Free Wi-Fi",
            
        
    
        
        
            
                "code": "WIFI",
            
        
    
        
        
            
                "category": "comfort",
            
        
    
        
        
            
                "description": "High-speed internet access.",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                "name": "Air Conditioning",
            
        
    
        
        
            
                "code": "AC",
            
        
    
        
        
            
                "category": "bathroom",
            
        
    
        
        
            
                "description": "Individually controlled air conditioning.",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                "name": "Smart TV",
            
        
    
        
        
            
                "code": "TV",
            
        
    
        
        
            
                "category": "accessibility",
            
        
    
        
        
            
                "description": "Flat-screen smart television with streaming support.",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
];



const RoomFeaturesData = [
    
    {
    
        
        
            
                "name": "City View",
            
        
    
        
        
            
                "code": "VIEW_CITY",
            
        
    
        
        
            
                "category": "other",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                "name": "Quiet Zone",
            
        
    
        
        
            
                "code": "QUIET",
            
        
    
        
        
            
                "category": "view",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                "name": "Balcony",
            
        
    
        
        
            
                "code": "BALCONY",
            
        
    
        
        
            
                "category": "layout",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
];



const RatePlansData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Best Flexible Rate",
            
        
    
        
        
            
                "code": "BFR",
            
        
    
        
        
            
                "pricing_model": "per_night",
            
        
    
        
        
            
                "cancellation_policy_type": "custom",
            
        
    
        
        
            
                "cancellation_policy_text": "Free cancellation until 18:00 the day before arrival.",
            
        
    
        
        
            
                "min_stay_nights": 1,
            
        
    
        
        
            
                "max_stay_nights": 21,
            
        
    
        
        
            
                "release_days": 0,
            
        
    
        
        
            
                "is_breakfast_included": false,
            
        
    
        
        
            
                "is_refundable": true,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Breakfast Included Flexible",
            
        
    
        
        
            
                "code": "BIB",
            
        
    
        
        
            
                "pricing_model": "per_night",
            
        
    
        
        
            
                "cancellation_policy_type": "non_refundable",
            
        
    
        
        
            
                "cancellation_policy_text": "Includes breakfast. Free cancellation until 18:00 the day before arrival.",
            
        
    
        
        
            
                "min_stay_nights": 1,
            
        
    
        
        
            
                "max_stay_nights": 21,
            
        
    
        
        
            
                "release_days": 0,
            
        
    
        
        
            
                "is_breakfast_included": true,
            
        
    
        
        
            
                "is_refundable": true,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Non-Refundable Saver",
            
        
    
        
        
            
                "code": "NRS",
            
        
    
        
        
            
                "pricing_model": "per_night",
            
        
    
        
        
            
                "cancellation_policy_type": "moderate",
            
        
    
        
        
            
                "cancellation_policy_text": "Non-refundable. Full prepayment required.",
            
        
    
        
        
            
                "min_stay_nights": 1,
            
        
    
        
        
            
                "max_stay_nights": 14,
            
        
    
        
        
            
                "release_days": 0,
            
        
    
        
        
            
                "is_breakfast_included": true,
            
        
    
        
        
            
                "is_refundable": true,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
];



const SeasonalRatesData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Summer Standard Double",
            
        
    
        
        
            
                "start_at": new Date('2026-06-15T00:00:00Z'),
            
        
    
        
        
            
                "end_at": new Date('2026-09-01T00:00:00Z'),
            
        
    
        
        
            
                "price_amount": 120.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "min_stay_nights": 1,
            
        
    
        
        
            
                "max_stay_nights": 21,
            
        
    
        
        
            
                "closed_to_arrival": true,
            
        
    
        
        
            
                "closed_to_departure": false,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Summer Deluxe King",
            
        
    
        
        
            
                "start_at": new Date('2026-06-15T00:00:00Z'),
            
        
    
        
        
            
                "end_at": new Date('2026-09-01T00:00:00Z'),
            
        
    
        
        
            
                "price_amount": 165.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "min_stay_nights": 1,
            
        
    
        
        
            
                "max_stay_nights": 21,
            
        
    
        
        
            
                "closed_to_arrival": false,
            
        
    
        
        
            
                "closed_to_departure": true,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Family Suite Summer Breakfast",
            
        
    
        
        
            
                "start_at": new Date('2026-06-15T00:00:00Z'),
            
        
    
        
        
            
                "end_at": new Date('2026-09-01T00:00:00Z'),
            
        
    
        
        
            
                "price_amount": 240.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "min_stay_nights": 2,
            
        
    
        
        
            
                "max_stay_nights": 21,
            
        
    
        
        
            
                "closed_to_arrival": false,
            
        
    
        
        
            
                "closed_to_departure": false,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
];



const InventoryBlocksData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Boiler Inspection Block",
            
        
    
        
        
            
                "start_at": new Date('2026-07-05T00:00:00Z'),
            
        
    
        
        
            
                "end_at": new Date('2026-07-07T00:00:00Z'),
            
        
    
        
        
            
                "block_type": "group_hold",
            
        
    
        
        
            
                "rooms_blocked": 2,
            
        
    
        
        
            
                "reason": "Scheduled boiler inspection affecting nearby rooms.",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Owner Use Weekend",
            
        
    
        
        
            
                "start_at": new Date('2026-08-22T00:00:00Z'),
            
        
    
        
        
            
                "end_at": new Date('2026-08-24T00:00:00Z'),
            
        
    
        
        
            
                "block_type": "maintenance",
            
        
    
        
        
            
                "rooms_blocked": 1,
            
        
    
        
        
            
                "reason": "Reserved for owner stay.",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "name": "Group Hold Conference",
            
        
    
        
        
            
                "start_at": new Date('2026-09-10T00:00:00Z'),
            
        
    
        
        
            
                "end_at": new Date('2026-09-13T00:00:00Z'),
            
        
    
        
        
            
                "block_type": "overbooking_protection",
            
        
    
        
        
            
                "rooms_blocked": 2,
            
        
    
        
        
            
                "reason": "Temporary hold for corporate group awaiting confirmation.",
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
];



const GuestsData = [
    
    {
    
        
        
            
                "email": "marta.nowak@example.com",
            
        
    
        
        
            
                "phone": "+48500111222",
            
        
    
        
        
            
                "first_name": "Marta",
            
        
    
        
        
            
                "last_name": "Nowak",
            
        
    
        
        
            
                "date_of_birth": new Date('1991-04-12T00:00:00Z'),
            
        
    
        
        
            
                "gender": "female",
            
        
    
        
        
            
                "nationality": "Polish",
            
        
    
        
        
            
                "address_line1": "19 Kopernika Street",
            
        
    
        
        
            
                "address_line2": "Apt 4",
            
        
    
        
        
            
                "city": "Krakow",
            
        
    
        
        
            
                "state_region": "Malopolska",
            
        
    
        
        
            
                "postal_code": "31-034",
            
        
    
        
        
            
                "country": "Poland",
            
        
    
        
        
            
                "identity_document_type": "national_id",
            
        
    
        
        
            
                "identity_document_number": "PN1234567",
            
        
    
        
        
            
                "identity_document_expires_at": new Date('2031-04-12T00:00:00Z'),
            
        
    
        
        
            
                "pii_verified": true,
            
        
    
        
        
            
                "pii_verified_at": new Date('2026-05-01T09:00:00Z'),
            
        
    
        
        
            
                "data_retention_status": "scheduled_for_anonymization",
            
        
    
        
        
            
                "anonymize_after_at": new Date('2033-01-01T00:00:00Z'),
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
    },
    
    {
    
        
        
            
                "email": "andrii.petrenko@example.com",
            
        
    
        
        
            
                "phone": "+380501234321",
            
        
    
        
        
            
                "first_name": "Andrii",
            
        
    
        
        
            
                "last_name": "Petrenko",
            
        
    
        
        
            
                "date_of_birth": new Date('1986-11-03T00:00:00Z'),
            
        
    
        
        
            
                "gender": "non_binary",
            
        
    
        
        
            
                "nationality": "Ukrainian",
            
        
    
        
        
            
                "address_line1": "7 Hrushevskoho Street",
            
        
    
        
        
            
                "address_line2": "Unit 12",
            
        
    
        
        
            
                "city": "Kyiv",
            
        
    
        
        
            
                "state_region": "Kyiv City",
            
        
    
        
        
            
                "postal_code": "01001",
            
        
    
        
        
            
                "country": "Ukraine",
            
        
    
        
        
            
                "identity_document_type": "passport",
            
        
    
        
        
            
                "identity_document_number": "IDUA998877",
            
        
    
        
        
            
                "identity_document_expires_at": new Date('2030-11-03T00:00:00Z'),
            
        
    
        
        
            
                "pii_verified": true,
            
        
    
        
        
            
                "pii_verified_at": new Date('2026-06-01T10:00:00Z'),
            
        
    
        
        
            
                "data_retention_status": "anonymized",
            
        
    
        
        
            
                "anonymize_after_at": new Date('2033-01-01T00:00:00Z'),
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
    },
    
    {
    
        
        
            
                "email": "sarah.mitchell@example.com",
            
        
    
        
        
            
                "phone": "+447700900111",
            
        
    
        
        
            
                "first_name": "Sarah",
            
        
    
        
        
            
                "last_name": "Mitchell",
            
        
    
        
        
            
                "date_of_birth": new Date('1994-02-20T00:00:00Z'),
            
        
    
        
        
            
                "gender": "male",
            
        
    
        
        
            
                "nationality": "British",
            
        
    
        
        
            
                "address_line1": "14 Queen Street",
            
        
    
        
        
            
                "address_line2": "Flat 2B",
            
        
    
        
        
            
                "city": "London",
            
        
    
        
        
            
                "state_region": "Greater London",
            
        
    
        
        
            
                "postal_code": "SW1A 1AA",
            
        
    
        
        
            
                "country": "United Kingdom",
            
        
    
        
        
            
                "identity_document_type": "drivers_license",
            
        
    
        
        
            
                "identity_document_number": "UK5544332",
            
        
    
        
        
            
                "identity_document_expires_at": new Date('2032-02-20T00:00:00Z'),
            
        
    
        
        
            
                "pii_verified": true,
            
        
    
        
        
            
                "pii_verified_at": new Date('2026-05-15T12:30:00Z'),
            
        
    
        
        
            
                "data_retention_status": "active",
            
        
    
        
        
            
                "anonymize_after_at": new Date('2033-01-01T00:00:00Z'),
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
    },
    
];



const BookingsData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "booking_code": "ABH-6H2K9Q",
            
        
    
        
        
            
                "check_in_at": new Date('2026-06-20T14:00:00Z'),
            
        
    
        
        
            
                "check_out_at": new Date('2026-06-23T11:00:00Z'),
            
        
    
        
        
            
                "adults": 2,
            
        
    
        
        
            
                "children": 0,
            
        
    
        
        
            
                "status": "checked_in",
            
        
    
        
        
            
                "source": "admin",
            
        
    
        
        
            
                "total_amount": 495.0,
            
        
    
        
        
            
                "tax_amount": 49.5,
            
        
    
        
        
            
                "city_tax_amount": 9.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "deposit_amount": 100.0,
            
        
    
        
        
            
                "deposit_status": "paid",
            
        
    
        
        
            
                "special_requests": "High floor room if available.",
            
        
    
        
        
            
                "cancelled_at": new Date('2026-06-01T00:00:00Z'),
            
        
    
        
        
            
                "cancellation_reason": "None",
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "booking_code": "ABH-1P7D3A",
            
        
    
        
        
            
                "check_in_at": new Date('2026-07-10T14:00:00Z'),
            
        
    
        
        
            
                "check_out_at": new Date('2026-07-12T11:00:00Z'),
            
        
    
        
        
            
                "adults": 1,
            
        
    
        
        
            
                "children": 0,
            
        
    
        
        
            
                "status": "checked_out",
            
        
    
        
        
            
                "source": "phone",
            
        
    
        
        
            
                "total_amount": 210.0,
            
        
    
        
        
            
                "tax_amount": 21.0,
            
        
    
        
        
            
                "city_tax_amount": 6.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "deposit_amount": 0.0,
            
        
    
        
        
            
                "deposit_status": "none",
            
        
    
        
        
            
                "special_requests": "Late arrival around 22:00.",
            
        
    
        
        
            
                "cancelled_at": new Date('2026-07-01T00:00:00Z'),
            
        
    
        
        
            
                "cancellation_reason": "None",
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "booking_code": "ABH-9Z4Q2M",
            
        
    
        
        
            
                "check_in_at": new Date('2026-08-05T14:00:00Z'),
            
        
    
        
        
            
                "check_out_at": new Date('2026-08-10T11:00:00Z'),
            
        
    
        
        
            
                "adults": 2,
            
        
    
        
        
            
                "children": 2,
            
        
    
        
        
            
                "status": "pending_confirmation",
            
        
    
        
        
            
                "source": "web",
            
        
    
        
        
            
                "total_amount": 1200.0,
            
        
    
        
        
            
                "tax_amount": 120.0,
            
        
    
        
        
            
                "city_tax_amount": 30.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "deposit_amount": 200.0,
            
        
    
        
        
            
                "deposit_status": "none",
            
        
    
        
        
            
                "special_requests": "Baby cot and quiet room.",
            
        
    
        
        
            
                "cancelled_at": new Date('2026-08-01T00:00:00Z'),
            
        
    
        
        
            
                "cancellation_reason": "None",
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
        
        
            
                // type code here for "relation_many" field
            
        
    
    },
    
];



const BookingGuestsData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "guest_role": "primary",
            
        
    
        
        
            
                "is_payer": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "guest_role": "primary",
            
        
    
        
        
            
                "is_payer": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "guest_role": "primary",
            
        
    
        
        
            
                "is_payer": true,
            
        
    
    },
    
];



const PaymentsData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "provider": "none",
            
        
    
        
        
            
                "payment_type": "full",
            
        
    
        
        
            
                "status": "paid",
            
        
    
        
        
            
                "amount": 100.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "initiated_at": new Date('2026-06-02T08:10:00Z'),
            
        
    
        
        
            
                "paid_at": new Date('2026-06-02T08:11:30Z'),
            
        
    
        
        
            
                "provider_reference": "pi_3SeedABH001",
            
        
    
        
        
            
                "receipt_number": "RCPT-ABH-0001",
            
        
    
        
        
            
                "notes": "Deposit captured successfully.",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "provider": "bank_transfer",
            
        
    
        
        
            
                "payment_type": "extra_charge",
            
        
    
        
        
            
                "status": "pending",
            
        
    
        
        
            
                "amount": 0.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "initiated_at": new Date('2026-07-01T10:00:00Z'),
            
        
    
        
        
            
                "paid_at": new Date('2026-07-01T10:00:00Z'),
            
        
    
        
        
            
                "provider_reference": "pi_3SeedABH002",
            
        
    
        
        
            
                "receipt_number": "RCPT-ABH-0002",
            
        
    
        
        
            
                "notes": "No deposit required for this rate plan.",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "provider": "pos",
            
        
    
        
        
            
                "payment_type": "deposit",
            
        
    
        
        
            
                "status": "refunded",
            
        
    
        
        
            
                "amount": 200.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "initiated_at": new Date('2026-06-15T09:00:00Z'),
            
        
    
        
        
            
                "paid_at": new Date('2026-06-15T09:00:00Z'),
            
        
    
        
        
            
                "provider_reference": "BT-ABH-20260615-01",
            
        
    
        
        
            
                "receipt_number": "RCPT-ABH-0003",
            
        
    
        
        
            
                "notes": "Awaiting incoming transfer.",
            
        
    
    },
    
];



const InvoicesData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "invoice_number": "INV-ABH-2026-0001",
            
        
    
        
        
            
                "issued_at": new Date('2026-06-02T08:15:00Z'),
            
        
    
        
        
            
                "due_at": new Date('2026-06-20T14:00:00Z'),
            
        
    
        
        
            
                "subtotal_amount": 445.5,
            
        
    
        
        
            
                "tax_amount": 49.5,
            
        
    
        
        
            
                "total_amount": 495.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "status": "draft",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
        
        
            
                "billing_name": "Marta Nowak",
            
        
    
        
        
            
                "billing_address": "19 Kopernika Street, Krakow",
            
        
    
        
        
            
                "billing_tax_number": "N/A",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "invoice_number": "INV-ABH-2026-0002",
            
        
    
        
        
            
                "issued_at": new Date('2026-07-01T10:10:00Z'),
            
        
    
        
        
            
                "due_at": new Date('2026-07-10T14:00:00Z'),
            
        
    
        
        
            
                "subtotal_amount": 189.0,
            
        
    
        
        
            
                "tax_amount": 21.0,
            
        
    
        
        
            
                "total_amount": 210.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "status": "paid",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
        
        
            
                "billing_name": "Andrii Petrenko",
            
        
    
        
        
            
                "billing_address": "7 Hrushevskoho Street, Kyiv",
            
        
    
        
        
            
                "billing_tax_number": "N/A",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "invoice_number": "INV-ABH-2026-0003",
            
        
    
        
        
            
                "issued_at": new Date('2026-06-15T09:05:00Z'),
            
        
    
        
        
            
                "due_at": new Date('2026-08-05T14:00:00Z'),
            
        
    
        
        
            
                "subtotal_amount": 1080.0,
            
        
    
        
        
            
                "tax_amount": 120.0,
            
        
    
        
        
            
                "total_amount": 1200.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "status": "void",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
        
        
            
                "billing_name": "Sarah Mitchell",
            
        
    
        
        
            
                "billing_address": "14 Queen Street, London",
            
        
    
        
        
            
                "billing_tax_number": "N/A",
            
        
    
    },
    
];



const MessagesData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "channel": "sms",
            
        
    
        
        
            
                "direction": "inbound",
            
        
    
        
        
            
                "status": "failed",
            
        
    
        
        
            
                "subject": "Booking Confirmation ABH-6H2K9Q",
            
        
    
        
        
            
                "body": "Thank you for your reservation. Your booking is confirmed. We look forward to welcoming you.",
            
        
    
        
        
            
                "sent_at": new Date('2026-06-02T08:12:00Z'),
            
        
    
        
        
            
                "delivered_at": new Date('2026-06-02T08:12:10Z'),
            
        
    
        
        
            
                "to_address": "marta.nowak@example.com",
            
        
    
        
        
            
                "from_address": "reservations@aurorabayhotel.com",
            
        
    
        
        
            
                "provider_reference": "eml_Seed001",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "channel": "email",
            
        
    
        
        
            
                "direction": "inbound",
            
        
    
        
        
            
                "status": "queued",
            
        
    
        
        
            
                "subject": "Arrival Details",
            
        
    
        
        
            
                "body": "Check-in from 14:00. Reply to this message if you have questions.",
            
        
    
        
        
            
                "sent_at": new Date('2026-06-18T10:00:00Z'),
            
        
    
        
        
            
                "delivered_at": new Date('2026-06-18T10:00:20Z'),
            
        
    
        
        
            
                "to_address": "+48500111222",
            
        
    
        
        
            
                "from_address": "AuroraBay",
            
        
    
        
        
            
                "provider_reference": "sms_Seed002",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "channel": "sms",
            
        
    
        
        
            
                "direction": "inbound",
            
        
    
        
        
            
                "status": "delivered",
            
        
    
        
        
            
                "subject": "Action Needed for ABH-1P7D3A",
            
        
    
        
        
            
                "body": "Please confirm your arrival time to finalize your reservation.",
            
        
    
        
        
            
                "sent_at": new Date('2026-07-01T10:15:00Z'),
            
        
    
        
        
            
                "delivered_at": new Date('2026-07-01T10:15:12Z'),
            
        
    
        
        
            
                "to_address": "andrii.petrenko@example.com",
            
        
    
        
        
            
                "from_address": "reservations@aurorabayhotel.com",
            
        
    
        
        
            
                "provider_reference": "eml_Seed003",
            
        
    
    },
    
];



const PromoCodesData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "code": "WELCOME10",
            
        
    
        
        
            
                "name": "Welcome Discount",
            
        
    
        
        
            
                "discount_type": "percent",
            
        
    
        
        
            
                "discount_value": 10.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "valid_from_at": new Date('2026-01-01T00:00:00Z'),
            
        
    
        
        
            
                "valid_to_at": new Date('2026-12-31T23:59:59Z'),
            
        
    
        
        
            
                "max_uses": 500,
            
        
    
        
        
            
                "max_uses_per_guest": 1,
            
        
    
        
        
            
                "min_nights": 1,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "code": "SUMMER15",
            
        
    
        
        
            
                "name": "Summer Special",
            
        
    
        
        
            
                "discount_type": "percent",
            
        
    
        
        
            
                "discount_value": 15.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "valid_from_at": new Date('2026-06-15T00:00:00Z'),
            
        
    
        
        
            
                "valid_to_at": new Date('2026-09-01T00:00:00Z'),
            
        
    
        
        
            
                "max_uses": 300,
            
        
    
        
        
            
                "max_uses_per_guest": 1,
            
        
    
        
        
            
                "min_nights": 2,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "code": "CITYBREAK20",
            
        
    
        
        
            
                "name": "City Break Offer",
            
        
    
        
        
            
                "discount_type": "fixed_amount",
            
        
    
        
        
            
                "discount_value": 20.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
        
        
            
                "valid_from_at": new Date('2026-03-01T00:00:00Z'),
            
        
    
        
        
            
                "valid_to_at": new Date('2026-11-30T23:59:59Z'),
            
        
    
        
        
            
                "max_uses": 200,
            
        
    
        
        
            
                "max_uses_per_guest": 1,
            
        
    
        
        
            
                "min_nights": 2,
            
        
    
        
        
            
                "is_active": true,
            
        
    
    },
    
];



const BookingDiscountsData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "discount_type": "fixed_amount",
            
        
    
        
        
            
                "discount_value": 10.0,
            
        
    
        
        
            
                "discount_amount": 49.5,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "discount_type": "fixed_amount",
            
        
    
        
        
            
                "discount_value": 30.0,
            
        
    
        
        
            
                "discount_amount": 30.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "discount_type": "percent",
            
        
    
        
        
            
                "discount_value": 15.0,
            
        
    
        
        
            
                "discount_amount": 180.0,
            
        
    
        
        
            
                "currency": "EUR",
            
        
    
    },
    
];



const HousekeepingTasksData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "scheduled_for_at": new Date('2026-06-20T10:00:00Z'),
            
        
    
        
        
            
                "completed_at": new Date('2026-06-20T10:45:00Z'),
            
        
    
        
        
            
                "task_type": "inspection",
            
        
    
        
        
            
                "status": "done",
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "notes": "Standard cleaning completed.",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "scheduled_for_at": new Date('2026-06-18T12:00:00Z'),
            
        
    
        
        
            
                "completed_at": new Date('2026-06-18T12:40:00Z'),
            
        
    
        
        
            
                "task_type": "inspection",
            
        
    
        
        
            
                "status": "cancelled",
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "notes": "Room inspected, ready for arrival.",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "scheduled_for_at": new Date('2026-06-19T09:30:00Z'),
            
        
    
        
        
            
                "completed_at": new Date('2026-06-19T09:30:00Z'),
            
        
    
        
        
            
                "task_type": "cleaning",
            
        
    
        
        
            
                "status": "in_progress",
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "notes": "Replacing linens and towels.",
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
];



const ServiceRequestsData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "category": "it_support",
            
        
    
        
        
            
                "priority": "urgent",
            
        
    
        
        
            
                "status": "cancelled",
            
        
    
        
        
            
                "title": "Airport transfer inquiry",
            
        
    
        
        
            
                "description": "Guest asked about arranging a pickup from the airport.",
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "reported_at": new Date('2026-06-10T09:00:00Z'),
            
        
    
        
        
            
                "resolved_at": new Date('2026-06-10T11:00:00Z'),
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "category": "room_service",
            
        
    
        
        
            
                "priority": "normal",
            
        
    
        
        
            
                "status": "cancelled",
            
        
    
        
        
            
                "title": "Bathroom faucet issue",
            
        
    
        
        
            
                "description": "Faucet handle loose, needs tightening.",
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "reported_at": new Date('2026-08-06T08:30:00Z'),
            
        
    
        
        
            
                "resolved_at": new Date('2026-08-06T08:30:00Z'),
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "category": "concierge",
            
        
    
        
        
            
                "priority": "normal",
            
        
    
        
        
            
                "status": "in_progress",
            
        
    
        
        
            
                "title": "Extra pillows request",
            
        
    
        
        
            
                "description": "Guest requested two extra pillows.",
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "reported_at": new Date('2026-06-18T20:00:00Z'),
            
        
    
        
        
            
                "resolved_at": new Date('2026-06-18T20:00:00Z'),
            
        
    
        
        
            
                // type code here for "files" field
            
        
    
    },
    
];



const ContentPagesData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "title": "Home",
            
        
    
        
        
            
                "slug": "home",
            
        
    
        
        
            
                "page_type": "home",
            
        
    
        
        
            
                "content": "Welcome to Aurora Bay Hotel. Discover calm comfort in the heart of the city.",
            
        
    
        
        
            
                "is_published": true,
            
        
    
        
        
            
                "published_at": new Date('2026-01-05T10:00:00Z'),
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "title": "Rooms and Suites",
            
        
    
        
        
            
                "slug": "rooms",
            
        
    
        
        
            
                "page_type": "privacy",
            
        
    
        
        
            
                "content": "Explore our room categories and choose what fits your stay.",
            
        
    
        
        
            
                "is_published": true,
            
        
    
        
        
            
                "published_at": new Date('2026-01-05T10:05:00Z'),
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "title": "Privacy Policy",
            
        
    
        
        
            
                "slug": "privacy",
            
        
    
        
        
            
                "page_type": "terms",
            
        
    
        
        
            
                "content": "We process personal data responsibly and according to GDPR. Contact us for requests.",
            
        
    
        
        
            
                "is_published": true,
            
        
    
        
        
            
                "published_at": new Date('2026-01-05T10:10:00Z'),
            
        
    
        
        
            
                // type code here for "images" field
            
        
    
        
        
            
                // type code here for "relation_one" field
            
        
    
    },
    
];



const SettingsData = [
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "key": "default_currency",
            
        
    
        
        
            
                "value": "EUR",
            
        
    
        
        
            
                "value_type": "boolean",
            
        
    
        
        
            
                "description": "Currency used for pricing and invoices.",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "key": "city_tax_per_night",
            
        
    
        
        
            
                "value": "3",
            
        
    
        
        
            
                "value_type": "number",
            
        
    
        
        
            
                "description": "City tax per room per night.",
            
        
    
    },
    
    {
    
        
        
            
                // type code here for "relation_one" field
            
        
    
        
        
            
                "key": "gdpr_retention_years",
            
        
    
        
        
            
                "value": "7",
            
        
    
        
        
            
                "value_type": "string",
            
        
    
        
        
            
                "description": "Retention period for invoices and booking records.",
            
        
    
    },
    
];




    
    
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
            // Similar logic for "relation_many"
        
    

    
    
    
    
    
        
    
        
    
        
    

    
    
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateGdprRequestWithRequester() {
            
                const relatedRequester0 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const GdprRequest0 = await GdprRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (GdprRequest0?.setRequester)
                {
                    await
                    GdprRequest0.
                    setRequester(relatedRequester0);
                }
            
                const relatedRequester1 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const GdprRequest1 = await GdprRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (GdprRequest1?.setRequester)
                {
                    await
                    GdprRequest1.
                    setRequester(relatedRequester1);
                }
            
                const relatedRequester2 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const GdprRequest2 = await GdprRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (GdprRequest2?.setRequester)
                {
                    await
                    GdprRequest2.
                    setRequester(relatedRequester2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
    
        
            
            async function associateAuditLogWithActor() {
            
                const relatedActor0 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const AuditLog0 = await AuditLogs.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (AuditLog0?.setActor)
                {
                    await
                    AuditLog0.
                    setActor(relatedActor0);
                }
            
                const relatedActor1 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const AuditLog1 = await AuditLogs.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (AuditLog1?.setActor)
                {
                    await
                    AuditLog1.
                    setActor(relatedActor1);
                }
            
                const relatedActor2 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const AuditLog2 = await AuditLogs.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (AuditLog2?.setActor)
                {
                    await
                    AuditLog2.
                    setActor(relatedActor2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateRoomTypeWithHotel() {
            
                const relatedHotel0 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const RoomType0 = await RoomTypes.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (RoomType0?.setHotel)
                {
                    await
                    RoomType0.
                    setHotel(relatedHotel0);
                }
            
                const relatedHotel1 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const RoomType1 = await RoomTypes.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (RoomType1?.setHotel)
                {
                    await
                    RoomType1.
                    setHotel(relatedHotel1);
                }
            
                const relatedHotel2 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const RoomType2 = await RoomTypes.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (RoomType2?.setHotel)
                {
                    await
                    RoomType2.
                    setHotel(relatedHotel2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
            // Similar logic for "relation_many"
        
    

    
    
    
        
            
            async function associateRoomWithRoom_type() {
            
                const relatedRoom_type0 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const Room0 = await Rooms.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Room0?.setRoom_type)
                {
                    await
                    Room0.
                    setRoom_type(relatedRoom_type0);
                }
            
                const relatedRoom_type1 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const Room1 = await Rooms.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Room1?.setRoom_type)
                {
                    await
                    Room1.
                    setRoom_type(relatedRoom_type1);
                }
            
                const relatedRoom_type2 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const Room2 = await Rooms.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Room2?.setRoom_type)
                {
                    await
                    Room2.
                    setRoom_type(relatedRoom_type2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
            // Similar logic for "relation_many"
        
    

    
    
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateRatePlanWithHotel() {
            
                const relatedHotel0 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const RatePlan0 = await RatePlans.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (RatePlan0?.setHotel)
                {
                    await
                    RatePlan0.
                    setHotel(relatedHotel0);
                }
            
                const relatedHotel1 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const RatePlan1 = await RatePlans.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (RatePlan1?.setHotel)
                {
                    await
                    RatePlan1.
                    setHotel(relatedHotel1);
                }
            
                const relatedHotel2 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const RatePlan2 = await RatePlans.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (RatePlan2?.setHotel)
                {
                    await
                    RatePlan2.
                    setHotel(relatedHotel2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateSeasonalRateWithRoom_type() {
            
                const relatedRoom_type0 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const SeasonalRate0 = await SeasonalRates.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (SeasonalRate0?.setRoom_type)
                {
                    await
                    SeasonalRate0.
                    setRoom_type(relatedRoom_type0);
                }
            
                const relatedRoom_type1 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const SeasonalRate1 = await SeasonalRates.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (SeasonalRate1?.setRoom_type)
                {
                    await
                    SeasonalRate1.
                    setRoom_type(relatedRoom_type1);
                }
            
                const relatedRoom_type2 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const SeasonalRate2 = await SeasonalRates.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (SeasonalRate2?.setRoom_type)
                {
                    await
                    SeasonalRate2.
                    setRoom_type(relatedRoom_type2);
                }
            
        }
        
    
        
            
            async function associateSeasonalRateWithRate_plan() {
            
                const relatedRate_plan0 = await RatePlans.findOne({
                    offset: Math.floor(Math.random() * (await RatePlans.count())),
                });
                const SeasonalRate0 = await SeasonalRates.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (SeasonalRate0?.setRate_plan)
                {
                    await
                    SeasonalRate0.
                    setRate_plan(relatedRate_plan0);
                }
            
                const relatedRate_plan1 = await RatePlans.findOne({
                    offset: Math.floor(Math.random() * (await RatePlans.count())),
                });
                const SeasonalRate1 = await SeasonalRates.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (SeasonalRate1?.setRate_plan)
                {
                    await
                    SeasonalRate1.
                    setRate_plan(relatedRate_plan1);
                }
            
                const relatedRate_plan2 = await RatePlans.findOne({
                    offset: Math.floor(Math.random() * (await RatePlans.count())),
                });
                const SeasonalRate2 = await SeasonalRates.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (SeasonalRate2?.setRate_plan)
                {
                    await
                    SeasonalRate2.
                    setRate_plan(relatedRate_plan2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateInventoryBlockWithRoom_type() {
            
                const relatedRoom_type0 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const InventoryBlock0 = await InventoryBlocks.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (InventoryBlock0?.setRoom_type)
                {
                    await
                    InventoryBlock0.
                    setRoom_type(relatedRoom_type0);
                }
            
                const relatedRoom_type1 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const InventoryBlock1 = await InventoryBlocks.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (InventoryBlock1?.setRoom_type)
                {
                    await
                    InventoryBlock1.
                    setRoom_type(relatedRoom_type1);
                }
            
                const relatedRoom_type2 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const InventoryBlock2 = await InventoryBlocks.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (InventoryBlock2?.setRoom_type)
                {
                    await
                    InventoryBlock2.
                    setRoom_type(relatedRoom_type2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
            
            async function associateGuestWithLinked_user() {
            
                const relatedLinked_user0 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const Guest0 = await Guests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Guest0?.setLinked_user)
                {
                    await
                    Guest0.
                    setLinked_user(relatedLinked_user0);
                }
            
                const relatedLinked_user1 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const Guest1 = await Guests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Guest1?.setLinked_user)
                {
                    await
                    Guest1.
                    setLinked_user(relatedLinked_user1);
                }
            
                const relatedLinked_user2 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const Guest2 = await Guests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Guest2?.setLinked_user)
                {
                    await
                    Guest2.
                    setLinked_user(relatedLinked_user2);
                }
            
        }
        
    
        
            
            async function associateGuestWithGdpr_consent() {
            
                const relatedGdpr_consent0 = await GdprConsents.findOne({
                    offset: Math.floor(Math.random() * (await GdprConsents.count())),
                });
                const Guest0 = await Guests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Guest0?.setGdpr_consent)
                {
                    await
                    Guest0.
                    setGdpr_consent(relatedGdpr_consent0);
                }
            
                const relatedGdpr_consent1 = await GdprConsents.findOne({
                    offset: Math.floor(Math.random() * (await GdprConsents.count())),
                });
                const Guest1 = await Guests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Guest1?.setGdpr_consent)
                {
                    await
                    Guest1.
                    setGdpr_consent(relatedGdpr_consent1);
                }
            
                const relatedGdpr_consent2 = await GdprConsents.findOne({
                    offset: Math.floor(Math.random() * (await GdprConsents.count())),
                });
                const Guest2 = await Guests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Guest2?.setGdpr_consent)
                {
                    await
                    Guest2.
                    setGdpr_consent(relatedGdpr_consent2);
                }
            
        }
        
    

    
    
    
        
            
            async function associateBookingWithHotel() {
            
                const relatedHotel0 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const Booking0 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Booking0?.setHotel)
                {
                    await
                    Booking0.
                    setHotel(relatedHotel0);
                }
            
                const relatedHotel1 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const Booking1 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Booking1?.setHotel)
                {
                    await
                    Booking1.
                    setHotel(relatedHotel1);
                }
            
                const relatedHotel2 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const Booking2 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Booking2?.setHotel)
                {
                    await
                    Booking2.
                    setHotel(relatedHotel2);
                }
            
        }
        
    
        
            
            async function associateBookingWithPrimary_guest() {
            
                const relatedPrimary_guest0 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const Booking0 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Booking0?.setPrimary_guest)
                {
                    await
                    Booking0.
                    setPrimary_guest(relatedPrimary_guest0);
                }
            
                const relatedPrimary_guest1 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const Booking1 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Booking1?.setPrimary_guest)
                {
                    await
                    Booking1.
                    setPrimary_guest(relatedPrimary_guest1);
                }
            
                const relatedPrimary_guest2 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const Booking2 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Booking2?.setPrimary_guest)
                {
                    await
                    Booking2.
                    setPrimary_guest(relatedPrimary_guest2);
                }
            
        }
        
    
        
            
            async function associateBookingWithRoom_type() {
            
                const relatedRoom_type0 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const Booking0 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Booking0?.setRoom_type)
                {
                    await
                    Booking0.
                    setRoom_type(relatedRoom_type0);
                }
            
                const relatedRoom_type1 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const Booking1 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Booking1?.setRoom_type)
                {
                    await
                    Booking1.
                    setRoom_type(relatedRoom_type1);
                }
            
                const relatedRoom_type2 = await RoomTypes.findOne({
                    offset: Math.floor(Math.random() * (await RoomTypes.count())),
                });
                const Booking2 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Booking2?.setRoom_type)
                {
                    await
                    Booking2.
                    setRoom_type(relatedRoom_type2);
                }
            
        }
        
    
        
            
            async function associateBookingWithRate_plan() {
            
                const relatedRate_plan0 = await RatePlans.findOne({
                    offset: Math.floor(Math.random() * (await RatePlans.count())),
                });
                const Booking0 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Booking0?.setRate_plan)
                {
                    await
                    Booking0.
                    setRate_plan(relatedRate_plan0);
                }
            
                const relatedRate_plan1 = await RatePlans.findOne({
                    offset: Math.floor(Math.random() * (await RatePlans.count())),
                });
                const Booking1 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Booking1?.setRate_plan)
                {
                    await
                    Booking1.
                    setRate_plan(relatedRate_plan1);
                }
            
                const relatedRate_plan2 = await RatePlans.findOne({
                    offset: Math.floor(Math.random() * (await RatePlans.count())),
                });
                const Booking2 = await Bookings.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Booking2?.setRate_plan)
                {
                    await
                    Booking2.
                    setRate_plan(relatedRate_plan2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
            // Similar logic for "relation_many"
        
    
        
            // Similar logic for "relation_many"
        
    
        
            // Similar logic for "relation_many"
        
    
        
            // Similar logic for "relation_many"
        
    

    
    
    
        
            
            async function associateBookingGuestWithBooking() {
            
                const relatedBooking0 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const BookingGuest0 = await BookingGuests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (BookingGuest0?.setBooking)
                {
                    await
                    BookingGuest0.
                    setBooking(relatedBooking0);
                }
            
                const relatedBooking1 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const BookingGuest1 = await BookingGuests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (BookingGuest1?.setBooking)
                {
                    await
                    BookingGuest1.
                    setBooking(relatedBooking1);
                }
            
                const relatedBooking2 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const BookingGuest2 = await BookingGuests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (BookingGuest2?.setBooking)
                {
                    await
                    BookingGuest2.
                    setBooking(relatedBooking2);
                }
            
        }
        
    
        
            
            async function associateBookingGuestWithGuest() {
            
                const relatedGuest0 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const BookingGuest0 = await BookingGuests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (BookingGuest0?.setGuest)
                {
                    await
                    BookingGuest0.
                    setGuest(relatedGuest0);
                }
            
                const relatedGuest1 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const BookingGuest1 = await BookingGuests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (BookingGuest1?.setGuest)
                {
                    await
                    BookingGuest1.
                    setGuest(relatedGuest1);
                }
            
                const relatedGuest2 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const BookingGuest2 = await BookingGuests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (BookingGuest2?.setGuest)
                {
                    await
                    BookingGuest2.
                    setGuest(relatedGuest2);
                }
            
        }
        
    
        
    
        
    

    
    
    
        
            
            async function associatePaymentWithBooking() {
            
                const relatedBooking0 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Payment0 = await Payments.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Payment0?.setBooking)
                {
                    await
                    Payment0.
                    setBooking(relatedBooking0);
                }
            
                const relatedBooking1 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Payment1 = await Payments.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Payment1?.setBooking)
                {
                    await
                    Payment1.
                    setBooking(relatedBooking1);
                }
            
                const relatedBooking2 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Payment2 = await Payments.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Payment2?.setBooking)
                {
                    await
                    Payment2.
                    setBooking(relatedBooking2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateInvoiceWithBooking() {
            
                const relatedBooking0 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Invoice0 = await Invoices.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Invoice0?.setBooking)
                {
                    await
                    Invoice0.
                    setBooking(relatedBooking0);
                }
            
                const relatedBooking1 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Invoice1 = await Invoices.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Invoice1?.setBooking)
                {
                    await
                    Invoice1.
                    setBooking(relatedBooking1);
                }
            
                const relatedBooking2 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Invoice2 = await Invoices.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Invoice2?.setBooking)
                {
                    await
                    Invoice2.
                    setBooking(relatedBooking2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateMessageWithBooking() {
            
                const relatedBooking0 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Message0 = await Messages.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Message0?.setBooking)
                {
                    await
                    Message0.
                    setBooking(relatedBooking0);
                }
            
                const relatedBooking1 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Message1 = await Messages.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Message1?.setBooking)
                {
                    await
                    Message1.
                    setBooking(relatedBooking1);
                }
            
                const relatedBooking2 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const Message2 = await Messages.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Message2?.setBooking)
                {
                    await
                    Message2.
                    setBooking(relatedBooking2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associatePromoCodeWithHotel() {
            
                const relatedHotel0 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const PromoCode0 = await PromoCodes.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (PromoCode0?.setHotel)
                {
                    await
                    PromoCode0.
                    setHotel(relatedHotel0);
                }
            
                const relatedHotel1 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const PromoCode1 = await PromoCodes.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (PromoCode1?.setHotel)
                {
                    await
                    PromoCode1.
                    setHotel(relatedHotel1);
                }
            
                const relatedHotel2 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const PromoCode2 = await PromoCodes.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (PromoCode2?.setHotel)
                {
                    await
                    PromoCode2.
                    setHotel(relatedHotel2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateBookingDiscountWithBooking() {
            
                const relatedBooking0 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const BookingDiscount0 = await BookingDiscounts.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (BookingDiscount0?.setBooking)
                {
                    await
                    BookingDiscount0.
                    setBooking(relatedBooking0);
                }
            
                const relatedBooking1 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const BookingDiscount1 = await BookingDiscounts.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (BookingDiscount1?.setBooking)
                {
                    await
                    BookingDiscount1.
                    setBooking(relatedBooking1);
                }
            
                const relatedBooking2 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const BookingDiscount2 = await BookingDiscounts.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (BookingDiscount2?.setBooking)
                {
                    await
                    BookingDiscount2.
                    setBooking(relatedBooking2);
                }
            
        }
        
    
        
            
            async function associateBookingDiscountWithPromo_code() {
            
                const relatedPromo_code0 = await PromoCodes.findOne({
                    offset: Math.floor(Math.random() * (await PromoCodes.count())),
                });
                const BookingDiscount0 = await BookingDiscounts.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (BookingDiscount0?.setPromo_code)
                {
                    await
                    BookingDiscount0.
                    setPromo_code(relatedPromo_code0);
                }
            
                const relatedPromo_code1 = await PromoCodes.findOne({
                    offset: Math.floor(Math.random() * (await PromoCodes.count())),
                });
                const BookingDiscount1 = await BookingDiscounts.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (BookingDiscount1?.setPromo_code)
                {
                    await
                    BookingDiscount1.
                    setPromo_code(relatedPromo_code1);
                }
            
                const relatedPromo_code2 = await PromoCodes.findOne({
                    offset: Math.floor(Math.random() * (await PromoCodes.count())),
                });
                const BookingDiscount2 = await BookingDiscounts.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (BookingDiscount2?.setPromo_code)
                {
                    await
                    BookingDiscount2.
                    setPromo_code(relatedPromo_code2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateHousekeepingTaskWithRoom() {
            
                const relatedRoom0 = await Rooms.findOne({
                    offset: Math.floor(Math.random() * (await Rooms.count())),
                });
                const HousekeepingTask0 = await HousekeepingTasks.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (HousekeepingTask0?.setRoom)
                {
                    await
                    HousekeepingTask0.
                    setRoom(relatedRoom0);
                }
            
                const relatedRoom1 = await Rooms.findOne({
                    offset: Math.floor(Math.random() * (await Rooms.count())),
                });
                const HousekeepingTask1 = await HousekeepingTasks.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (HousekeepingTask1?.setRoom)
                {
                    await
                    HousekeepingTask1.
                    setRoom(relatedRoom1);
                }
            
                const relatedRoom2 = await Rooms.findOne({
                    offset: Math.floor(Math.random() * (await Rooms.count())),
                });
                const HousekeepingTask2 = await HousekeepingTasks.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (HousekeepingTask2?.setRoom)
                {
                    await
                    HousekeepingTask2.
                    setRoom(relatedRoom2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
            
            async function associateHousekeepingTaskWithAssigned_to() {
            
                const relatedAssigned_to0 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const HousekeepingTask0 = await HousekeepingTasks.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (HousekeepingTask0?.setAssigned_to)
                {
                    await
                    HousekeepingTask0.
                    setAssigned_to(relatedAssigned_to0);
                }
            
                const relatedAssigned_to1 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const HousekeepingTask1 = await HousekeepingTasks.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (HousekeepingTask1?.setAssigned_to)
                {
                    await
                    HousekeepingTask1.
                    setAssigned_to(relatedAssigned_to1);
                }
            
                const relatedAssigned_to2 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const HousekeepingTask2 = await HousekeepingTasks.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (HousekeepingTask2?.setAssigned_to)
                {
                    await
                    HousekeepingTask2.
                    setAssigned_to(relatedAssigned_to2);
                }
            
        }
        
    
        
    
        
    

    
    
    
        
            
            async function associateServiceRequestWithBooking() {
            
                const relatedBooking0 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const ServiceRequest0 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (ServiceRequest0?.setBooking)
                {
                    await
                    ServiceRequest0.
                    setBooking(relatedBooking0);
                }
            
                const relatedBooking1 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const ServiceRequest1 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (ServiceRequest1?.setBooking)
                {
                    await
                    ServiceRequest1.
                    setBooking(relatedBooking1);
                }
            
                const relatedBooking2 = await Bookings.findOne({
                    offset: Math.floor(Math.random() * (await Bookings.count())),
                });
                const ServiceRequest2 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (ServiceRequest2?.setBooking)
                {
                    await
                    ServiceRequest2.
                    setBooking(relatedBooking2);
                }
            
        }
        
    
        
            
            async function associateServiceRequestWithRoom() {
            
                const relatedRoom0 = await Rooms.findOne({
                    offset: Math.floor(Math.random() * (await Rooms.count())),
                });
                const ServiceRequest0 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (ServiceRequest0?.setRoom)
                {
                    await
                    ServiceRequest0.
                    setRoom(relatedRoom0);
                }
            
                const relatedRoom1 = await Rooms.findOne({
                    offset: Math.floor(Math.random() * (await Rooms.count())),
                });
                const ServiceRequest1 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (ServiceRequest1?.setRoom)
                {
                    await
                    ServiceRequest1.
                    setRoom(relatedRoom1);
                }
            
                const relatedRoom2 = await Rooms.findOne({
                    offset: Math.floor(Math.random() * (await Rooms.count())),
                });
                const ServiceRequest2 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (ServiceRequest2?.setRoom)
                {
                    await
                    ServiceRequest2.
                    setRoom(relatedRoom2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
            
            async function associateServiceRequestWithReported_by() {
            
                const relatedReported_by0 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const ServiceRequest0 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (ServiceRequest0?.setReported_by)
                {
                    await
                    ServiceRequest0.
                    setReported_by(relatedReported_by0);
                }
            
                const relatedReported_by1 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const ServiceRequest1 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (ServiceRequest1?.setReported_by)
                {
                    await
                    ServiceRequest1.
                    setReported_by(relatedReported_by1);
                }
            
                const relatedReported_by2 = await Guests.findOne({
                    offset: Math.floor(Math.random() * (await Guests.count())),
                });
                const ServiceRequest2 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (ServiceRequest2?.setReported_by)
                {
                    await
                    ServiceRequest2.
                    setReported_by(relatedReported_by2);
                }
            
        }
        
    
        
            
            async function associateServiceRequestWithAssigned_to() {
            
                const relatedAssigned_to0 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const ServiceRequest0 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (ServiceRequest0?.setAssigned_to)
                {
                    await
                    ServiceRequest0.
                    setAssigned_to(relatedAssigned_to0);
                }
            
                const relatedAssigned_to1 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const ServiceRequest1 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (ServiceRequest1?.setAssigned_to)
                {
                    await
                    ServiceRequest1.
                    setAssigned_to(relatedAssigned_to1);
                }
            
                const relatedAssigned_to2 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const ServiceRequest2 = await ServiceRequests.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (ServiceRequest2?.setAssigned_to)
                {
                    await
                    ServiceRequest2.
                    setAssigned_to(relatedAssigned_to2);
                }
            
        }
        
    
        
    
        
    
        
    

    
    
    
        
            
            async function associateContentPageWithHotel() {
            
                const relatedHotel0 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const ContentPage0 = await ContentPages.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (ContentPage0?.setHotel)
                {
                    await
                    ContentPage0.
                    setHotel(relatedHotel0);
                }
            
                const relatedHotel1 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const ContentPage1 = await ContentPages.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (ContentPage1?.setHotel)
                {
                    await
                    ContentPage1.
                    setHotel(relatedHotel1);
                }
            
                const relatedHotel2 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const ContentPage2 = await ContentPages.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (ContentPage2?.setHotel)
                {
                    await
                    ContentPage2.
                    setHotel(relatedHotel2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
    
        
            
            async function associateContentPageWithAuthor() {
            
                const relatedAuthor0 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const ContentPage0 = await ContentPages.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (ContentPage0?.setAuthor)
                {
                    await
                    ContentPage0.
                    setAuthor(relatedAuthor0);
                }
            
                const relatedAuthor1 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const ContentPage1 = await ContentPages.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (ContentPage1?.setAuthor)
                {
                    await
                    ContentPage1.
                    setAuthor(relatedAuthor1);
                }
            
                const relatedAuthor2 = await Users.findOne({
                    offset: Math.floor(Math.random() * (await Users.count())),
                });
                const ContentPage2 = await ContentPages.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (ContentPage2?.setAuthor)
                {
                    await
                    ContentPage2.
                    setAuthor(relatedAuthor2);
                }
            
        }
        
    

    
    
    
        
            
            async function associateSettingWithHotel() {
            
                const relatedHotel0 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const Setting0 = await Settings.findOne({
                    order: [['id', 'ASC']],
                    offset: 0
                });
                if (Setting0?.setHotel)
                {
                    await
                    Setting0.
                    setHotel(relatedHotel0);
                }
            
                const relatedHotel1 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const Setting1 = await Settings.findOne({
                    order: [['id', 'ASC']],
                    offset: 1
                });
                if (Setting1?.setHotel)
                {
                    await
                    Setting1.
                    setHotel(relatedHotel1);
                }
            
                const relatedHotel2 = await Hotels.findOne({
                    offset: Math.floor(Math.random() * (await Hotels.count())),
                });
                const Setting2 = await Settings.findOne({
                    order: [['id', 'ASC']],
                    offset: 2
                });
                if (Setting2?.setHotel)
                {
                    await
                    Setting2.
                    setHotel(relatedHotel2);
                }
            
        }
        
    
        
    
        
    
        
    
        
    


module.exports = {
    up: async (queryInterface, Sequelize) => {
        
            
            
            
            
            
                
                await Languages.bulkCreate(LanguagesData);
                
            
            
                
                await GdprConsents.bulkCreate(GdprConsentsData);
                
            
            
                
                await GdprRequests.bulkCreate(GdprRequestsData);
                
            
            
                
                await AuditLogs.bulkCreate(AuditLogsData);
                
            
            
                
                await Hotels.bulkCreate(HotelsData);
                
            
            
                
                await RoomTypes.bulkCreate(RoomTypesData);
                
            
            
                
                await Rooms.bulkCreate(RoomsData);
                
            
            
                
                await Amenities.bulkCreate(AmenitiesData);
                
            
            
                
                await RoomFeatures.bulkCreate(RoomFeaturesData);
                
            
            
                
                await RatePlans.bulkCreate(RatePlansData);
                
            
            
                
                await SeasonalRates.bulkCreate(SeasonalRatesData);
                
            
            
                
                await InventoryBlocks.bulkCreate(InventoryBlocksData);
                
            
            
                
                await Guests.bulkCreate(GuestsData);
                
            
            
                
                await Bookings.bulkCreate(BookingsData);
                
            
            
                
                await BookingGuests.bulkCreate(BookingGuestsData);
                
            
            
                
                await Payments.bulkCreate(PaymentsData);
                
            
            
                
                await Invoices.bulkCreate(InvoicesData);
                
            
            
                
                await Messages.bulkCreate(MessagesData);
                
            
            
                
                await PromoCodes.bulkCreate(PromoCodesData);
                
            
            
                
                await BookingDiscounts.bulkCreate(BookingDiscountsData);
                
            
            
                
                await HousekeepingTasks.bulkCreate(HousekeepingTasksData);
                
            
            
                
                await ServiceRequests.bulkCreate(ServiceRequestsData);
                
            
            
                
                await ContentPages.bulkCreate(ContentPagesData);
                
            
            
                
                await Settings.bulkCreate(SettingsData);
                
            
            await Promise.all([
            
                
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                        // Similar logic for "relation_many"
                    
                
            
                
                
                
                
                    
                
                    
                
                    
                
            
                
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateGdprRequestWithRequester(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                
                    
                        
                        await associateAuditLogWithActor(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateRoomTypeWithHotel(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                        // Similar logic for "relation_many"
                    
                
            
                
                
                    
                        
                        await associateRoomWithRoom_type(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                        // Similar logic for "relation_many"
                    
                
            
                
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateRatePlanWithHotel(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateSeasonalRateWithRoom_type(),
                    
                
                    
                        
                        await associateSeasonalRateWithRate_plan(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateInventoryBlockWithRoom_type(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                        
                        await associateGuestWithLinked_user(),
                    
                
                    
                        
                        await associateGuestWithGdpr_consent(),
                    
                
            
                
                
                    
                        
                        await associateBookingWithHotel(),
                    
                
                    
                        
                        await associateBookingWithPrimary_guest(),
                    
                
                    
                        
                        await associateBookingWithRoom_type(),
                    
                
                    
                        
                        await associateBookingWithRate_plan(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                        // Similar logic for "relation_many"
                    
                
                    
                        // Similar logic for "relation_many"
                    
                
                    
                        // Similar logic for "relation_many"
                    
                
                    
                        // Similar logic for "relation_many"
                    
                
            
                
                
                    
                        
                        await associateBookingGuestWithBooking(),
                    
                
                    
                        
                        await associateBookingGuestWithGuest(),
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associatePaymentWithBooking(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateInvoiceWithBooking(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateMessageWithBooking(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associatePromoCodeWithHotel(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateBookingDiscountWithBooking(),
                    
                
                    
                        
                        await associateBookingDiscountWithPromo_code(),
                    
                
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateHousekeepingTaskWithRoom(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                        
                        await associateHousekeepingTaskWithAssigned_to(),
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateServiceRequestWithBooking(),
                    
                
                    
                        
                        await associateServiceRequestWithRoom(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                        
                        await associateServiceRequestWithReported_by(),
                    
                
                    
                        
                        await associateServiceRequestWithAssigned_to(),
                    
                
                    
                
                    
                
                    
                
            
                
                
                    
                        
                        await associateContentPageWithHotel(),
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                        
                        await associateContentPageWithAuthor(),
                    
                
            
                
                
                    
                        
                        await associateSettingWithHotel(),
                    
                
                    
                
                    
                
                    
                
                    
                
            
            ]);
        
    },

    down: async (queryInterface, Sequelize) => {
        
            
            
            
            
            
            await queryInterface.bulkDelete('languages', null, {});
            
            
            await queryInterface.bulkDelete('gdpr_consents', null, {});
            
            
            await queryInterface.bulkDelete('gdpr_requests', null, {});
            
            
            await queryInterface.bulkDelete('audit_logs', null, {});
            
            
            await queryInterface.bulkDelete('hotels', null, {});
            
            
            await queryInterface.bulkDelete('room_types', null, {});
            
            
            await queryInterface.bulkDelete('rooms', null, {});
            
            
            await queryInterface.bulkDelete('amenities', null, {});
            
            
            await queryInterface.bulkDelete('room_features', null, {});
            
            
            await queryInterface.bulkDelete('rate_plans', null, {});
            
            
            await queryInterface.bulkDelete('seasonal_rates', null, {});
            
            
            await queryInterface.bulkDelete('inventory_blocks', null, {});
            
            
            await queryInterface.bulkDelete('guests', null, {});
            
            
            await queryInterface.bulkDelete('bookings', null, {});
            
            
            await queryInterface.bulkDelete('booking_guests', null, {});
            
            
            await queryInterface.bulkDelete('payments', null, {});
            
            
            await queryInterface.bulkDelete('invoices', null, {});
            
            
            await queryInterface.bulkDelete('messages', null, {});
            
            
            await queryInterface.bulkDelete('promo_codes', null, {});
            
            
            await queryInterface.bulkDelete('booking_discounts', null, {});
            
            
            await queryInterface.bulkDelete('housekeeping_tasks', null, {});
            
            
            await queryInterface.bulkDelete('service_requests', null, {});
            
            
            await queryInterface.bulkDelete('content_pages', null, {});
            
            
            await queryInterface.bulkDelete('settings', null, {});
            
        
    },
};