845 lines
27 KiB
SQL
845 lines
27 KiB
SQL
CREATE TABLE complex_house_plans (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
house_id BIGINT UNSIGNED NOT NULL,
|
||
light_angle INT NULL,
|
||
has_light_angle TINYINT DEFAULT 0 NULL,
|
||
is_3d TINYINT DEFAULT 0 NULL,
|
||
code varchar(255) COLLATE utf8_general_ci NULL,
|
||
`3d_url` varchar(255) COLLATE utf8_general_ci NULL,
|
||
CONSTRAINT complex_house_plans_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
CREATE TABLE `complex_entrances` (
|
||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||
`name` varchar(255) NOT NULL,
|
||
`position` int(11) NOT NULL,
|
||
`complex_house_id` bigint(20) unsigned NOT NULL,
|
||
PRIMARY KEY (`id`),
|
||
KEY `complex_entrances_FK` (`complex_house_id`),
|
||
CONSTRAINT `complex_entrances_FK` FOREIGN KEY (`complex_house_id`) REFERENCES `complex_houses` (`id`) ON DELETE CASCADE
|
||
) ENGINE = InnoDB AUTO_INCREMENT = 50 DEFAULT CHARSET = utf8;
|
||
|
||
CREATE TABLE complex_house_plans_images (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
plan_id BIGINT UNSIGNED NOT NULL,
|
||
is_main TINYINT DEFAULT 0 NULL,
|
||
`position` INT DEFAULT 1 NULL,
|
||
url VARCHAR(255) COLLATE utf8_general_ci NULL,
|
||
name varchar(255) COLLATE utf8_general_ci NULL,
|
||
CONSTRAINT complex_house_plans_images_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
CREATE TABLE `complex_rooms` (
|
||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||
`position` int(11) NOT NULL,
|
||
`type` enum(
|
||
'apartment',
|
||
'apartments',
|
||
'parking_space',
|
||
'office',
|
||
'storage_room',
|
||
'warehouse',
|
||
'retail_space',
|
||
'commercial_space',
|
||
'townhouse',
|
||
'villa',
|
||
'penthouse',
|
||
'duplex',
|
||
'cottage'
|
||
) NOT NULL DEFAULT 'apartment',
|
||
`floor_id` bigint(20) unsigned NOT NULL,
|
||
`number` varchar(100) NOT NULL,
|
||
`rooms_count` int(11) NOT NULL,
|
||
`area` int(11) NOT NULL,
|
||
`status` enum(
|
||
'not_for_sale',
|
||
'sold',
|
||
'reservation',
|
||
'available'
|
||
) NOT NULL,
|
||
`total_amount` bigint(20) NOT NULL,
|
||
`layout_code` varchar(100) DEFAULT NULL,
|
||
`payment_types` varchar(255) DEFAULT '[]',
|
||
`layout_feature` enum(
|
||
'none_of_the_above',
|
||
'studio',
|
||
'european_layout',
|
||
'available'
|
||
) DEFAULT NULL,
|
||
`on_site_number` int(11) DEFAULT NULL,
|
||
`description` text,
|
||
`windows_placement_id` int(11) DEFAULT NULL,
|
||
`decoration_id` bigint(20) unsigned DEFAULT NULL,
|
||
`estimated_area` decimal(8, 1) DEFAULT NULL,
|
||
`living_area` decimal(8, 1) DEFAULT NULL,
|
||
`kitchen_area` decimal(8, 1) DEFAULT NULL,
|
||
`loggias_count` int(11) DEFAULT NULL,
|
||
`balconies_count` int(11) DEFAULT NULL,
|
||
`combined_bathrooms_count` int(11) DEFAULT NULL,
|
||
`seperated_bathrooms_count` int(11) DEFAULT NULL,
|
||
`bti_room_number` varchar(100) DEFAULT NULL,
|
||
`bti_total_area` int(11) DEFAULT NULL,
|
||
`area_without_balcony` int(11) DEFAULT NULL,
|
||
`hallway_area` int(11) DEFAULT NULL,
|
||
`ceiling_height` decimal(4, 2) DEFAULT NULL,
|
||
PRIMARY KEY (`id`),
|
||
KEY `complex_rooms_FK` (`floor_id`),
|
||
CONSTRAINT `complex_rooms_FK` FOREIGN KEY (`floor_id`) REFERENCES `complex_floors` (`id`) ON DELETE CASCADE
|
||
) ENGINE = InnoDB AUTO_INCREMENT = 1503 DEFAULT CHARSET = utf8;
|
||
|
||
CREATE TABLE complex_rooms_plans (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
room_id BIGINT UNSIGNED NULL,
|
||
plan_id BIGINT UNSIGNED NOT NULL,
|
||
CONSTRAINT complex_rooms_plans_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
CREATE TABLE complex_house_floor_plans (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
house_id BIGINT UNSIGNED NOT NULL,
|
||
light_angle INT NULL,
|
||
has_light_angle TINYINT(1) DEFAULT 0 NOT NULL,
|
||
is_use_all_entrances TINYINT(1) DEFAULT 0 NOT NULL,
|
||
entrances json NULL,
|
||
floor_positions json NULL,
|
||
image VARCHAR(255) COLLATE utf8_general_ci NULL,
|
||
name varchar(255) COLLATE utf8_general_ci NULL,
|
||
CONSTRAINT complex_house_floor_plans_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
CREATE TABLE complex_floors_plans (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
floor_id BIGINT UNSIGNED NOT NULL,
|
||
floor_plan_id BIGINT UNSIGNED NOT NULL,
|
||
CONSTRAINT complex_floors_plans_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
CREATE TABLE `complex_floors` (
|
||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||
`position` int(11) NOT NULL,
|
||
`complex_entrance_id` bigint(20) unsigned NOT NULL,
|
||
`alignment` enum('left', 'center', 'right') NOT NULL DEFAULT 'left',
|
||
PRIMARY KEY (`id`),
|
||
KEY `complex_floors_FK` (`complex_entrance_id`),
|
||
CONSTRAINT `complex_floors_FK` FOREIGN KEY (`complex_entrance_id`) REFERENCES `complex_entrances` (`id`) ON DELETE CASCADE
|
||
) ENGINE = InnoDB AUTO_INCREMENT = 399 DEFAULT CHARSET = utf8;
|
||
|
||
CREATE TABLE complex_floor_plan_figures (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
floor_plan_id BIGINT UNSIGNED NOT NULL,
|
||
room_plan_id BIGINT UNSIGNED NULL,
|
||
background varchar(100) COLLATE utf8_general_ci NULL,
|
||
points json NULL,
|
||
CONSTRAINT complex_floor_plan_figures_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
CREATE TABLE complex_house_images (
|
||
id bigint(20) unsigned auto_increment NOT NULL,
|
||
house_id bigint(20) unsigned NOT NULL,
|
||
url varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
|
||
name varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
|
||
CONSTRAINT `PRIMARY` PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci COMMENT = '';
|
||
|
||
CREATE TABLE complex_house_facades (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
house_id BIGINT UNSIGNED NOT NULL,
|
||
name varchar(255) NULL,
|
||
is_published TINYINT(1) DEFAULT 0 NOT NULL,
|
||
hover_color varchar(100) COLLATE utf8_general_ci NULL,
|
||
opacity varchar(100) COLLATE utf8_general_ci NULL,
|
||
image varchar(255) COLLATE utf8_general_ci NULL,
|
||
`position` INT NULL,
|
||
CONSTRAINT complex_house_facades_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
CREATE TABLE complex_facade_figures (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
facade_id BIGINT UNSIGNED NOT NULL,
|
||
floor_id BIGINT UNSIGNED NULL,
|
||
entrance_id BIGINT UNSIGNED NULL,
|
||
points json NULL,
|
||
CONSTRAINT complex_facade_figures_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
CREATE TABLE `complex_rooms` (
|
||
`id` bigint(20) UNSIGNED NOT NULL,
|
||
`position` int(11) DEFAULT NULL,
|
||
`type` enum(
|
||
'apartment',
|
||
'apartments',
|
||
'parking_space',
|
||
'office',
|
||
'storage_room',
|
||
'warehouse',
|
||
'retail_space',
|
||
'commercial_space',
|
||
'townhouse',
|
||
'villa',
|
||
'penthouse',
|
||
'duplex',
|
||
'cottage'
|
||
) CHARACTER SET latin1 DEFAULT NULL,
|
||
`floor_id` bigint(20) UNSIGNED DEFAULT NULL,
|
||
`number` varchar(100) DEFAULT NULL,
|
||
`rooms_count` int(11) DEFAULT NULL,
|
||
`area` int(11) DEFAULT NULL,
|
||
`status` enum(
|
||
'not_for_sale',
|
||
'sold',
|
||
'reservation',
|
||
'available'
|
||
) CHARACTER SET latin1 DEFAULT NULL,
|
||
`total_amount` bigint(20) DEFAULT NULL,
|
||
`layout_code` varchar(100) DEFAULT NULL,
|
||
`payment_types` varchar(255) CHARACTER SET latin1 DEFAULT NULL,
|
||
`layout_feature` enum(
|
||
'none_of_the_above',
|
||
'studio',
|
||
'european_layout',
|
||
'available'
|
||
) CHARACTER SET latin1 DEFAULT NULL,
|
||
`on_site_number` int(11) DEFAULT NULL,
|
||
`description` text CHARACTER SET latin1,
|
||
`windows_placement_id` int(11) DEFAULT NULL,
|
||
`decoration_id` bigint(20) UNSIGNED DEFAULT NULL,
|
||
`estimated_area` decimal(8, 1) DEFAULT NULL,
|
||
`living_area` decimal(8, 1) DEFAULT NULL,
|
||
`kitchen_area` decimal(8, 1) DEFAULT NULL,
|
||
`loggias_count` int(11) DEFAULT NULL,
|
||
`balconies_count` int(11) DEFAULT NULL,
|
||
`combined_bathrooms_count` int(11) DEFAULT NULL,
|
||
`seperated_bathrooms_count` int(11) DEFAULT NULL,
|
||
`bti_room_number` varchar(100) DEFAULT NULL,
|
||
`bti_total_area` int(11) DEFAULT NULL,
|
||
`area_without_balcony` int(11) DEFAULT NULL,
|
||
`hallway_area` int(11) DEFAULT NULL,
|
||
`ceiling_height` decimal(4, 2) DEFAULT NULL
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
|
||
|
||
ALTER TABLE `complex_rooms`
|
||
ADD PRIMARY KEY (`id`),
|
||
ADD KEY `complex_rooms_FK` (`floor_id`);
|
||
|
||
ALTER TABLE `complex_rooms`
|
||
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||
AUTO_INCREMENT = 1;
|
||
|
||
ALTER TABLE complex_metro
|
||
ADD subway_type varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
|
||
|
||
ALTER TABLE user_permissions
|
||
ADD menu_complexes TINYINT(4) DEFAULT 0 NOT NULL COMMENT 'Видимость: 0 - нет, 1 - да';
|
||
|
||
ALTER TABLE complex_houses ADD is_archive TINYINT(1) DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_list ADD rayon_id BIGINT UNSIGNED NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
CHANGE windows_placement windows_placement_id INT NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN windows_placement_id INT NULL;
|
||
|
||
CREATE TABLE complex_rooms_windows_placements (
|
||
id INT auto_increment NOT NULL,
|
||
name varchar(255) COLLATE utf8_general_ci NOT NULL,
|
||
CONSTRAINT complex_rooms_windows_placements_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
INSERT INTO
|
||
complex_rooms_windows_placements (name)
|
||
VALUES ('Во двор'),
|
||
('На улицу'),
|
||
('Во двор и на улицу'),
|
||
('В парк'),
|
||
('Во двор и сквер'),
|
||
('Во двор-колодец'),
|
||
('Зеленый двор'),
|
||
('На 2 стороны'),
|
||
('На 3 стороны'),
|
||
('На залив'),
|
||
('На залив и во двор'),
|
||
('На залив и на улицу'),
|
||
('На лес'),
|
||
('На лес и во двор'),
|
||
('На набережную'),
|
||
('На набережную и в сквер'),
|
||
('На набережную и во двор'),
|
||
('На реку'),
|
||
('На озеро'),
|
||
('На площадь'),
|
||
('На площадь и во двор'),
|
||
('На поляну'),
|
||
('На пруды'),
|
||
('На сквер'),
|
||
('На собор'),
|
||
('На улицу'),
|
||
('На улицу и в парк'),
|
||
('На улицу и в сквер'),
|
||
('На улицу и на воду'),
|
||
('Панорама на город'),
|
||
('На море'),
|
||
('На горы'),
|
||
('На море и горы');
|
||
|
||
CREATE TABLE `complex_floors` (
|
||
`id` bigint(20) UNSIGNED NOT NULL,
|
||
`position` int(11) DEFAULT NULL,
|
||
`complex_entrance_id` bigint(20) UNSIGNED DEFAULT NULL,
|
||
`alignment` enum('left', 'center', 'right') DEFAULT 'left'
|
||
) ENGINE = InnoDB DEFAULT CHARSET = latin1;
|
||
|
||
ALTER TABLE `complex_floors`
|
||
ADD PRIMARY KEY (`id`),
|
||
ADD KEY `complex_floors_FK` (`complex_entrance_id`);
|
||
|
||
ALTER TABLE `complex_floors`
|
||
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||
AUTO_INCREMENT = 1;
|
||
|
||
ALTER TABLE `complex_rooms`
|
||
ADD CONSTRAINT `complex_rooms_FK` FOREIGN KEY (`floor_id`) REFERENCES `complex_floors` (`id`) ON DELETE CASCADE;
|
||
|
||
CREATE TABLE `complex_entrances` (
|
||
`id` bigint(20) UNSIGNED NOT NULL,
|
||
`name` varchar(255) DEFAULT NULL,
|
||
`position` int(11) DEFAULT NULL,
|
||
`complex_house_id` bigint(20) UNSIGNED DEFAULT NULL
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4;
|
||
|
||
ALTER TABLE `complex_entrances`
|
||
ADD PRIMARY KEY (`id`),
|
||
ADD KEY `complex_entrances_FK` (`complex_house_id`);
|
||
|
||
ALTER TABLE `complex_entrances`
|
||
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||
AUTO_INCREMENT = 1;
|
||
|
||
ALTER TABLE `complex_entrances`
|
||
ADD CONSTRAINT `complex_entrances_FK` FOREIGN KEY (`complex_house_id`) REFERENCES `complex_houses` (`id`) ON DELETE CASCADE;
|
||
|
||
ALTER TABLE complex_address
|
||
CHANGE rayon_id rayon VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
|
||
|
||
ALTER TABLE complex_address
|
||
MODIFY COLUMN rayon VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
|
||
|
||
ALTER TABLE complex_address
|
||
ADD CONSTRAINT complex_address_PK PRIMARY KEY (id);
|
||
|
||
ALTER TABLE complex_address
|
||
MODIFY COLUMN id int(11) auto_increment NOT NULL;
|
||
|
||
ALTER TABLE requisitions
|
||
ADD status varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
|
||
|
||
ALTER TABLE requisitions ADD complex_room_id BIGINT UNSIGNED NULL;
|
||
|
||
DELETE FROM complex_floors
|
||
WHERE
|
||
complex_entrance_id NOT IN(
|
||
SELECT id
|
||
FROM complex_entrances
|
||
);
|
||
# USE THIS TO DELETE OLD RECORDS FROM DEV SERVER
|
||
ALTER TABLE complex_floors ADD CONSTRAINT complex_floors_FK FOREIGN KEY (complex_entrance_id) REFERENCES complex_entrances(id) ON DELETE CASCADE;
|
||
|
||
ALTER TABLE complex_houses
|
||
MODIFY COLUMN id bigint(20) unsigned auto_increment NOT NULL;
|
||
|
||
DELETE FROM complex_houses
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_houses
|
||
ADD CONSTRAINT complex_houses_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_house_facades
|
||
WHERE
|
||
house_id NOT IN(
|
||
SELECT id
|
||
FROM complex_houses
|
||
);
|
||
|
||
ALTER TABLE complex_house_facades
|
||
ADD CONSTRAINT complex_house_facades_FK FOREIGN KEY (house_id) REFERENCES complex_houses (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_house_floor_plans
|
||
WHERE
|
||
house_id NOT IN(
|
||
SELECT id
|
||
FROM complex_houses
|
||
);
|
||
|
||
ALTER TABLE complex_house_floor_plans
|
||
ADD CONSTRAINT complex_house_floor_plans_FK FOREIGN KEY (house_id) REFERENCES complex_houses (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_house_images
|
||
WHERE
|
||
house_id NOT IN(
|
||
SELECT id
|
||
FROM complex_houses
|
||
);
|
||
|
||
ALTER TABLE complex_house_images
|
||
ADD CONSTRAINT complex_house_images_FK FOREIGN KEY (house_id) REFERENCES complex_houses (id) ON DELETE CASCADE;
|
||
|
||
ALTER TABLE complex_house_metro
|
||
MODIFY COLUMN house_id bigint(20) unsigned NOT NULL;
|
||
|
||
DELETE FROM complex_house_metro
|
||
WHERE
|
||
house_id NOT IN(
|
||
SELECT id
|
||
FROM complex_houses
|
||
);
|
||
|
||
ALTER TABLE complex_house_metro
|
||
ADD CONSTRAINT complex_house_metro_FK FOREIGN KEY (house_id) REFERENCES complex_houses (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_house_plans
|
||
WHERE
|
||
house_id NOT IN(
|
||
SELECT id
|
||
FROM complex_houses
|
||
);
|
||
|
||
ALTER TABLE complex_house_plans
|
||
ADD CONSTRAINT complex_house_plans_FK FOREIGN KEY (house_id) REFERENCES complex_houses (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_house_plans_images
|
||
WHERE
|
||
plan_id NOT IN(
|
||
SELECT id
|
||
FROM complex_house_plans
|
||
);
|
||
|
||
ALTER TABLE complex_house_plans_images
|
||
ADD CONSTRAINT complex_house_plans_images_FK FOREIGN KEY (plan_id) REFERENCES complex_house_plans (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_address
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_address
|
||
ADD CONSTRAINT complex_address_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_actions
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_actions
|
||
ADD CONSTRAINT complex_actions_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_advert
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_advert
|
||
ADD CONSTRAINT complex_advert_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_corpuses
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_corpuses
|
||
ADD CONSTRAINT complex_corpuses_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_dop
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_dop
|
||
ADD CONSTRAINT complex_dop_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_entrances
|
||
WHERE
|
||
complex_house_id NOT IN(
|
||
SELECT id
|
||
FROM complex_houses
|
||
);
|
||
|
||
ALTER TABLE complex_entrances
|
||
ADD CONSTRAINT complex_entrances_FK FOREIGN KEY (complex_house_id) REFERENCES complex_houses (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_facade_figures
|
||
WHERE
|
||
facade_id NOT IN(
|
||
SELECT id
|
||
FROM complex_house_facades
|
||
);
|
||
|
||
ALTER TABLE complex_facade_figures
|
||
ADD CONSTRAINT complex_facade_figures_FK FOREIGN KEY (facade_id) REFERENCES complex_house_facades (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_floor_plan_figures
|
||
WHERE
|
||
floor_plan_id NOT IN(
|
||
SELECT id
|
||
FROM complex_house_floor_plans
|
||
);
|
||
|
||
ALTER TABLE complex_floor_plan_figures
|
||
ADD CONSTRAINT complex_floor_plan_figures_FK FOREIGN KEY (floor_plan_id) REFERENCES complex_house_floor_plans (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_floors_plans
|
||
WHERE
|
||
floor_id NOT IN(
|
||
SELECT id
|
||
FROM complex_floors
|
||
);
|
||
|
||
ALTER TABLE complex_floors_plans
|
||
ADD CONSTRAINT complex_floors_plans_FK FOREIGN KEY (floor_plan_id) REFERENCES complex_house_floor_plans (id) ON DELETE CASCADE;
|
||
|
||
ALTER TABLE complex_floors_plans
|
||
ADD CONSTRAINT complex_floors_plans_FK_floor FOREIGN KEY (floor_id) REFERENCES complex_floors (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_images
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_images
|
||
ADD CONSTRAINT complex_images_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_infrastructure
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_infrastructure
|
||
ADD CONSTRAINT complex_infrastructure_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_metro
|
||
WHERE
|
||
complex_id NOT IN(
|
||
SELECT id
|
||
FROM complex_list
|
||
);
|
||
|
||
ALTER TABLE complex_metro
|
||
ADD CONSTRAINT complex_metro_FK FOREIGN KEY (complex_id) REFERENCES complex_list (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_rooms
|
||
WHERE
|
||
floor_id NOT IN(
|
||
SELECT id
|
||
FROM complex_floors
|
||
);
|
||
|
||
ALTER TABLE complex_rooms
|
||
ADD CONSTRAINT complex_rooms_FK FOREIGN KEY (floor_id) REFERENCES complex_floors (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_rooms_plans
|
||
WHERE
|
||
room_id NOT IN(
|
||
SELECT id
|
||
FROM complex_rooms
|
||
);
|
||
|
||
ALTER TABLE complex_rooms_plans
|
||
ADD CONSTRAINT complex_rooms_plans_FK FOREIGN KEY (room_id) REFERENCES complex_rooms (id) ON DELETE CASCADE;
|
||
|
||
DELETE FROM complex_rooms_plans
|
||
WHERE
|
||
plan_id NOT IN(
|
||
SELECT id
|
||
FROM complex_house_plans
|
||
);
|
||
|
||
ALTER TABLE complex_rooms_plans
|
||
ADD CONSTRAINT complex_rooms_plans_FK_1 FOREIGN KEY (plan_id) REFERENCES complex_house_plans (id) ON DELETE CASCADE;
|
||
|
||
CREATE TABLE job_delete_files (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
url varchar(500) COLLATE utf8_general_ci NOT NULL,
|
||
CONSTRAINT job_delete_files_PK PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
|
||
|
||
-- ROOMS ADD
|
||
ALTER TABLE complex_rooms
|
||
ADD ceiling_height DECIMAL(4, 2) CHECK (
|
||
value > 0
|
||
AND value <= 99.99
|
||
)
|
||
|
||
-- HOUSE ADD
|
||
ALTER TABLE complex_houses ADD `security` TINYINT(1) DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_houses
|
||
ADD parking varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
|
||
|
||
ALTER TABLE complex_houses ADD fenced_area TINYINT(1) DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_houses
|
||
ADD sports_ground TINYINT(1) DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_houses ADD play_ground TINYINT(1) DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_houses ADD school TINYINT(1) DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_houses
|
||
ADD kinder_garten TINYINT(1) DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_house_UTP
|
||
CHANGE desck `desc` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
|
||
|
||
ALTER TABLE complex_house_UTP
|
||
CHANGE photos photo text CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
|
||
|
||
ALTER TABLE complex_list ADD domclick_id int(11) NULL;
|
||
|
||
ALTER TABLE complex_list ADD domclick_builder_id INT(11) NULL;
|
||
|
||
ALTER TABLE complex_list ADD cian_id INT(11) NULL;
|
||
|
||
ALTER TABLE complex_list ADD avito_id INT(11) NULL;
|
||
|
||
ALTER TABLE complex_list ADD yandex_id INT(11) NULL;
|
||
|
||
ALTER TABLE complex_houses ADD domclick_id int(11) NULL;
|
||
|
||
ALTER TABLE complex_houses ADD cian_id INT(11) NULL;
|
||
|
||
ALTER TABLE complex_houses ADD avito_id INT(11) NULL;
|
||
|
||
ALTER TABLE complex_houses ADD yandex_id INT(11) NULL;
|
||
|
||
ALTER TABLE complex_actions
|
||
MODIFY COLUMN id int(11) auto_increment NOT NULL;
|
||
|
||
ALTER TABLE complex_actions
|
||
ADD CONSTRAINT complex_actions_PK PRIMARY KEY (id);
|
||
|
||
ALTER TABLE complex_actions
|
||
CHANGE images image text CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
|
||
|
||
ALTER TABLE complex_list
|
||
ADD cadastral_number varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
|
||
|
||
ALTER TABLE complex_houses DROP COLUMN cadastral_number;
|
||
|
||
ALTER TABLE complex_list
|
||
ADD has_show_room tinyint(1) DEFAULT 0 NOT NULL;
|
||
|
||
ALTER TABLE complex_houses DROP COLUMN is_shop;
|
||
|
||
-- IMPORT FROM XLSX, XLS, CSV
|
||
|
||
CREATE TABLE `complex_house_import` (
|
||
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||
`document` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
|
||
`document_preview` text CHARACTER SET utf8mb4,
|
||
`house_name_to_id` text COLLATE utf8mb4_unicode_ci,
|
||
`mapping_fields` text CHARACTER SET utf8,
|
||
`step` int(11) NOT NULL,
|
||
`status` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT '',
|
||
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
`user_id` mediumint(9) NOT NULL,
|
||
`dynamic_fields` text COLLATE utf8mb4_unicode_ci,
|
||
PRIMARY KEY (`id`),
|
||
KEY `complex_house_import_FK` (`user_id`),
|
||
CONSTRAINT `complex_house_import_FK` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE
|
||
) ENGINE = InnoDB AUTO_INCREMENT = 138 DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
|
||
|
||
ALTER TABLE complex_rooms MODIFY COLUMN area DECIMAL(8, 2) NOT NULL;
|
||
|
||
CREATE TABLE complex_status (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
name VARCHAR(100) NOT NULL,
|
||
status ENUM(
|
||
'not_for_sale',
|
||
'sold',
|
||
'reservation',
|
||
'available'
|
||
) NOT NULL,
|
||
agency_id MEDIUMINT(9),
|
||
color varchar(7) NOT NULL,
|
||
is_archive BIT NOT NULL DEFAULT 0,
|
||
CONSTRAINT complex_status_pk PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci AUTO_INCREMENT = 1;
|
||
|
||
ALTER TABLE complex_status
|
||
ADD CONSTRAINT complex_status_users_FK FOREIGN KEY (agency_id) REFERENCES users (id) ON DELETE CASCADE;
|
||
|
||
INSERT INTO
|
||
complex_status (
|
||
name,
|
||
status,
|
||
color,
|
||
is_archive
|
||
)
|
||
VALUES (
|
||
'Не для продажи',
|
||
'not_for_sale',
|
||
'#dedede',
|
||
0
|
||
),
|
||
(
|
||
'Продано',
|
||
'sold',
|
||
'#757575',
|
||
0
|
||
),
|
||
(
|
||
'Бронь',
|
||
'reservation',
|
||
'#f2b720',
|
||
0
|
||
),
|
||
(
|
||
'Свободные',
|
||
'available',
|
||
'#4caf50',
|
||
0
|
||
);
|
||
|
||
CREATE TABLE complex_status_reservation (
|
||
id BIGINT UNSIGNED auto_increment NOT NULL,
|
||
booking_hour INTEGER DEFAULT NULL,
|
||
booking_day INTEGER DEFAULT NULL,
|
||
reminder_hour INTEGER DEFAULT NULL,
|
||
reminder_day INTEGER DEFAULT NULL,
|
||
booking_type ENUM('temporary', 'constant') NOT NULL,
|
||
complex_status_id BIGINT UNSIGNED NOT NULL,
|
||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||
CONSTRAINT complex_status_reservation_complex_status_FK FOREIGN KEY (complex_status_id) REFERENCES complex_status (id) ON DELETE CASCADE,
|
||
CONSTRAINT complex_status_reservation PRIMARY KEY (id)
|
||
) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci AUTO_INCREMENT = 1;
|
||
|
||
ALTER TABLE requisitions ADD is_interrupted BOOL DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
CHANGE status complex_status_id BIGINT UNSIGNED NOT NULL;
|
||
|
||
UPDATE complex_rooms
|
||
SET
|
||
complex_status_id = 4
|
||
WHERE
|
||
complex_status_id = 0;
|
||
|
||
ALTER TABLE complex_rooms
|
||
ADD CONSTRAINT complex_rooms_complex_status_FK FOREIGN KEY (complex_status_id) REFERENCES complex_status (id);
|
||
|
||
ALTER TABLE requisitions ADD complex_status_id BIGINT UNSIGNED;
|
||
|
||
UPDATE requisitions
|
||
SET
|
||
complex_status_id = CASE
|
||
WHEN status = '' THEN NULL
|
||
WHEN status = 'not_for_sale' THEN 1
|
||
WHEN status = 'sold' THEN 2
|
||
WHEN status = 'reservation' THEN 3
|
||
WHEN status = 'available' THEN 4
|
||
ELSE status
|
||
END;
|
||
|
||
ALTER TABLE requisitions DROP COLUMN status;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN description text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN estimated_area decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN living_area decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN kitchen_area decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN estimated_area decimal(4, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN living_area decimal(4, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN kitchen_area decimal(4, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN hallway_area decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN bti_total_area decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN area_without_balcony decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN total_amount decimal(12, 2) NOT NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN estimated_area decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN living_area decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE complex_rooms
|
||
MODIFY COLUMN kitchen_area decimal(8, 2) NULL;
|
||
|
||
ALTER TABLE requisitions
|
||
ADD er_is_interrupted tinyint(1) DEFAULT 0 NULL;
|
||
|
||
ALTER TABLE complex_status_reservation
|
||
ADD can_change_booking_queue VARCHAR(1000) DEFAULT NULL,
|
||
ADD reservation_extension BOOL DEFAULT 0,
|
||
ADD specify_comment_confirm BOOL DEFAULT 0,
|
||
ADD managers_of_confirm_reservation_extension VARCHAR(1000) DEFAULT NULL,
|
||
ADD employees_not_required_confirmation VARCHAR(1000) DEFAULT NULL,
|
||
ADD specify_comment_unconfirm BOOL DEFAULT 0,
|
||
ADD managers_of_unconfirm_reservation_extension VARCHAR(1000) DEFAULT NULL,
|
||
ADD employees_not_required_unconfirmation VARCHAR(1000) DEFAULT NULL;
|
||
|
||
ALTER TABLE requisitions
|
||
ADD reservation_updated_at timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL;
|
||
|
||
UPDATE requisitions SET reservation_updated_at = created_at;
|
||
|
||
-- Complex Status 3 dot
|
||
ALTER TABLE funnel_steps
|
||
ADD is_select_room tinyint(1) DEFAULT 0 NOT NULL,
|
||
ADD complex_status_id bigint(20) unsigned NULL;
|
||
|
||
ALTER TABLE requisitions ADD `position` int(11) DEFAULT 1 NOT NULL;
|
||
|
||
ALTER TABLE clients_funnel_step
|
||
ADD history_requisition TEXT NOT NULL;
|
||
|
||
ALTER TABLE clients_funnel_step
|
||
ADD transaction_amount decimal(12, 2) NULL;
|
||
|
||
ALTER TABLE user_client_events
|
||
MODIFY COLUMN partner_id int(11) DEFAULT 0 NOT NULL COMMENT 'ИД компании-партнера';
|
||
|
||
ALTER TABLE `complex_list`
|
||
ADD `domrf_id` INT NULL DEFAULT NULL COMMENT 'ИД комплекса на сайте Дом.рф' AFTER `has_show_room`;
|
||
|
||
ALTER TABLE `complex_houses`
|
||
ADD `domrf_id` INT NULL DEFAULT NULL COMMENT 'ИД дома на сайте Дом.рф' AFTER `is_partner_show`; |