| 1 | begin;
|
|---|
| 2 |
|
|---|
| 3 | TRUNCATE table
|
|---|
| 4 | booking_services,
|
|---|
| 5 | sitter_services,
|
|---|
| 6 | booking_pets,
|
|---|
| 7 | admin_management,
|
|---|
| 8 | payments,
|
|---|
| 9 | reviews,
|
|---|
| 10 | bookings,
|
|---|
| 11 | services,
|
|---|
| 12 | pets,
|
|---|
| 13 | pet_types,
|
|---|
| 14 | pet_sitters,
|
|---|
| 15 | pet_owners,
|
|---|
| 16 | admins,
|
|---|
| 17 | users
|
|---|
| 18 | CASCADE;
|
|---|
| 19 |
|
|---|
| 20 | INSERT INTO users (username, first_name, last_name, password, email) VALUES
|
|---|
| 21 | ('admin_jana', 'Jana', 'Fedorova', '$2a$10$hashed_pw_jana', 'jana.admin@petsitter.mk'),
|
|---|
| 22 | ('owner_bogdan', 'Bogdan', 'Lavrov', '$2a$10$hashed_pw_bogdan', 'bogdan.lavrov@email.com'),
|
|---|
| 23 | ('owner_valentina', 'Valentina', 'Petrova', '$2a$10$hashed_pw_valentina', 'valentina.petrova@email.com'),
|
|---|
| 24 | ('sitter_felix', 'Felix', 'Kovacevic', '$2a$10$hashed_pw_felix', 'felix.sitter@email.com'),
|
|---|
| 25 | ('sitter_lily', 'Lily', 'Aksyonova', '$2a$10$hashed_pw_lily', 'lily.sitter@email.com');
|
|---|
| 26 |
|
|---|
| 27 | INSERT INTO pet_types (species, average_lifespan, needs_outdoor_walk) VALUES
|
|---|
| 28 | ('Dog', 13, TRUE),
|
|---|
| 29 | ('Cat', 15, FALSE),
|
|---|
| 30 | ('Rabbit', 9, FALSE);
|
|---|
| 31 |
|
|---|
| 32 | INSERT INTO services (type, description) VALUES
|
|---|
| 33 | ('Dog Walking', 'A 30 minute walk around the neighborhood.'),
|
|---|
| 34 | ('Overnight Stay', 'Pet sitting at the owners house and staying overnight.'),
|
|---|
| 35 | ('Short Visit', 'A 30 minute visit for feeding and playtime.');
|
|---|
| 36 |
|
|---|
| 37 | INSERT INTO admins (user_id)
|
|---|
| 38 | SELECT user_id FROM users WHERE username = 'admin_jana';
|
|---|
| 39 |
|
|---|
| 40 | INSERT INTO pet_owners (user_id)
|
|---|
| 41 | SELECT user_id FROM users WHERE username IN ('owner_bogdan', 'owner_valentina');
|
|---|
| 42 |
|
|---|
| 43 | INSERT INTO pet_sitters (user_id)
|
|---|
| 44 | SELECT user_id FROM users WHERE username IN ('sitter_felix', 'sitter_lily');
|
|---|
| 45 |
|
|---|
| 46 | INSERT INTO pets (name, photo, age, special_needs, description, owner_id, pettype_id) VALUES
|
|---|
| 47 | (
|
|---|
| 48 | 'Leo', 'https://t3.ftcdn.net/jpg/01/72/07/44/360_F_172074409_hADHhLMTjELdx0cMkycnzYFZZZz4OYbv.jpg', 3, 'Allergic to chicken', 'Very friendly golden retriever',
|
|---|
| 49 | (SELECT user_id FROM users WHERE username = 'owner_bogdan'),
|
|---|
| 50 | (SELECT pettype_id FROM pet_types WHERE species = 'Dog')
|
|---|
| 51 | ),
|
|---|
| 52 | (
|
|---|
| 53 | 'Dante', 'https://thumbs.dreamstime.com/b/beautiful-cat-isolated-white-background-44369507.jpg', 5, NULL, 'Loves to sleep in the sun',
|
|---|
| 54 | (SELECT user_id FROM users WHERE username = 'owner_valentina'),
|
|---|
| 55 | (SELECT pettype_id FROM pet_types WHERE species = 'Cat')
|
|---|
| 56 | );
|
|---|
| 57 |
|
|---|
| 58 | INSERT INTO bookings (status, date_from, date_to, address, owner_id, sitter_id) VALUES
|
|---|
| 59 | (
|
|---|
| 60 | 'Completed', '2026-05-01', '2026-05-02', 'bul. Partizanski Odredi br. 50, Skopje',
|
|---|
| 61 | (SELECT user_id FROM users WHERE username = 'owner_bogdan'),
|
|---|
| 62 | (SELECT user_id FROM users WHERE username = 'sitter_felix')
|
|---|
| 63 | ),
|
|---|
| 64 | (
|
|---|
| 65 | 'Confirmed', '2026-06-10', '2026-06-15', 'ul. Leninova br. 25, Skopje',
|
|---|
| 66 | (SELECT user_id FROM users WHERE username = 'owner_valentina'),
|
|---|
| 67 | (SELECT user_id FROM users WHERE username = 'sitter_lily')
|
|---|
| 68 | );
|
|---|
| 69 |
|
|---|
| 70 | INSERT INTO reviews (rating, comment, booking_id) VALUES
|
|---|
| 71 | (
|
|---|
| 72 | 5, 'Felix was great with Leo! Highly recommend.',
|
|---|
| 73 | (SELECT booking_id FROM bookings WHERE address = 'bul. Partizanski Odredi br. 50, Skopje')
|
|---|
| 74 | );
|
|---|
| 75 |
|
|---|
| 76 | INSERT INTO payments (amount, payment_type, booking_id) VALUES
|
|---|
| 77 | (
|
|---|
| 78 | 1500, 'Credit Card',
|
|---|
| 79 | (SELECT booking_id FROM bookings WHERE address = 'bul. Partizanski Odredi br. 50, Skopje')
|
|---|
| 80 | ),
|
|---|
| 81 | (
|
|---|
| 82 | 4000, 'Cash',
|
|---|
| 83 | (SELECT booking_id FROM bookings WHERE address = 'ul. Leninova br. 25, Skopje')
|
|---|
| 84 | );
|
|---|
| 85 |
|
|---|
| 86 | INSERT INTO admin_management (admin_id, user_id) VALUES
|
|---|
| 87 | (
|
|---|
| 88 | (SELECT user_id FROM users WHERE username = 'admin_jana'),
|
|---|
| 89 | (SELECT user_id FROM users WHERE username = 'owner_bogdan')
|
|---|
| 90 | );
|
|---|
| 91 |
|
|---|
| 92 | INSERT INTO booking_pets (booking_id, pet_id) VALUES
|
|---|
| 93 | (
|
|---|
| 94 | (SELECT booking_id FROM bookings WHERE address = 'bul. Partizanski Odredi br. 50, Skopje'),
|
|---|
| 95 | (SELECT pet_id FROM pets WHERE name = 'Leo')
|
|---|
| 96 | ),
|
|---|
| 97 | (
|
|---|
| 98 | (SELECT booking_id FROM bookings WHERE address = 'ul. Leninova br. 25, Skopje'),
|
|---|
| 99 | (SELECT pet_id FROM pets WHERE name = 'Dante')
|
|---|
| 100 | );
|
|---|
| 101 |
|
|---|
| 102 | INSERT INTO sitter_services (sitter_id, service_id) VALUES
|
|---|
| 103 | (
|
|---|
| 104 | (SELECT user_id FROM users WHERE username = 'sitter_felix'),
|
|---|
| 105 | (SELECT service_id FROM services WHERE type = 'Dog Walking')
|
|---|
| 106 | ),
|
|---|
| 107 | (
|
|---|
| 108 | (SELECT user_id FROM users WHERE username = 'sitter_felix'),
|
|---|
| 109 | (SELECT service_id FROM services WHERE type = 'Short Visit')
|
|---|
| 110 | ),
|
|---|
| 111 | (
|
|---|
| 112 | (SELECT user_id FROM users WHERE username = 'sitter_lily'),
|
|---|
| 113 | (SELECT service_id FROM services WHERE type = 'Overnight Stay')
|
|---|
| 114 | );
|
|---|
| 115 |
|
|---|
| 116 | INSERT INTO booking_services (booking_id, service_id) VALUES
|
|---|
| 117 | (
|
|---|
| 118 | (SELECT booking_id FROM bookings WHERE address = 'bul. Partizanski Odredi br. 50, Skopje'),
|
|---|
| 119 | (SELECT service_id FROM services WHERE type = 'Dog Walking')
|
|---|
| 120 | ),
|
|---|
| 121 | (
|
|---|
| 122 | (SELECT booking_id FROM bookings WHERE address = 'ul. Leninova br. 25, Skopje'),
|
|---|
| 123 | (SELECT service_id FROM services WHERE type = 'Overnight Stay')
|
|---|
| 124 | );
|
|---|
| 125 |
|
|---|
| 126 | commit; |
|---|