checkMenuPermissions(); $daily_closed_req_left = $r_check_permissions['daily_closed_req_limit'] - $r_check_permissions['actual_daily_closed_req']; if ($daily_closed_req_left <= 0) { exit; } $sql_user_id = $_SESSION['id']; $sql = "UPDATE user_permissions SET actual_daily_closed_req=actual_daily_closed_req + 1 WHERE user_id = $sql_user_id"; mysql_query($sql); } // Если заявка уже в работе у другого сотрудника — блокируем взятие из закрытых // if ($deleted_req == 1 && $req_id > 0) { // $sql_check_current_owner = "SELECT who_work, deleted FROM requisitions WHERE id = $req_id LIMIT 1"; // $result_check = mysql_query($sql_check_current_owner); // if ($row_check = mysql_fetch_assoc($result_check)) { // $current_owner = (int)$row_check['who_work']; // $is_deleted = (int)$row_check['deleted']; // if ($is_deleted > 0 && $current_owner != $_SESSION['id']) { // echo json_encode([ // 'error' => true, // 'message' => 'Заявка уже находится в работе у другого сотрудника и не может быть взята вами.' // ]); // exit(); // } // } // } if ($tr != 1) { $sql = "UPDATE clients SET confirm=1, who_work=$_GET[who_work] WHERE id=$_GET[id]"; if ($req_id > 0) { if ($deleted_req == 1) { $sql = "UPDATE requisitions SET confirm=1, who_work=$_GET[who_work], deleted=0 WHERE id=$req_id"; } else { $sql = "UPDATE requisitions SET confirm=1, who_work=$_GET[who_work] WHERE id=$req_id"; } } if($adjacent_id > 0) { $sql = "UPDATE adjacent_funnels SET confirm=1, who_work=$_GET[who_work] WHERE id=$adjacent_id"; } //echo $sql; if (mysql_query($sql)) { // Автопривязка ответственного по заявке к клиенту из заявки if($adjacent_id == 0) { if ($req_id > 0 ) { $sql = "UPDATE `clients` JOIN `requisitions` AS `req` ON `clients`.`id` = `req`.`client_id` AND `clients`.`who_work` = 0 AND `clients`.`confirm` = 0 AND `req`.`id` = '$req_id' AND `clients`.`who_work` = 0 AND `clients`.`confirm` = 0 SET `clients`.`who_work` = '{$_GET['who_work']}', `clients`.`confirm` = 1"; mysql_query($sql); } } //Смена срока закрытия этапа if($adjacent_id > 0) { $sql_step = "SELECT * FROM adjacent_funnels WHERE id = {$adjacent_id}"; $q_step = mysql_query($sql_step); if(mysql_num_rows($q_step) > 0){ $sql_op_step = "UPDATE adjacent_funnels SET updated_at = NOW() WHERE id = {$adjacent_id}"; mysql_query($sql_op_step); } } else if($client_id > 0){ $sql_step = "SELECT * FROM clients_funnel_step WHERE client_id = {$client_id}"; $q_step = mysql_query($sql_step); if(mysql_num_rows($q_step) > 0){ $sql_op_step = "UPDATE clients_funnel_step SET date_update = NOW() WHERE client_id = {$client_id}"; mysql_query($sql_op_step); } else { $sql_client = "SELECT funnel_id FROM clients WHERE id = {$client_id}"; $q_client = mysql_query($sql_client); $r_client = mysql_fetch_assoc($q_client); if($r_client['funnel_id'] > 0){ mysql_query("INSERT INTO clients_funnel_step (client_id) VALUES ({$client_id})"); } } } else if($req_id > 0){ $sql_step = "SELECT * FROM clients_funnel_step WHERE req_id = {$req_id}"; $q_step = mysql_query($sql_step); if(mysql_num_rows($q_step) > 0){ $sql_op_step = "UPDATE clients_funnel_step SET date_update = NOW() WHERE req_id = {$req_id}"; mysql_query($sql_op_step); } else { $sql_req = "SELECT funnel_id FROM requisitions WHERE id = {$req_id}"; $q_req = mysql_query($sql_req); $r_req = mysql_fetch_assoc($q_req); if($r_req['funnel_id'] > 0){ mysql_query("INSERT INTO clients_funnel_step (req_id) VALUES ({$req_id})"); } } } } } else { $sql_client = "SELECT doers, who_work FROM clients WHERE id=$_GET[id]"; if($req_id > 0){ $sql_client = "SELECT doers, who_work FROM requisitions WHERE id=$req_id"; } $q_client = mysql_query($sql_client); $r_client = mysql_fetch_assoc($q_client); if(!empty($r_client['doers'])){ $confirm = 1; $doers = json_decode(html_entity_decode($r_client['doers']), true); $doers[$_SESSION['id']] = 1; foreach($doers as $doer){ if($doer == 0) $confirm = 0; } $sql_up = "UPDATE clients SET doers='".clearInputElement(json_encode($doers))."', doers_confirm=$confirm WHERE id=$_GET[id]"; if($req_id > 0){ $sql_up = "UPDATE requisitions SET doers='".clearInputElement(json_encode($doers))."', doers_confirm=$confirm WHERE id=$req_id"; } mysql_query($sql_up); if($req_id > 0){ foreach($doers as $key => $agent) { $sql_up_d = "UPDATE requisition_doers SET confirm = {$agent} WHERE requisition_id ={$req_id} and user_id = {$key}"; mysql_query($sql_up_d); } } else if($_GET['id'] > 0){ foreach($doers as $key => $agent) { $sql_up_d = "UPDATE clients_doers SET confirm = {$agent} WHERE client_id ={$_GET['id']} and user_id = {$key}"; mysql_query($sql_up_d); } } $sql_up_doer = "UPDATE doers_emp_client SET confirm=1 WHERE client_id =$_GET[id] and who_work = $r_client[who_work] and doer_id = $_SESSION[id]"; if($req_id > 0){ $sql_up_doer = "UPDATE doers_emp_client SET confirm=1 WHERE req_id =$req_id and who_work = $r_client[who_work] and doer_id = $_SESSION[id]"; } mysql_query($sql_up_doer); } } if($tr != 1){ $sql="UPDATE user_client_events SET user_id=$_GET[who_work] WHERE client_id=$_GET[id] and type != 'step' and type != 'file'"; if($req_id > 0){ $sql = "UPDATE user_client_events SET user_id=$_GET[who_work] WHERE req_id=$req_id and type != 'step' and type != 'file'"; } mysql_query($sql); } if($tr != 1){ $sql = "UPDATE `events_clients` SET `read` = 1, date_update='".date('Y-m-d H:i:s')."' WHERE client_id = $_GET[id] AND event IN ('transmitted', 'notadopted')"; if($req_id > 0){ $sql = "UPDATE `events_clients` SET `read` = 1, date_update='".date('Y-m-d H:i:s')."' WHERE req_id = $req_id AND event IN ('transmitted', 'notadopted')"; } mysql_query($sql); } else { $sql_2 = "UPDATE `events_clients` SET `read` = 1, date_update='".date('Y-m-d H:i:s')."' WHERE client_id = $_GET[id] AND event IN ('transmitted_parallel', 'notadopted_doer') AND from_id = ".$_SESSION['id']; if($req_id > 0){ $sql_2 = "UPDATE `events_clients` SET `read` = 1, date_update='".date('Y-m-d H:i:s')."' WHERE req_id = $req_id AND event IN ('transmitted_parallel', 'notadopted_doer') AND from_id = ".$_SESSION['id']; } mysql_query($sql_2); } $accepted = 'accepted'; $type_funnel = 'main'; if($adjacent_id > 0) { $type_funnel = 'adjacent'; } if($tr == 1) { $accepted = 'accepted_doer'; } $sql = "INSERT INTO `events_clients` (user_id, client_id, from_id, event, `read`) VALUES ('".$_SESSION['id']."', '".$_GET['id']."', '".$_SESSION['id']."', '".$accepted."', '1')"; if($req_id > 0){ if ($deleted_req == 1) { $sql = "INSERT INTO `events_clients` (user_id, req_id, from_id, event, `read`) VALUES ('".$_SESSION['id']."', '".$req_id."', '".$_SESSION['id']."', 'taken_from_closed', '1')"; } else { $sql = "INSERT INTO `events_clients` (user_id, req_id, from_id, event, `read`) VALUES ('".$_SESSION['id']."', '".$req_id."', '".$_SESSION['id']."', '".$accepted."', '1')"; } } if($adjacent_id > 0 && $req_id > 0){ //Для смежной воронки ищем ответственного по заявке в основной воронке и смежную воронку $sql_ad = "SELECT * FROM `adjacent_funnels` WHERE id = {$adjacent_id}"; $q_ad = mysql_query($sql_ad); $r_ad = mysql_fetch_assoc($q_ad); $funnel_id = $r_ad['funnel_id']; $sql_req = "SELECT * FROM requisitions WHERE id = {$req_id}"; $q_req = mysql_query($sql_req); if($r_req = mysql_fetch_assoc($q_req)){ if($r_req['who_work'] > 0){ $sql_up_ev = "INSERT INTO `events_clients` (user_id, req_id, from_id, event, `read`, funnel_type, funnelid) VALUES ('".$_SESSION['id']."', '".$req_id."', '".$r_req['who_work']."', 'transmitted_adjacent', '1', '{$type_funnel}',{$funnel_id})"; mysql_query($sql_up_ev); } } } $agency = new User; $agency->get($_SESSION['id']); mysql_query($sql); $sqlUser = "SELECT `first_name`, `last_name`, `middle_name`, `phone`, `agency_name` FROM `users` where id=".$_SESSION['id']; $qUser = mysql_query($sqlUser); $rUser = mysql_fetch_assoc($qUser); $sobstv = trim($rUser['last_name'] . ' ' . $rUser['first_name'] . ' ' . $rUser['middle_name']); if ($_SESSION['agency']) { $sobstv = $sobstv . ", агентство " . $rUser['agency_name']; } else { if (isset($agency->agencyName)) { $sobstv = trim($rUser['last_name'] . ' ' . $rUser['first_name'] . ' ' . $rUser['middle_name']) . ", агентство " . $agency->agencyName; } else { $sobstv = trim($rUser['last_name'] . ' ' . $rUser['first_name'] . ' ' . $rUser['middle_name']); } } //Объединение заявок для Домрил /* if($tr != 1 && $req_id > 0 && $agency->agencyId == 19895){ $client_req_id = 0; $sql_cl_req = "SELECT * FROM requisitions WHERE id = {$req_id}"; $q_cl_req = mysql_query($sql_cl_req); $r_cl_req = mysql_fetch_assoc($q_cl_req); $client_req_id = (int)$r_cl_req['client_id']; if($client_req_id > 0){ $sql_req = "SELECT * FROM requisitions WHERE client_id='{$client_req_id}' AND who_work = $_GET[who_work] AND deleted = 0 AND cancel = 0 AND id != {$req_id}"; $q_req = mysql_query($sql_req); while($r_req = mysql_fetch_assoc($q_req)){ /*$comment = "Обращался повторно
"; $comment .= "Заявка: ID ".$r_req['id'] ." от ".date('d.m.Y H:i:s', strtotime($r_req['created_at'])); $sql_ev = "INSERT INTO user_client_events (req_id, `type`, comment, user_id, from_id, create_date, calendar_view) VALUES ($req_id, 'comment', '{$comment}', {$_GET['who_work']}, {$_GET['who_work']}, NOW(), 1)"; mysql_query($sql_ev);*/ /* mysql_query("UPDATE requisitions SET cancel = 1 WHERE id = $r_req[id]"); $dop_text = "Объединение c заявкой ID ".$r_req['id']; $in_ev = "INSERT INTO `events_clients` (`user_id`, `req_id`, `event`, `dop_text`, `read`) VALUES ('{$_GET['who_work']}', '$req_id', 'update', '{$dop_text}', 1)"; mysql_query($in_ev); } } }*/ if($tr != 1 && $adjacent_id == 0){ $num_search = num_search($rUser['phone']); //Передача объекта if($req_id > 0){ $sql_cl = "SELECT `name` as `fio`, object_id, type_id, (SELECT heir FROM requisitions_type WHERE id = requisitions.type_id) as heir FROM `requisitions` WHERE `id` = ".$req_id; $q_cl = mysql_query($sql_cl); $r_cl = mysql_fetch_assoc($q_cl); if($r_cl['object_id'] && ($r_cl['type_id'] == 2 || $r_cl['heir'] == 2)){ $sql_up = "UPDATE objects SET id_add_user = '".$_SESSION['id']."', phone='".$rUser['phone']."', sobstv='".$sobstv."' WHERE id = ".$r_cl['object_id']; //echo $sql_up; mysql_query($sql_up); $sql_sph = "UPDATE objects SET id_add_user = {$_SESSION['id']} WHERE id = ".$r_cl['object_id']; $db_sphinx->query($sql_sph); } } else { $sql_confirm_obj = "SELECT * FROM client_confirm_objects WHERE client_id = $_GET[id] AND status = 0"; $q_confirm_obj = mysql_query($sql_confirm_obj); $is_confirm_obj = false; if(mysql_num_rows($q_confirm_obj) > 0){ $r_confirm_obj = mysql_fetch_assoc($q_confirm_obj); $is_confirm_obj = (bool)$r_confirm_obj['confirm_objects']; } if($is_confirm_obj){ $sql_client = "SELECT * FROM `client_objects` WHERE client_id = $_GET[id]"; $q_client = mysql_query($sql_client); while($object = mysql_fetch_assoc($q_client)){ $sql_up = "UPDATE objects SET id_add_user = '".$_SESSION['id']."', phone='".$rUser['phone']."', sobstv='".$sobstv."' WHERE id = ".$object['object_id']; //echo $sql_up; mysql_query($sql_up); $sql_sph = "UPDATE objects SET id_add_user = {$_SESSION['id']} WHERE id = ".$object['object_id']; $db_sphinx->query($sql_sph); } } mysql_query("UPDATE client_confirm_objects_req SET status = 1 WHERE client_id = $_GET[id] AND status = 0"); } } $cl_count = new Clients; echo $cl_count->getCountResClients($_SESSION['id']); } ?>