get($_SESSION['id']); if (!isset($agency->agencyId)) { $agency->agencyId = $_SESSION['id']; if (!empty($agency->agency_name) && $agency->agency) $agency->agencyName = $agency->agency_name; elseif (!empty($agency->agency_name) && $agency->agency) $agency->agencyName = $agency->agency_name; } echo $obj['id']; //переносим объект $sql = "INSERT INTO `objects`(`type`, `rayon`, `adres`, `dom`, `korpus`, `litera`, `srok`, `komnat`, `etazh`, `etaz_first_type`, `ploshad`, `ploshad_k`, `holod`, `stirka`, `tv`, `mebel`, `stoim`, `date_add`, `ploshad_komn`, `etazh_iz`, `stoim_prim`, `peshkom`, `transport`, `nazv`, `opis`, `phone`, `archive`, `sobstv`, `phone_search`, `id_user`, `date_really_add`, `prim_srok`, `black`, `vsego_komn`, `moder`, `id_kv`, `id_add_user`, `commission`, `prepay`, `add_to_yandex_feed`, `add_from_archive`, `initial_object_id`, `initial_object_phone`, `initial_object_sobstv`, `type_category`, `use_in_advert`, `initial_object_stoim`, `operation_type`, `studio_flag`, `cadastral_number`, `cadastral_number_land`, `add_to_avito_feed`, `add_to_emls_feed`, `property_type_id`, `land_area`, `rent_house_type_id`, `country_wall_type_id`, `stoim_ky`, `lo_city_id`, `lease_deposit_id`, `add_to_bn_feed`, `kladr_id`, `add_to_zipal`, `add_to_domclick_feed`, `no_pets`, `no_child`, `land_purpose_id`, `land_distance`, `land_burden`, `electricity_type_id`, `gas_type_id`, `plumbing_type_id`, `sewerage_type_id`, `relief_type_id`, `shape_type_id`, `land_usage_type_id`, `lease`, `add_to_cian_feed`, `city_town_id`, `bath_type_id`, `hot_water_id`, `rubbish_chute`, `parking_type_id`, `id_rf_region`, `fbn_id`, `is_main`) SELECT `type`, `rayon`, `adres`, `dom`, `korpus`, `litera`, `srok`, `komnat`, `etazh`, `etaz_first_type`, `ploshad`, `ploshad_k`, `holod`, `stirka`, `tv`, `mebel`, `stoim`, NOW(), `ploshad_komn`, `etazh_iz`, `stoim_prim`, `peshkom`, `transport`, `nazv`, `opis`, `phone`, `archive`, `sobstv`, `phone_search`, `id_user`, NOW(), `prim_srok`, `black`, `vsego_komn`, `moder`, `id_kv`, `id_add_user`, `commission`, `prepay`, 0, `add_from_archive`, `initial_object_id`, `initial_object_phone`, `initial_object_sobstv`, `type_category`, 0, `initial_object_stoim`, `operation_type`, `studio_flag`, `cadastral_number`, `cadastral_number_land`, 0, 0, `property_type_id`, `land_area`, `rent_house_type_id`, `country_wall_type_id`, `stoim_ky`, `lo_city_id`, `lease_deposit_id`, 0, `kladr_id`, 0, 0, `no_pets`, `no_child`, `land_purpose_id`, `land_distance`, `land_burden`, `electricity_type_id`, `gas_type_id`, `plumbing_type_id`, `sewerage_type_id`, `relief_type_id`, `shape_type_id`, `land_usage_type_id`, `lease`, 0, `city_town_id`, `bath_type_id`, `hot_water_id`, `rubbish_chute`, `parking_type_id`, `id_rf_region`, `fbn_id`, `is_main` FROM `objects` WHERE id = $post[objId]"; mysql_query($sql); $id = mysql_insert_id(); echo 'id=' . $id; //Запрос в сфинкс $currentTimestamp = time(); $sql_sh = "INSERT INTO objects_rt (id, type, rayon_id, adres, peshkom, transport, srok, komnat, etazh, ploshad, ploshad_k, ploshad_komn, holod, stirka, tv, mebel, stoim, sort_price, price_for_order, stoim_prim, moder, date_add, phone_search, id_add_user, commission, type_category, operation_type, id_rf_region, archive, date_really_add) VALUES('$id', '$obj[type]', '$obj[rayon]', '$obj[adres]', '$obj[peshkom]', '$obj[transport]', '$obj[srok]', '$obj[komnat]', '$obj[etazh]', '$obj[ploshad]', '$obj[ploshad_k]', '$obj[ploshad_komn]', '$obj[holod]', '$obj[stirka]', '$obj[tv]', '$obj[mebel]', '$obj[stoim]', '$obj[stoim]', '$obj[stoim]', '$obj[stoim_prim]', '$obj[moder]', '" . $currentTimestamp ."', '$obj[phone_search]', '$obj[id_add_user]', '$obj[commission]', '$obj[type_category]', '$obj[operation_type]', '$obj[id_rf_region]', '$obj[archive]', '" . $currentTimestamp."')"; //echo $sql_sh; $db_sphinx->query($sql_sh, true); //переносим доп. инфу $sql = "INSERT INTO `objects_additional_information`(`object_id`, `ceiling_height`, `bathroom_unit`, `balcony`, `renovation`, `window_view`, `apartments`, `video_url`, `video_url_vk`, `loggias`, `separate_wcs`, `combined_wcs`, `passenger_lifts`, `cargo_lifts`, `vat_type_id`, `house_category`, `commercial_object_id`, `isPartsEnabled`, `parts_area`, `legal_address`, `isOccupied`, `is_occupied_month`, `is_occupied_year`, `layout_id`, `number_wet_spots`, `electricity_power`, `commer_condition`, `isFurniture`, `commer_access`, `parking_price`, `parkingIsFree`, `building_nazv`, `commerc_year`, `commerc_building_type_id`, `commerc_building_class_id`, `building_area`, `commerc_site`, `commerc_owned`, `commerc_building_category_id`, `building_developer`, `building_management_company`, `commerc_building_ventilation`, `commerc_building_conditioning`, `commerc_building_heating`, `commerc_building_fire`, `commerc_houseLineType_id`, `commerc_opened_id`, `commerc_infrastructure`, `column_grid`, `tax_number`, `floor_material_id`, `commerc_portal_id`, `commerc_purpose`, `gsk_nazv`, `commerc_specifications`, `commerc_land_category_id`, `can_land_category_change`, `commerc_permitted_use_id`, `can_permitted_use_change`, `commerc_investproject`, `is_encumbrances`, `commerc_electricity_id`, `can_electricity`, `commerc_gas_id`, `can_gas`, `commerc_water_id`, `can_water`, `commerc_sewage_id`, `can_sewage`, `commerc_driveways_id`, `garage_type_id`, `commerc_lift1`, `lift1_carrying`, `commerc_lift2`, `lift2_carrying`, `commerc_lift3`, `lift3_carrying`, `commerc_crane1`, `crane1_carrying`, `commerc_crane2`, `crane2_carrying`, `commerc_crane3`, `crane3_carrying`, `commerc_crane4`, `crane4_carrying`, `parking_id`, `commerc_services`, `garage_vid_id`, `boks_vid_id`, `commerc_status_id`, `flat_number`, `restate_feed_id`, `avito_room_type_id`) SELECT '$id', `ceiling_height`, `bathroom_unit`, `balcony`, `renovation`, `window_view`, `apartments`, `video_url`, `video_url_vk`, `loggias`, `separate_wcs`, `combined_wcs`, `passenger_lifts`, `cargo_lifts`, `vat_type_id`, `house_category`, `commercial_object_id`, `isPartsEnabled`, `parts_area`, `legal_address`, `isOccupied`, `is_occupied_month`, `is_occupied_year`, `layout_id`, `number_wet_spots`, `electricity_power`, `commer_condition`, `isFurniture`, `commer_access`, `parking_price`, `parkingIsFree`, `building_nazv`, `commerc_year`, `commerc_building_type_id`, `commerc_building_class_id`, `building_area`, `commerc_site`, `commerc_owned`, `commerc_building_category_id`, `building_developer`, `building_management_company`, `commerc_building_ventilation`, `commerc_building_conditioning`, `commerc_building_heating`, `commerc_building_fire`, `commerc_houseLineType_id`, `commerc_opened_id`, `commerc_infrastructure`, `column_grid`, `tax_number`, `floor_material_id`, `commerc_portal_id`, `commerc_purpose`, `gsk_nazv`, `commerc_specifications`, `commerc_land_category_id`, `can_land_category_change`, `commerc_permitted_use_id`, `can_permitted_use_change`, `commerc_investproject`, `is_encumbrances`, `commerc_electricity_id`, `can_electricity`, `commerc_gas_id`, `can_gas`, `commerc_water_id`, `can_water`, `commerc_sewage_id`, `can_sewage`, `commerc_driveways_id`, `garage_type_id`, `commerc_lift1`, `lift1_carrying`, `commerc_lift2`, `lift2_carrying`, `commerc_lift3`, `lift3_carrying`, `commerc_crane1`, `crane1_carrying`, `commerc_crane2`, `crane2_carrying`, `commerc_crane3`, `crane3_carrying`, `commerc_crane4`, `crane4_carrying`, `parking_id`, `commerc_services`, `garage_vid_id`, `boks_vid_id`, `commerc_status_id`, `flat_number`, `restate_feed_id`, `avito_room_type_id` FROM `objects_additional_information` WHERE object_id = $post[objId]"; mysql_query($sql); //переносим activity $sql = "INSERT INTO `objects_activities`(`activity_id`, `object_id`) SELECT `activity_id`, '$id' FROM `objects_activities` where `object_id` = $post[objId]"; mysql_query($sql); //переносим price hist $sqlPriceHist= "INSERT INTO `objects_price_history`(`object_id`, `date_change_price`, `price`, `price_ku`) SELECT '$id', `date_change_price`, `price`, `price_ku` FROM `objects_price_history` where `object_id` = $post[objId]"; mysql_query($sqlPriceHist); //переносим новостройки $sql = "INSERT INTO `object_nb_info`(`object_id`, `newbuilding_id`, `nb_end_date`, `zipal_new_flat_type_id`, `zipal_new_flat_decoration_type_id`, `investor_type_id`, `last_name_id`, `first_name_id`, `second_name_id`, `inn_id`, `documentation_url`) SELECT '$id', `newbuilding_id`, `nb_end_date`, `zipal_new_flat_type_id`, `zipal_new_flat_decoration_type_id`, `investor_type_id`, `last_name_id`, `first_name_id`, `second_name_id`, `inn_id`, `documentation_url` FROM `object_nb_info` where `object_id` = $post[objId]"; mysql_query($sql); //переносим метро $sql4="SELECT * FROM sp_metro WHERE id_obj = $post[objId]"; $rez_metro=mysql_query($sql4); while($m = mysql_fetch_assoc($rez_metro)) { $sql = "INSERT INTO sp_metro(id_obj, id_metro) VALUES('$id', '$m[id_metro]')"; mysql_query($sql); } //переносим планировку $sqlSelectPlan = "SELECT * FROM objects_plan WHERE object_id=$post[objId]"; $rezSelectPlan = mysql_query($sqlSelectPlan); if (mysql_num_rows($rezSelectPlan) > 0) { $result = SelectelApi::getTokenAndUrl(); $token = $result[0]; $storageUrl = $result[1]; $plan = mysql_fetch_assoc($rezSelectPlan); $pathInfo = pathinfo($plan['img_plan']); if (stripos($plan['img_plan'], "http://") === false && stripos($plan['img_plan'], "https://") === false) { $plan['img_plan'] = $_SERVER['DOCUMENT_ROOT'] . "/photos/" . $plan['img_plan']; } $content = file_get_contents($plan['img_plan']); $ext = $pathInfo['extension']; if (!$pathInfo['extension']) { $ext = 'jpg'; } if (strlen($ext) > 4) { $ext = 'jpg'; } $ph = md5($pathInfo['filename'].time())."_cpd.".$ext; $one = mb_substr($ph, 0, 1); $two = mb_substr($ph, 1, 1); $three = mb_substr($ph, 3, 1); $ph = "$one/$two/$three/$ph"; if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one")) { mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one"); } if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two")) { mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two"); } if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two/$three")) { mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two/$three"); } $f1 = fopen($_SERVER['DOCUMENT_ROOT'] . "/photos/" . $ph, "a"); fwrite($f1, $content); fclose($f1); //загрузка в Selectel $fp = $_SERVER['DOCUMENT_ROOT'] . "/photos/" . $ph; $r = SelectelApi::uploadFile($storageUrl, $token, $fp, $ph, 'image/'.$ext); //если выложили в Selectel if ($r) { //заменяем путь на новый $ph = "https://data.joywork.ru/" . $ph; //удаляем файл с локального сервера unlink($fp); } $sqlInsPlan = "INSERT INTO objects_plan(object_id, img_plan) VALUES('$id','$ph')"; mysql_query($sqlInsPlan); } //переносим фото $sqlSelectPhoto = "select oop.id, oop.object_photo_id, oop.sort_order from objects_object_photo oop where oop.object_id = $post[objId]"; $rezSelectPhoto = mysql_query($sqlSelectPhoto); if (mysql_num_rows($rezSelectPhoto) > 0) { $result = SelectelApi::getTokenAndUrl(); $token = $result[0]; $storageUrl = $result[1]; while ($objPh = mysql_fetch_assoc($rezSelectPhoto)) { $sqlPhoto = "SELECT * FROM object_photo where id = $objPh[object_photo_id]"; $rezPhoto = mysql_query($sqlPhoto); if (mysql_num_rows($rezPhoto) > 0) { $photo = mysql_fetch_assoc($rezPhoto); $pathInfo = pathinfo($photo['photo']); if (stripos($photo['photo'], "http://") === false && stripos($photo['photo'], "https://") === false) { $photo['photo'] = $_SERVER['DOCUMENT_ROOT'] . "/photos/" . $photo['photo']; } $content = file_get_contents($photo['photo']); $ext = $pathInfo['extension']; if (!$pathInfo['extension']) { $ext = 'jpg'; } if (strlen($ext) > 4) { $ext = 'jpg'; } $ph = md5($pathInfo['filename'].time())."_cpd.".$ext; $one = mb_substr($ph, 0, 1); $two = mb_substr($ph, 1, 1); $three = mb_substr($ph, 3, 1); $ph = "$one/$two/$three/$ph"; if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one")) { mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one"); } if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two")) { mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two"); } if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two/$three")) { mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/$one/$two/$three"); } $f1 = fopen($_SERVER['DOCUMENT_ROOT'] . "/photos/" . $ph, "a"); fwrite($f1, $content); fclose($f1); //загрузка в Selectel $fp = $_SERVER['DOCUMENT_ROOT'] . "/photos/" . $ph; $r = SelectelApi::uploadFile($storageUrl, $token, $fp, $ph, 'image/'.$ext); //если выложили в Selectel if ($r) { //заменяем путь на новый $ph = "https://data.joywork.ru/" . $ph; //удаляем файл с локального сервера unlink($fp); } $sqlInsPhoto = "INSERT INTO object_photo(photo) VALUES('$ph')"; mysql_query($sqlInsPhoto); $photoId = mysql_insert_id(); $sqlInsPhotoLink = "INSERT INTO objects_object_photo(object_id, object_photo_id, sort_order) VALUES($id, $photoId, $objPh[sort_order])"; mysql_query($sqlInsPhotoLink); } } } //переносим адрес $sqlLoc="SELECT * FROM object_location WHERE object_id = $post[objId]"; $rezLoc=mysql_query($sqlLoc); while($loc = mysql_fetch_assoc($rezLoc)) { $sqlInsLoc = "INSERT INTO object_location(`object_id`, `address`, `latitude`, `longitude`, `street`, `rf_region_rayon`, `city`, `deleted`, `part`) VALUES($id, '$loc[address]', '$loc[latitude]', '$loc[longitude]', '$loc[street]', '$loc[rf_region_rayon]', '$loc[city]', '$loc[deleted]', '$loc[part]')"; mysql_query($sqlInsLoc); } //переносим доп поля продажи if ($obj['operation_type'] == 1) { $sql77 = "SELECT * FROM sale_objects WHERE object_id=$post[objId]"; $rez77 = mysql_query($sql77); while ($saleObj = mysql_fetch_assoc($rez77)) { $sql88 = "INSERT INTO sale_objects (object_id, house_material, house_type, deal_type, build_year) VALUES ('$id', '$saleObj[house_material]', '$saleObj[house_type]', '$saleObj[deal_type]', '$saleObj[build_year]')"; mysql_query($sql88); } } //переносим заметки $sql4="SELECT * FROM user_object_events WHERE object_id = $post[objId]"; $rez_events=mysql_query($sql4); while($event = mysql_fetch_assoc($rez_events)) { $address = 'NULL'; if ($event['address']) { $address = "'$event[address]'"; } $sum = 'NULL'; if ($event['sum']) { $sum = "'$event[sum]'"; } $schDate = 'NULL'; if ($event['schedule_date']) { $schDate = "'$event[schedule_date]'"; } $comment = 'NULL'; if ($event['comment']) { $comment = "'$event[comment]'"; } $sql = "INSERT INTO user_object_events(user_id, object_id, create_date, type, address, sum, schedule_date, comment, calendar_view) VALUES('$event[user_id]', '$id', '$event[create_date]', '$event[type]', $address, $sum, $schDate, $comment, '$event[calendar_view]')"; mysql_query($sql); } //переносим примечания $sql5 = "SELECT * FROM object_notes WHERE object_id = $post[objId]"; $rez_notes = mysql_query($sql5); while($note = mysql_fetch_assoc($rez_notes)) { $sql = "INSERT INTO object_notes(object_id, message, created_at, created_by, updated_at, updated_by) VALUES($id, '$note[message]', '$note[created_at]', '$note[created_by]', '$note[updated_at]', '$note[updated_by]')"; mysql_query($sql); } //Перенос комплекса в котором объект $sql6 = "SELECT * FROM complex_objects WHERE object_id = {$post['objId']}"; $rez_complex = mysql_query($sql6); if(mysql_num_rows($rez_complex) > 0){ while($complex = mysql_fetch_assoc($rez_complex)) { $sql = "INSERT INTO complex_objects SET object_id={$id}, complex_id={$complex['complex_id']}, corpus_id={$complex['corpus_id']}"; mysql_query($sql); $sql_sh = "UPDATE objects SET complex_id={$complex['complex_id']} WHERE id = {$id}"; $db_sphinx->query($sql_sh, true); } } /** * отправка хука */ $agencyId = (int)$agency->agencyId; if($agencyId > 0){ $dataWhook = array('action'=>'object_create', 'object_id'=>$id, 'section'=>'object', 'user_id'=>$_SESSION['id'], 'agency_id'=>$agencyId); $w_in = new WebHookIn(null, $agencyId); $w_in->check_send($dataWhook); } } }