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

196 lines
9.2 KiB
PHP
Raw Permalink 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 ($_SESSION['id'] && isset($_GET['id']) && is_numeric($_GET['id'])) {
$get = clearInputData($_GET);
$clientId = $get['id'];
$agencyId = User::getUserAgencyID();
$user = new User;
$user->get($_SESSION['id']);
if($user->agency == 0 && $user->manager == 0 && $user->id_manager == 0) {
$user->agency = 1;
}
$autosearch_instce = null;
if ($user->can('autosearch')) {
$autosearch_instce = new AutoSearch();
}
$usersIds = array();
$usersIds[] = $agencyId;
$sql_users = "SELECT id FROM users WHERE id in (select id from users where id=$agencyId or id_manager=$agencyId or id_manager in
(select id from users where id_manager=$agencyId or id_manager in
(select id from users where id_manager=$agencyId)))";
$q_users = mysql_query($sql_users);
while($r_users = mysql_fetch_assoc($q_users)){
$usersIds[] = (int)$r_users['id'];
}
$sqlClient = "select id, phone, email, objects, summa, budget from clients where id = $clientId and (id_agent in (".implode(',', $usersIds).") or who_work in (".implode(',', $usersIds)."))";
$clientRes = mysql_query($sqlClient);
if (mysql_num_rows($clientRes) > 0) {
$client = mysql_fetch_assoc($clientRes);
mask_client_contacts_inplace($client);
// Инфо-кнопка по автопоиску для клиента, который проходит по заявке подбор объекта
$autosearch = [];
if (!is_null($autosearch_instce)) {
$filter = $autosearch_instce->getFilterByClient($client['id'], $_SESSION['id']);
if (isset($filter['id'])) {
$autosearch = [
'id' => $filter['id'],
'active' => isset($filter['is_active']) ? $filter['is_active'] : 0,
'total' => isset($filter['total']) ? $filter['total'] : 0,
'count' => isset($filter['count']) ? $filter['count'] : 0,
'error' => isset($filter['error']) ? $filter['error'] : null
];
}
}
$phone = $client['phone'];
// Не форматируем уже замаскированный номер ("+7 *** *** ** **") — иначе маска покрошится substr-ом.
if (strpos($phone, '+7') !== false && strpos($phone, '*') === false) {
$phone = substr($phone, 0, 2) . "(" . substr($phone, 2, 3) . ")" . substr($phone, 5, 3) . "-" . substr($phone, 8, 2) . "-" . substr($phone, 10, 2);
}
$client_objects = json_decode(html_entity_decode($client['objects']), true);
$eventsLess = [];
$eventsEq = [];
$eventsMore = [];
$eventsSql = "SELECT count(id) as res, client_id FROM user_client_events WHERE calendar_view = 0 and cancel=0
and schedule_date is not null and client_id = $clientId and schedule_date < '" . date("Y-m-d H:i:s") . "' GROUP BY client_id";
$qEvents = mysql_query($eventsSql);
if(mysql_num_rows($qEvents) > 0){
while ($objEvent = mysql_fetch_assoc($qEvents)) {
$events_res = (int)$objEvent["res"];
}
}
$events1Sql = "SELECT count(id) as res, client_id FROM user_client_events WHERE calendar_view = 0 and cancel=0
and schedule_date is not null and client_id = $clientId and DATE_FORMAT(schedule_date, '%Y-%m-%d') = '" . date("Y-m-d") . "' GROUP BY client_id";
$qEvents1 = mysql_query($events1Sql);
if(mysql_num_rows($qEvents1) > 0){
while ($objEvent1 = mysql_fetch_assoc($qEvents1)) {
$events_res1 = (int)$objEvent1["res"];
}
}
$events2Sql = "SELECT count(id) as res, client_id FROM user_client_events WHERE calendar_view = 0 and cancel=0
and schedule_date is not null and client_id = $clientId and DATE_FORMAT(schedule_date, '%Y-%m-%d') > '" . date("Y-m-d") . "' GROUP BY client_id";
$qEvents2 = mysql_query($events2Sql);
if(mysql_num_rows($qEvents2) > 0){
while ($objEvent2 = mysql_fetch_assoc($qEvents2)) {
$events_res2 = (int)$objEvent2["res"];
}
}
?>
<div class="main-info hidden">
<div class="col">
<p class="small">Телефон</p>
<p><b class="big"><?= $phone ?></b></p>
</div>
<div class="col">
<p class="small">Почта</p>
<p><b class="big"><?= $client['email'] ?></b></p>
</div>
<?php
if (!empty($client_objects)) {
$sql_obj = "SELECT * FROM `objects` WHERE `id` in (" . implode(', ', $client_objects) . ")";
$q_obj = mysql_query($sql_obj);
$count_obj = mysql_num_rows($q_obj);
if ($count_obj > 0) {
?>
<div class="col client-object">
<p class="small">Объект</p>
<?php
while ($obj = mysql_fetch_assoc($q_obj)) { ?>
<p>
<b class="big"><a onclick="openObjectModal(<?= $obj['id'] ?>)" data-id="<?= $obj['id'] ?>"
data-client="<?= $client['id'] ?>"
href="javascript:{}"><?= $obj['nazv'] ?></a></b>
</p>
<?php } ?>
</div>
<?php
}
} ?>
<div class="col">
<p class="small">Бюджет</p>
<p><b class="big"><?= $client['budget'] ?></b></p>
</div>
<?php
if (!empty($client['summa'])) { ?>
<div class="col">
<p class="small">Сумма сделки</p>
<p><b class="big"><?= $client['summa'] ?></b></p>
</div>
<?php }
?>
<div class="col" style="margin: 0 0px 10px 0">
<div class="jw__action-button">
<div class="jw__g-button client-events-new"
data-id="<?= $client['id'] ?>">История и
задачи<?php if ($events_res > 0) { ?>
<span class="counter" style="background: #dd6360"><?=$events_res?></span>
<?php } elseif ($events_res1 > 0) {?>
<span class="counter" style="background: #efcd81"><?=$events_res1?></span>
<?php } elseif ($events_res2) {?>
<span class="counter" style="background: #4CAF50"><?=$events_res2?></span>
<?php } else {?>
<?php }?>
</div>
<?php if ($user->can('autosearch') && ($autosearch['error'] || $autosearch['active'] || $autosearch['count'] > 0)) { ?>
<div class="jw__g-button fltr-objects-list" title="Автопоиск объектов" data-id="<?= $client['id']; ?>" data-filter-id="<?= $autosearch['id']; ?>" style="z-index: 1">
Автопоиск
<?php if ($autosearch['count'] > 0) { ?>
<span title="Всего объектов: <?= $autosearch['total']; ?>, новых: <?= $autosearch['count']; ?>" class="<?= ((!empty($autosearch['error'])) ? 'counter has-error' : 'counter'); ?>">+<?= $autosearch['count']; ?></span>
<?php }
if ($autosearch['error']) { ?>
<span title="<?= $autosearch['error']; ?>" class="<?= (($autosearch['count'] > 0) ? 'error with-counter' : 'error'); ?>"><i class="ti-alert"></i></span>
<?php } ?>
</div>
<?php } ?>
</div>
</div>
<?php
$r_check_permissions = $user->checkMenuPermissions();
$user_allow_edit = $_GET['user_allow_edit'];
if ($user_allow_edit || $r_check_permissions['menu_all_submissions']) {
?>
<div class="col" style="margin: 0 0px 10px 0">
<div class="jw__action-button">
<div class="jw__g-button neweditClient" id="client_req_list_open" data-id="<?=$client['id']?>">
<span>Заявки</span>
</div>
</div>
</div>
<?php } ?>
<?php if ($r_check_permissions['cannot_create_req_manually'] == 0) { ?>
<div class="col">
<a style="margin-top:10px;" title="Добавить заявку" href="javascript:{}" data-client="<?=$client['id']?>" class="tab tab__new-object add_req_new">
<i class="ti-plus"></i>
</a>
</div>
<?php } ?>
<div class="clear"></div>
</div>
<?php
}
}
?>