196 lines
9.2 KiB
PHP
196 lines
9.2 KiB
PHP
|
|
<?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
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
?>
|