RelationalDesign: data_load.sql

File data_load.sql, 11.1 KB (added by 213257, 2 weeks ago)
Line 
1SET search_path TO project;
2
3TRUNCATE TABLE appointment CASCADE;
4TRUNCATE TABLE inquiry CASCADE;
5TRUNCATE TABLE timeslot CASCADE;
6TRUNCATE TABLE client CASCADE;
7TRUNCATE TABLE agent CASCADE;
8TRUNCATE TABLE unit CASCADE;
9TRUNCATE TABLE floor CASCADE;
10TRUNCATE TABLE designs CASCADE;
11TRUNCATE TABLE building CASCADE;
12TRUNCATE TABLE architect CASCADE;
13TRUNCATE TABLE admin CASCADE;
14
15INSERT INTO admin (name, email, password) VALUES
16('Nikola', 'nikola@example.com', '$2a$10$hashed_password_nikola'),
17('Kiril', 'kiril@example.com', '$2a$10$hashed_password_kiril');
18
19INSERT INTO architect (full_name) VALUES
20('Stefan'),
21('Aleksandar');
22
23INSERT INTO building (name, address, description, admin_id) VALUES
24('Golden Tower', 'Prashka 15', 'Luxury living in the heart of the city', (SELECT admin_id FROM admin WHERE name = 'Nikola')),
25('Azure Block', 'Rimska 23', 'Modern housing in a quiet neighbourhood', (SELECT admin_id FROM admin WHERE name = 'Kiril')),
26('City Wall', 'Hristo Tatarchev 18', 'All you need housing for city living', (SELECT admin_id FROM admin WHERE name = 'Nikola'));
27
28INSERT INTO designs (architect_id, building_id) VALUES
29((SELECT architect_id FROM architect WHERE full_name = 'Stefan'), (SELECT building_id FROM building WHERE name = 'Golden Tower')),
30((SELECT architect_id FROM architect WHERE full_name = 'Aleksandar'), (SELECT building_id FROM building WHERE name = 'Azure Block')),
31((SELECT architect_id FROM architect WHERE full_name = 'Stefan'), (SELECT building_id FROM building WHERE name = 'City Wall'));
32
33INSERT INTO floor (floor_number, layout_image, building_id, admin_id) VALUES
34(1, 'golden_tower_floor1.jpg', (SELECT building_id FROM building WHERE name = 'Golden Tower'), (SELECT admin_id FROM admin WHERE name = 'Nikola')),
35(2, 'golden_tower_floor2.jpg', (SELECT building_id FROM building WHERE name = 'Golden Tower'), (SELECT admin_id FROM admin WHERE name = 'Nikola')),
36(3, 'golden_tower_floor3.jpg', (SELECT building_id FROM building WHERE name = 'Golden Tower'), (SELECT admin_id FROM admin WHERE name = 'Nikola')),
37(1, 'azure_block_floor1.jpg', (SELECT building_id FROM building WHERE name = 'Azure Block'), (SELECT admin_id FROM admin WHERE name = 'Kiril')),
38(2, 'azure_block_floor2.jpg', (SELECT building_id FROM building WHERE name = 'Azure Block'), (SELECT admin_id FROM admin WHERE name = 'Kiril')),
39(1, 'city_wall_floor1.jpg', (SELECT building_id FROM building WHERE name = 'City Wall'), (SELECT admin_id FROM admin WHERE name = 'Nikola')),
40(2, 'city_wall_floor2.jpg', (SELECT building_id FROM building WHERE name = 'City Wall'), (SELECT admin_id FROM admin WHERE name = 'Nikola'));
41
42INSERT INTO unit (unit_number, room_number, floor_area, status, price, image, floorplan, vector_image, floor_id, admin_id) VALUES
43('101', 2, 75.00, 'Available', 85000.00, 'unit_101.jpg', 'plan_101.pdf', 'vector_101.svg',
44 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 1),
45 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
46('102', 3, 95.00, 'Available', 110000.00, 'unit_102.jpg', 'plan_102.pdf', 'vector_102.svg',
47 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 1),
48 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
49('201', 2, 75.00, 'Reserved', 87000.00, 'unit_201.jpg', 'plan_201.pdf', 'vector_201.svg',
50 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 2),
51 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
52('202', 3, 95.00, 'Available', 112000.00, 'unit_202.jpg', 'plan_202.pdf', 'vector_202.svg',
53 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 2),
54 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
55('301', 2, 75.00, 'Available', 89000.00, 'unit_301.jpg', 'plan_301.pdf', 'vector_301.svg',
56 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 3),
57 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
58('302', 3, 95.00, 'Sold', 114000.00, 'unit_302.jpg', 'plan_302.pdf', 'vector_302.svg',
59 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 3),
60 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
61('101', 2, 80.00, 'Available', 92000.00, 'unit_101.jpg', 'plan_101.pdf', 'vector_101.svg',
62 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Azure Block') AND floor_number = 1),
63 (SELECT admin_id FROM admin WHERE name = 'Kiril')),
64('102', 1, 55.00, 'Available', 68000.00, 'unit_102.jpg', 'plan_102.pdf', 'vector_102.svg',
65 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Azure Block') AND floor_number = 1),
66 (SELECT admin_id FROM admin WHERE name = 'Kiril')),
67('201', 2, 80.00, 'Available', 94000.00, 'unit_201.jpg', 'plan_201.pdf', 'vector_201.svg',
68 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Azure Block') AND floor_number = 2),
69 (SELECT admin_id FROM admin WHERE name = 'Kiril')),
70('202', 1, 55.00, 'Reserved', 70000.00, 'unit_202.jpg', 'plan_202.pdf', 'vector_202.svg',
71 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Azure Block') AND floor_number = 2),
72 (SELECT admin_id FROM admin WHERE name = 'Kiril')),
73('101', 2, 70.00, 'Available', 78000.00, 'unit_101.jpg', 'plan_101.pdf', 'vector_101.svg',
74 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'City Wall') AND floor_number = 1),
75 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
76('102', 3, 90.00, 'Available', 98000.00, 'unit_102.jpg', 'plan_102.pdf', 'vector_102.svg',
77 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'City Wall') AND floor_number = 1),
78 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
79('201', 2, 70.00, 'Available', 80000.00, 'unit_201.jpg', 'plan_201.pdf', 'vector_201.svg',
80 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'City Wall') AND floor_number = 2),
81 (SELECT admin_id FROM admin WHERE name = 'Nikola')),
82('202', 3, 90.00, 'Available', 100000.00, 'unit_202.jpg', 'plan_202.pdf', 'vector_202.svg',
83 (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'City Wall') AND floor_number = 2),
84 (SELECT admin_id FROM admin WHERE name = 'Nikola'));
85
86INSERT INTO agent (name, email, password) VALUES
87('Teodora', 'teodora@example.com', '$2a$10$hashed_password_teodora'),
88('Bojana', 'bojana@example. com', '$2a$10$hashed_password_bojana'),
89('Vasil', 'vasil@example.com', '$2a$10$hashed_password_vasil');
90
91INSERT INTO client (name, email, phone) VALUES
92('Marko', 'marko@gmail.com', '+389 73 123 456'),
93('Ana', 'ana@yahoo.com', '+389 73 234 567'),
94('Ivan', 'ivan@hotmail.com', '+389 73 345 678'),
95('Elena', 'elena@gmail.com', '+389 73 456 789'),
96('Darko', 'darko@gmail.com', '+389 73 567 890');
97
98INSERT INTO timeslot (date, time_start, time_end, status, agent_id) VALUES
99('2025-01-10', '10:00:00', '11:00:00', 'Available', (SELECT agent_id FROM agent WHERE name = 'Teodora')),
100('2025-01-10', '14:00:00', '15:00:00', 'Booked', (SELECT agent_id FROM agent WHERE name = 'Teodora')),
101('2025-01-11', '09:00:00', '10:00:00', 'Available', (SELECT agent_id FROM agent WHERE name = 'Bojana')),
102('2025-01-11', '11:00:00', '12:00:00', 'Booked', (SELECT agent_id FROM agent WHERE name = 'Bojana')),
103('2025-01-12', '15:00:00', '16:00:00', 'Available', (SELECT agent_id FROM agent WHERE name = 'Vasil')),
104('2025-01-13', '10:00:00', '11:00:00', 'Booked', (SELECT agent_id FROM agent WHERE name = 'Vasil'));
105
106INSERT INTO inquiry (message, status, created_at, unit_id, client_id, agent_id) VALUES
107('Hi, is unit 101 still available?', 'Replied', '2025-01-05 10:30:00',
108 (SELECT unit_id FROM unit WHERE unit_number = '101' AND floor_id = (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 1)),
109 (SELECT client_id FROM client WHERE name = 'Marko'),
110 (SELECT agent_id FROM agent WHERE name = 'Teodora')),
111('Unit 202 more images.', 'New', '2025-01-06 14:20:00',
112 (SELECT unit_id FROM unit WHERE unit_number = '202' AND floor_id = (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 2)),
113 (SELECT client_id FROM client WHERE name = 'Ana'),
114 (SELECT agent_id FROM agent WHERE name = 'Teodora')),
115('What is included with this unit?', 'Replied', '2025-01-07 09:15:00',
116 (SELECT unit_id FROM unit WHERE unit_number = '101' AND floor_id = (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Azure Block') AND floor_number = 1)),
117 (SELECT client_id FROM client WHERE name = 'Ivan'),
118 (SELECT agent_id FROM agent WHERE name = 'Bojana')),
119('Is parking included? ', 'Replied', '2025-01-07 13:30:00',
120 (SELECT unit_id FROM unit WHERE unit_number = '101' AND floor_id = (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'City Wall') AND floor_number = 1)),
121 (SELECT client_id FROM client WHERE name = 'Elena'),
122 (SELECT agent_id FROM agent WHERE name = 'Vasil')),
123('Interested in unit 301, please call me', 'New', '2025-01-08 16:45:00',
124 (SELECT unit_id FROM unit WHERE unit_number = '301' AND floor_id = (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 3)),
125 (SELECT client_id FROM client WHERE name = 'Darko'),
126 (SELECT agent_id FROM agent WHERE name = 'Teodora'));
127
128INSERT INTO appointment (status, client_id, unit_id, timeslot_id, agent_id) VALUES
129('Scheduled',
130 (SELECT client_id FROM client WHERE name = 'Marko'),
131 (SELECT unit_id FROM unit WHERE unit_number = '101' AND floor_id = (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 1)),
132 (SELECT timeslot_id FROM timeslot WHERE date = '2025-01-10' AND time_start = '14:00:00'),
133 (SELECT agent_id FROM agent WHERE name = 'Teodora')),
134('Scheduled',
135 (SELECT client_id FROM client WHERE name = 'Ivan'),
136 (SELECT unit_id FROM unit WHERE unit_number = '101' AND floor_id = (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Azure Block') AND floor_number = 1)),
137 (SELECT timeslot_id FROM timeslot WHERE date = '2025-01-11' AND time_start = '11:00:00'),
138 (SELECT agent_id FROM agent WHERE name = 'Bojana')),
139('Completed',
140 (SELECT client_id FROM client WHERE name = 'Elena'),
141 (SELECT unit_id FROM unit WHERE unit_number = '101' AND floor_id = (SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'City Wall') AND floor_number = 1)),
142 (SELECT timeslot_id FROM timeslot WHERE date = '2025-01-13' AND time_start = '10:00:00'),
143 (SELECT agent_id FROM agent WHERE name = 'Vasil'));