Joywork/ajax/archiveUserObjectWithReason.php
2026-05-22 21:21:54 +03:00

154 lines
6.7 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
if (!isset($post)) {
$post = $_POST;
}
if($_SESSION['id'] && $post['objId']) {
$db_sphinx = new MysqlPdo(hstsph2, null, null, null, true, '9306');
$post = clearInputData($post);
$sql3="SELECT objects.*
FROM objects
WHERE objects.id = $post[objId]";
$rez_obj=mysql_query($sql3);
$obj=mysql_fetch_assoc($rez_obj);
$canArchive = false;
if ($obj['id_add_user'] > 0) {
$objectUser = new User;
$objectUser->get($obj['id_add_user']);
if (!$objectUser->agencyId) {
$objectUser->agencyId = $obj['id_add_user'];
}
$currentUser = new User;
$currentUser->get($_SESSION['id']);
if (!$currentUser->agencyId) {
$currentUser->agencyId = $_SESSION['id'];
}
if (isset($objectUser->agencyId) && $objectUser->agencyId == $currentUser->agencyId) {
$canArchive = true;
}
}
if ($obj && $canArchive) {
//Старое состояние рекламы
$ad = (int)$obj['use_in_advert'];
if($ad == 1){
$tel = new Telegram();
$tel->object_ad($obj['id'], 0);
}
$sql = "UPDATE objects SET archive = 1, use_in_advert=0, add_to_bn_feed=0,
add_to_emls_feed=0, add_to_avito_feed=0, add_to_cian_feed=0, add_to_domclick_feed=0, add_to_yandex_feed=0, add_to_zipal=0, is_main = 0
WHERE id=$post[objId] AND id_add_user=$obj[id_add_user]";
mysql_query($sql);
$moderationAdvertClass = new ModerationAdvert();
$moderationAdvertClass->checkAndClear($post['objId'],'use_in_advert');
//Запрос к сфинкс
$sql = "UPDATE objects SET archive = 1, use_in_advert=0, add_to_bn_feed=0, add_to_emls_feed=0, add_to_avito_feed=0, add_to_cian_feed=0, add_to_domclick_feed=0, add_to_yandex_feed=0, add_to_zipal=0
WHERE id=$post[objId] AND id_add_user=$obj[id_add_user]";
$db_sphinx->query($sql, true);
$sql = "SELECT count(id) FROM zipal_objects WHERE zipal_id is not null and object_id = $post[objId]";
$rez = mysql_query($sql);
$countButton = mysql_result($rez,0);
if ($countButton > 0) {
$sql = "UPDATE zipal_objects SET sended = 1, published = 1, unpublish = 1, unpublish_user_id = $currentUser->id WHERE object_id = $post[objId]";
mysql_query($sql);
}
$sql = "SELECT count(id) FROM advertising_package_object_publish WHERE zipal_id is not null and object_id = $post[objId]";
$rez = mysql_query($sql);
$countPack = mysql_result($rez,0);
if ($countPack > 0) {
$sql = "UPDATE advertising_package_object_publish SET sended = 1, published = 1, unpublish = 1, active = 0, unpublish_user_id = $currentUser->id WHERE object_id = $post[objId]";
mysql_query($sql);
}
if ($countButton > 0 || $countPack > 0) {
$logText = "Отправлен на отмену публикации в связи с перемещением в архив";
$sqlLog = "INSERT INTO object_publish_log(object_id, created_at, user_id, log_text) VALUES ('$post[objId]', NOW(), '$currentUser->id', '$logText')";
mysql_query($sqlLog);
}
//добавляем коммент в задачи
$com = 'Объект перенесен в Архив по причине: ';
if (isset($post['deal']) && $post['deal'] == 'true') {
$com = $com . "по объекту прошла сделка";
$com = $com . '<br/>Цена продажи объекта: ' . number_format($post['stoim'], 0, ',', ' ') . '<span class="rub rub_small">p</span>';
} else {
$com = $com . $post['reason'];
}
if ($post['comment']) {
$com = $com . '<br/>Комментарий: ' . $post['comment'];
}
$sql = "INSERT INTO user_object_events(user_id, object_id, create_date, type, address, sum, schedule_date, comment, calendar_view)
VALUES('$_SESSION[id]', '$post[objId]', NOW(), 'comment', NULL, NULL, NULL, '$com', '1')";
mysql_query($sql);
if (isset($post['stoim']) && $post['stoim']) {
//добавляем цену (если есть) как Итоговую цену
$sqlPriceHist = "INSERT INTO objects_price_history (object_id, date_change_price, price, price_ku, final_sale_price) VALUES
($post[objId], now(), '$post[stoim]', 0, 1)";
mysql_query($sqlPriceHist);
}
//снимаем ВСЕ активные публикации объекта
$sqlUpdateStat = "UPDATE object_publish_statistic SET unpublish_user_id = '$currentUser->id', publish_end_date = NOW(), days_count = DATEDIFF(NOW(), publish_start_date) WHERE object_id = $post[objId] AND unpublish_user_id IS NULL AND advertising_package_object_publish_id IS NULL AND zipal_objects_id IS NULL";
mysql_query($sqlUpdateStat);
$sqlPrices = "SELECT * FROM `object_prices`
WHERE `object_id` = '$post[objId]' AND `agency_id`='$currentUser->agencyId'";
if ($queryPrices = mysql_query($sqlPrices)) {
if (mysql_num_rows($queryPrices) > 0) {
$sql = "UPDATE `object_prices` SET `fact_price` = '$post[stoim]' WHERE `object_id` = '$post[objId]' AND `agency_id`='$currentUser->agencyId'";
mysql_query($sql);
} else {
$sql = "INSERT INTO `object_prices` (
`object_id`,
`price`,
`prep_price`,
`start_price`,
`fact_price`,
`agency_id`
) VALUES (
'$post[objId]',
'$obj[stoim]',
'0',
'0',
'$post[stoim]',
'$currentUser->agencyId'
)";
mysql_query($sql);
}
}
if($currentUser->agencyId > 0){
$dataWhook = array('action'=>'object_archive', 'object_id'=>$post['objId'], 'section'=>'object', 'user_id'=>$_SESSION['id'], 'agency_id'=>$currentUser->agencyId, 'reason'=>$com);
$w_in = new WebHookIn(null, $currentUser->agencyId);
$w_in->check_send($dataWhook);
}
}
}