Joywork/ajax/engine/props.php

338 lines
19 KiB
PHP
Raw Permalink Normal View History

2026-05-22 20:21:54 +02:00
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . "/config.php";
function getProps($id)
{
$props = [];
$sql = "SELECT objects_additional_information.*, bath_type.name as bath_type, window_view.name as window_view, object_location.*, objects.*, renovation.name as renovation,
hot_water.name as hot_water, parking_type.name as parking_type, sale_objects.house_material, house_material.name as house_material_name,
sale_objects.house_type, house_type.name as house_type_name, sale_objects.deal_type, deal_type.name as deal_type_name,
sale_objects.build_year, lu.name as land_usage_name, lp.name as land_purpose, el.name as electricity_type,
gt.name as gas_type, pt.name as plumbing_type, st.name as sewerage_type, rt.name as relief_type, sht.name as shape_type
FROM objects objects
LEFT JOIN sale_objects sale_objects on objects.id = sale_objects.object_id
LEFT JOIN house_material house_material on sale_objects.house_material = house_material.id
LEFT JOIN house_type house_type on house_type.id = sale_objects.house_type
LEFT JOIN deal_type deal_type on deal_type.id = sale_objects.deal_type
LEFT JOIN land_usage_type lu on objects.land_usage_type_id = lu.id
LEFT JOIN land_purpose lp on objects.land_purpose_id = lp.id
LEFT JOIN electricity_type el on objects.electricity_type_id = el.id
LEFT JOIN gas_type gt on objects.gas_type_id = gt.id
LEFT JOIN plumbing_type pt on objects.plumbing_type_id = pt.id
LEFT JOIN sewerage_type st on objects.sewerage_type_id = st.id
LEFT JOIN relief_type rt on objects.relief_type_id = rt.id
LEFT JOIN shape_type sht on objects.shape_type_id = sht.id
LEFT JOIN objects_additional_information on objects_additional_information.object_id = objects.id
LEFT JOIN bath_type on bath_type.id = objects.bath_type_id
LEFT JOIN window_view on window_view.id = objects_additional_information.window_view
LEFT JOIN renovation on renovation.id = objects_additional_information.renovation
LEFT JOIN hot_water on hot_water.id = objects.hot_water_id
LEFT JOIN parking_type on parking_type.id = objects.parking_type_id
LEFT JOIN object_location on objects.id = object_location.object_id
WHERE objects.id = $id";
$result = mysql_query($sql);
$obj = mysql_fetch_assoc($result);
// Type 4
if($obj['type'] == 4){
$sqlCommerce = "SELECT * FROM commercial_object";
$resultCommerce = mysql_query($sqlCommerce);
$arrTypeCommerc = array();
while ($rCommerc = mysql_fetch_assoc($resultCommerce)) {
$arrTypeCommerc[$rCommerc['id']] = $rCommerc['name'];
}
if ($obj['type_category'] != 9) {
if (isset($arrTypeCommerc[$obj['type_category']])) {
array_push($props, ['name' => 'type_category', 'desc' => 'Категория помещения', 'val' => $arrTypeCommerc[$obj['type_category']]]);
}
} else {
array_push($props, ['name' => 'type_category', 'desc' => 'Категория', 'val' => $arrTypeCommerc[$obj['type_category']]]);
}
if ($obj['layout_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `layout_object` WHERE id = " . $obj['layout_id']))['name'];
array_push($props, ['name' => 'layout_id', 'desc' => 'Планировка', 'val' => $name]);
}
if ($obj['number_wet_spots']) {
array_push($props, ['name' => 'number_wet_spots', 'desc' => 'Кол-во мокрых точек', 'val' => ($obj['number_wet_spots'] > 4 ? "Нет" : $obj['number_wet_spots'])]);
}
if ($obj['electricity_power']) {
array_push($props, ['name' => 'electricity_power', 'desc' => 'Электрическая мощность', 'val' => $obj['electricity_power'].' кВТ']);
}
if ($obj['commer_condition'] && $obj['type_category'] != 9) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `commer_condition` WHERE id = " . $obj['commer_condition']))['name'];
array_push($props, ['name' => 'commer_condition', 'desc' => 'Состояние', 'val' => $name]);
}
if ($obj['isFurniture']) {
array_push($props, ['name' => 'isFurniture', 'desc' => 'Мебель', 'val' => 'Есть']);
}
if ($obj['parking_type_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `parking_type` WHERE id = " . $obj['parking_type_id']))['name'];
array_push($props, ['name' => 'parking_type_id', 'desc' => 'Тип парковки', 'val' => $name]);
}
if ($obj['parking_price']) {
array_push($props, ['name' => 'parking_price', 'desc' => 'Стоимость парковки', 'val' => $obj['parking_price']]);
}
if ($obj['vat_type_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `vat_type` WHERE id = " . $obj['vat_type_id']))['name'];
array_push($props, ['name' => 'vat_type_id', 'desc' => 'Налог', 'val' => $name]);
}
if ($obj['floor_material_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `floor_material` WHERE id = " . $obj['floor_material_id']))['name'];
array_push($props, ['name' => 'floor_material_id', 'desc' => 'Материал пола', 'val' => $name]);
}
if ($obj['commerc_portal_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `commerc_portal` WHERE id = " . $obj['commerc_portal_id']))['name'];
array_push($props, ['name' => 'commerc_portal_id', 'desc' => 'Ворота', 'val' => $name]);
}
if ($obj['commerc_purpose']) {
$commerc_purpose = json_decode($obj['commerc_purpose']);
if (!empty($commerc_purpose)) {
$sql = "SELECT * FROM commerc_purpose WHERE id in (" . implode(',', $commerc_purpose) . ")";
$q = mysql_query($sql);
$i = 0;
$val = '';
while ($r = mysql_fetch_assoc($q)) {
if ($i > 0) {
$val .= ",";
}
if($i > 7) break;
$val .= ' '.$r['name'];
$i++;
}
array_push($props, ['name' => 'commerc_purpose', 'desc' => 'Назначение', 'val' => $val]);
}
}
if ($obj['house_material'] && $obj['type_category'] != 9) {
array_push($props, ['name' => 'house_material', 'desc' => 'Здание', 'val' => $obj['building_nazv']]);
}
if ($obj['commerc_year']) {
array_push($props, ['name' => 'commerc_year', 'desc' => 'Год постройки', 'val' => $obj['commerc_year']]);
}
if ($obj['commerc_building_type_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `commerc_building_type` WHERE id = " . $obj['commerc_building_type_id']))['name'];
array_push($props, ['name' => 'commerc_building_type_id', 'desc' => 'Тип здания', 'val' => $name]);
}
if ($obj['commerc_building_class_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `commerc_building_class` WHERE id = " . $obj['commerc_building_class_id']))['name'];
array_push($props, ['name' => 'commerc_building_class_id', 'desc' => 'Класс здания', 'val' => $name]);
}
if ($obj['building_area']) {
array_push($props, ['name' => 'building_area', 'desc' => 'Площадь здания', 'val' => $obj['building_area'].' м. кв']);
}
if ($obj['commerc_houseLineType_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `commerc_houselinetype` WHERE id = " . $obj['commerc_houseLineType_id']))['name'];
array_push($props, ['name' => 'commerc_houseLineType_id', 'desc' => 'Линия домов', 'val' => $name]);
}
if ($obj['commerc_building_category_id'] && $obj['type_category'] != 9) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `commerc_building_category` WHERE id = " . $obj['commerc_building_category_id']))['name'];
array_push($props, ['name' => 'commerc_building_category_id', 'desc' => 'Категория', 'val' => $name]);
}
if ($obj['building_developer']) {
array_push($props, ['name' => 'building_developer', 'desc' => 'Девелопер', 'val' => $obj['building_developer']]);
}
if ($obj['building_management_company']) {
array_push($props, ['name' => 'building_management_company', 'desc' => 'Управляющая компания', 'val' => $obj['building_management_company']]);
}
if ($obj['commerc_opened_id']) {
$name = mysql_fetch_assoc(mysql_query("SELECT `name` FROM `commerc_opened` WHERE id = " . $obj['commerc_opened_id']))['name'];
array_push($props, ['name' => 'commerc_opened_id', 'desc' => 'Вход', 'val' => $name]);
}
if ($obj['commerc_building_ventilation']) {
$arr = array(1 => 'Естественная', 2 => 'Приточная');
$val = $arr[$obj['commerc_building_ventilation']];
array_push($props, ['name' => 'commerc_building_ventilation', 'desc' => 'Вентиляция', 'val' => $val]);
}
if ($obj['commerc_building_conditioning']) {
$arr = array(1 => 'Местное', 2 => 'Центральное');
$val = $arr[$obj['commerc_building_conditioning']];
array_push($props, ['name' => 'commerc_building_conditioning', 'desc' => 'Кондиционирование', 'val' => $val]);
}
if ($obj['commerc_building_heating']) {
$arr = array(1 => 'Автономное', 2 => 'Центральное');
$val = $arr[$obj['commerc_building_heating']];
array_push($props, ['name' => 'commerc_building_heating', 'desc' => 'Отопление', 'val' => $val]);
}
if ($obj['commerc_building_fire']) {
$arr = array(1 => 'Гидрантная', 2 => 'Спринклерная', 3 => 'Порошковая', 4 => 'Газовая', 5 => 'Сигнализация');
$val = $arr[$obj['commerc_building_fire']];
array_push($props, ['name' => 'commerc_building_fire', 'desc' => 'Система пожаротушения', 'val' => $val]);
}
if ($obj['commerc_infrastructure']) {
$commerc_infrastructure = json_decode($obj['commerc_infrastructure']);
if (!empty($commerc_infrastructure)) {
$sql = "SELECT * FROM commerc_infrastructure WHERE id in (" . implode(',', $commerc_infrastructure) . ")";
$q = mysql_query($sql);
$i = 0;
$val = '';
while ($r = mysql_fetch_assoc($q)) {
if ($i > 0) {
$val .= ",";
}
if($i > 7) break;
$val .= ' '.$r['name'];
$i++;
}
array_push($props, ['name' => 'commerc_infrastructure', 'desc' => 'Инфраструктура', 'val' => $val]);
}
}
}
// Type 7, 5, 3
if ($obj['type'] == 7) {
if ($obj['land_area'] * 1 != 0) {
$val = $obj['land_area'] * 1;
$val .= ' сот.';
array_push($props, ['name' => 'land_area', 'desc' => 'Площадь', 'val' => $val]);
}
if ($obj['land_usage_name']) {
array_push($props, ['name' => 'land_usage_name', 'desc' => 'Использование земли', 'val' => $obj['land_usage_name']]);
}
if ($obj['land_purpose']) {
array_push($props, ['name' => 'land_purpose', 'desc' => 'Назначение земли', 'val' => $obj['land_purpose']]);
}
if ($obj['electricity_type']) {
array_push($props, ['name' => 'electricity_type', 'desc' => 'Электроснабжение', 'val' => $obj['electricity_type']]);
}
if ($obj['gas_type']) {
array_push($props, ['name' => 'gas_type', 'desc' => 'Газификация', 'val' => $obj['gas_type']]);
}
if ($obj['plumbing_type']) {
array_push($props, ['name' => 'plumbing_type', 'desc' => 'Водоснабжение', 'val' => $obj['plumbing_type']]);
}
if ($obj['sewerage_type']) {
array_push($props, ['name' => 'sewerage_type', 'desc' => 'Канализация', 'val' => $obj['sewerage_type']]);
}
if ($obj['relief_type']) {
array_push($props, ['name' => 'relief_type', 'desc' => 'Рельеф', 'val' => $obj['relief_type']]);
}
if ($obj['shape_type']) {
array_push($props, ['name' => 'shape_type', 'desc' => 'Форма участка', 'val' => $obj['shape_type']]);
}
if ($obj['land_distance'] * 1 != 0) {
array_push($props, ['name' => 'land_distance', 'desc' => 'Удаленность от города, райцентра (км)', 'val' => $obj['land_distance'] * 1]);
}
$val = $obj['land_burden'] ? "Да" : "Нет";
array_push($props, ['name' => 'land_burden', 'desc' => 'Есть обременения', 'val' => $val]);
} else {
if ($obj['type'] == 3 || $obj['type'] == 5) {
if ($obj['land_usage_name']) {
array_push($props, ['name' => 'land_usage_name', 'desc' => 'Использование земли', 'val' => $obj['land_usage_name']]);
}
if ($obj['land_purpose']) {
array_push($props, ['name' => 'land_purpose', 'desc' => 'Назначение земли', 'val' => $obj['land_purpose']]);
}
if ($obj['electricity_type']) {
array_push($props, ['name' => 'electricity_type', 'desc' => 'Электроснабжение', 'val' => $obj['electricity_type']]);
}
if ($obj['gas_type']) {
array_push($props, ['name' => 'gas_type', 'desc' => 'Газификация', 'val' => $obj['gas_type']]);
}
if ($obj['plumbing_type']) {
array_push($props, ['name' => 'plumbing_type', 'desc' => 'Водоснабжение', 'val' => $obj['plumbing_type']]);
}
if ($obj['sewerage_type']) {
array_push($props, ['name' => 'sewerage_type', 'desc' => 'Канализация', 'val' => $obj['sewerage_type']]);
}
if ($obj['relief_type']) {
array_push($props, ['name' => 'relief_type', 'desc' => 'Рельеф', 'val' => $obj['relief_type']]);
}
if ($obj['shape_type']) {
array_push($props, ['name' => 'shape_type', 'desc' => 'Форма участка', 'val' => $obj['shape_type']]);
}
if ($obj['land_distance'] * 1 != 0) {
array_push($props, ['name' => 'land_distance', 'desc' => 'Удаленность от города, райцентра (км)', 'val' => $obj['land_distance'] * 1]);
}
$val = $obj['land_burden'] ? "Да" : "Нет";
array_push($props, ['name' => 'land_burden', 'desc' => 'Есть обременения', 'val' => $val]);
}
}
// Deal type
if ($obj['deal_type']) {
array_push($props, ['name' => 'deal_type', 'desc' => 'Тип сделки', 'val' => $obj['deal_type_name']]);
}
// Address
if ($obj['rayon'] && is_numeric($obj['rayon'])) {
$sql = "SELECT * FROM rayon WHERE id = '" . $obj['rayon'] . "'";
$rayonQuery = mysql_fetch_assoc(mysql_query($sql));
$rayonName = $rayonQuery['rayon'];
array_push($props, ['name' => 'rayon', 'desc' => 'Район города', 'val' => $rayonName]);
}
// Props
if ($obj['ceiling_height'] && $obj['ceiling_height'] != 0) {
$val = $obj['ceiling_height'] . " м.";
array_push($props, ['name' => 'ceiling_height', 'desc' => 'Высота потолков', 'val' => $val]);
}
if ($obj['bath_type']) {
array_push($props, ['name' => 'bath_type', 'desc' => 'Тип ванны', 'val' => $obj['bath_type']]);
}
if ($obj['window_view']) {
array_push($props, ['name' => 'window_view', 'desc' => 'Вид из окон', 'val' => $obj['window_view']]);
}
if ($obj['balcony']) {
array_push($props, ['name' => 'balcony', 'desc' => 'Кол-во балконов', 'val' => $obj['balcony']]);
}
if ($obj['loggias']) {
array_push($props, ['name' => 'loggias', 'desc' => 'Кол-во лоджий', 'val' => $obj['loggias']]);
}
// Props udobstva
if ($obj['operation_type'] == 0 && $obj['type'] != 7 && $obj['type'] != 4) {
if ($obj['stirka']) {
array_push($props, ['name' => 'stirka', 'desc' => 'Стиральная машина', 'val' => 'Есть']);
}
if ($obj['holod']) {
array_push($props, ['name' => 'holod', 'desc' => 'Холодильник', 'val' => 'Есть']);
}
if ($obj['tv']) {
array_push($props, ['name' => 'tv', 'desc' => 'Телевизор', 'val' => 'Есть']);
}
if ($obj['mebel']) {
array_push($props, ['name' => 'mebel', 'desc' => 'Мебель', 'val' => 'Есть']);
}
}
// Дом
if ($obj['operation_type'] == 1 && $obj['type'] != 7 && $obj['type'] != 4) {
if ($obj['house_material']) {
array_push($props, ['name' => 'operation_type', 'desc' => 'Материал дома', 'val' => $obj['house_material_name']]);
}
if ($obj['house_type']) {
array_push($props, ['name' => 'house_type', 'desc' => 'Тип дома', 'val' => $obj['house_type_name']]);
}
if ($obj['build_year']) {
array_push($props, ['name' => 'build_year', 'desc' => 'Год постройки', 'val' => $obj['build_year']]);
}
if ($obj['hot_water']) {
array_push($props, ['name' => 'hot_water', 'desc' => 'Обеспечение горячей водой', 'val' => $obj['hot_water']]);
}
if ($obj['separate_wcs']) {
array_push($props, ['name' => 'separate_wcs', 'desc' => 'Кол-во раздельных санузлов', 'val' => $obj['separate_wcs']]);
}
if ($obj['combined_wcs']) {
array_push($props, ['name' => 'combined_wcs', 'desc' => 'Кол-во совместных санузлов', 'val' => $obj['combined_wcs']]);
}
if ($obj['passenger_lifts']) {
array_push($props, ['name' => 'passenger_lifts', 'desc' => 'Кол-во пассажирских лифтов', 'val' => $obj['passenger_lifts']]);
}
if ($obj['cargo_lifts']) {
array_push($props, ['name' => 'cargo_lifts', 'desc' => 'Кол-во пассажирских лифтов', 'val' => $obj['cargo_lifts']]);
}
if ($obj['parking_type']) {
array_push($props, ['name' => 'parking_type', 'desc' => 'Тип парковки', 'val' => $obj['parking_type']]);
}
}
return $props;
}