Joywork/ajax/cancelEvent.php

37 lines
2.1 KiB
PHP
Raw Normal View History

2026-05-22 20:21:54 +02:00
<?php
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
if(isset($_POST['cancelId'])){
$id = (int)$_POST['cancelId'];
2026-06-25 09:19:04 +02:00
// Помечаем событие как отменённое
2026-05-22 20:21:54 +02:00
$sql = "UPDATE user_client_events SET cancel=1 WHERE id = $id";
mysql_query($sql);
2026-06-25 09:19:04 +02:00
// Если событие привязано к сделке — отменяем сделку тоже
$sql_deal = "SELECT deal_id FROM user_client_events WHERE id = $id AND deal_id IS NOT NULL AND deal_id > 0 LIMIT 1";
$rez = mysql_query($sql_deal);
if ($rez && mysql_num_rows($rez) > 0) {
$row = mysql_fetch_assoc($rez);
$deal_id = intval($row['deal_id']);
// Помечаем сделку как отменённую (status = 2)
mysql_query("UPDATE deals SET status = 2 WHERE id = $deal_id");
2026-07-06 14:47:46 +02:00
// Обнуляем deal_id у связанных заявок
$dealRow = mysql_fetch_assoc(mysql_query("SELECT side_one_requisition_id, side_two_requisition_id FROM deals WHERE id = $deal_id"));
$linkedReqs = array_filter(array_map('intval', [$dealRow['side_one_requisition_id'], $dealRow['side_two_requisition_id']]));
if (!empty($linkedReqs)) {
mysql_query("UPDATE requisitions SET deal_id = NULL WHERE id IN (" . implode(',', $linkedReqs) . ")");
}
// Запись в историю сделки — кто отменил
$user_id = $_SESSION['id'];
$cancel_comment = "Сделка отменена. Отменил: " . $_SESSION['fio'];
mysql_query("INSERT INTO user_client_events (user_id, deal_id, type, name, comment, create_date) VALUES ($user_id, $deal_id, 'deal', 'Отмена сделки', '" . addslashes($cancel_comment) . "', NOW())");
2026-06-25 09:19:04 +02:00
// Помечаем все остальные события этой сделки как отменённые
mysql_query("UPDATE user_client_events SET cancel = 1 WHERE deal_id = $deal_id AND cancel = 0");
mysql_query("UPDATE user_object_events SET cancel = 1 WHERE deal_id = $deal_id AND cancel = 0");
}
2026-05-22 20:21:54 +02:00
}