1929 lines
52 KiB
PHP
1929 lines
52 KiB
PHP
|
|
<?php
|
|||
|
|
header("Access-Control-Allow-Origin: *");
|
|||
|
|
|
|||
|
|
require_once($_SERVER['DOCUMENT_ROOT']."/ajax/vue_php_function.php");
|
|||
|
|
|
|||
|
|
// error_reporting(E_ALL | E_STRICT);
|
|||
|
|
// ini_set('display_errors', 1);
|
|||
|
|
|
|||
|
|
$data = json_decode(file_get_contents("php://input"));
|
|||
|
|
|
|||
|
|
$request = $data->request;
|
|||
|
|
header('Access-Control-Allow-Credentials: true');
|
|||
|
|
header('Access-Control-Max-Age: 0');
|
|||
|
|
header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, PATCH, OPTIONS');
|
|||
|
|
header('Access-Control-Allow-Headers: X-Debug, X-Requested-With, Content-Type, Accept, Origin, Authorization, Access-Token');
|
|||
|
|
header('Access-Control-Expose-Headers: Authorization, Access-Token');
|
|||
|
|
|
|||
|
|
header('Content-Type: application/json');
|
|||
|
|
|
|||
|
|
if (isset($_POST['request']) && $_POST['request'] == 'create_requisition') {
|
|||
|
|
// var_dump($_POST);die;
|
|||
|
|
// $token = $_POST['token'];
|
|||
|
|
// $full_name = $_POST['full_name'];
|
|||
|
|
// $phone_number = $_POST['phone_number'];
|
|||
|
|
// $request = $_POST['request'];
|
|||
|
|
// $user_id = $_POST['user_id'];
|
|||
|
|
$data = $_POST;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
$complex->create_frame_requisition($data);
|
|||
|
|
echo json_encode(['status' => true, 'message' => 'Заявка создана'], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(isset($_POST['request']) && $_POST['request'] == 'create_import') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($_POST['user_id'])){
|
|||
|
|
$user_id = (int)$_POST['user_id'];
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
if (isset($_FILES['document'])) {
|
|||
|
|
$document = $_FILES['document'];
|
|||
|
|
} else {
|
|||
|
|
if (isset($_POST['import_url'])) {
|
|||
|
|
$content = file_get_contents($_POST['import_url']);
|
|||
|
|
$filename = basename($_POST['import_url']);
|
|||
|
|
$temp_name = tempnam(sys_get_temp_dir(), 'tmp-document');
|
|||
|
|
|
|||
|
|
file_put_contents($temp_name, $content);
|
|||
|
|
$document = [
|
|||
|
|
'name' => $filename,
|
|||
|
|
'tmp_name' => $temp_name
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!empty($document)) {
|
|||
|
|
$urls = $complex->createImport($document);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
echo json_encode(['status' => false, 'message' => 'Document required'], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'update_house_import') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$import_id = (int)$data->import_id;
|
|||
|
|
$fields = (array)$data->fields;
|
|||
|
|
|
|||
|
|
$result = $complex->updateImportHouse($fields, $import_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'start_house_import') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$import_id = (int)$data->import_id;
|
|||
|
|
|
|||
|
|
$result = $complex->startImportHouse($import_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
if ($request == 'get_house_import') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$import_id = (int)$data->import_id;
|
|||
|
|
|
|||
|
|
$result = $complex->getImportHouse($import_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
if ($request == 'download_house') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$complex_name = $data->complex_name;
|
|||
|
|
|
|||
|
|
// Генерируем Excel и сразу отдаем
|
|||
|
|
$complex->downloadHouse($house_id, $complex_name);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_house_import_status') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$import_id = (int)$data->import_id;
|
|||
|
|
|
|||
|
|
$result = $complex->getImportHouseStatus($import_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'add_photos_to_complex') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$complex_id = $_POST['complex_id'];
|
|||
|
|
$input_photos = $_FILES['photos'];
|
|||
|
|
$photos = [];
|
|||
|
|
if (!empty($input_photos)) {
|
|||
|
|
foreach ($input_photos['name'] as $index => $value) {
|
|||
|
|
$photos[] = [
|
|||
|
|
'name' => $value,
|
|||
|
|
'tmp_name' => $input_photos['tmp_name'][$index],
|
|||
|
|
'type' => $input_photos['type'][$index],
|
|||
|
|
'error' => $input_photos['error'][$index],
|
|||
|
|
'size' => $input_photos['size'][$index],
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
$urls = $complex->addPhotoToComplex($photos, $complex_id);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'add_photos_to_house') {
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_id = $_POST['house_id'];
|
|||
|
|
$input_photos = $_FILES['photos'];
|
|||
|
|
$photos = [];
|
|||
|
|
if (!empty($input_photos)) {
|
|||
|
|
foreach ($input_photos['name'] as $index => $value) {
|
|||
|
|
$photos[] = [
|
|||
|
|
'name' => $value,
|
|||
|
|
'tmp_name' => $input_photos['tmp_name'][$index],
|
|||
|
|
'type' => $input_photos['type'][$index],
|
|||
|
|
'error' => $input_photos['error'][$index],
|
|||
|
|
'size' => $input_photos['size'][$index],
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
$urls = $complex->addPhotosToHouse($photos, $house_id);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'save_house_utp') {
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_id = $_POST['house_id'];
|
|||
|
|
$desc = $_POST['desc'];
|
|||
|
|
$id = isset($_POST['id']) ? $_POST['id'] : null;
|
|||
|
|
$title = $_POST['title'];
|
|||
|
|
$input_photo = isset($_FILES['photo']) ? $_FILES['photo'] : null;
|
|||
|
|
|
|||
|
|
if (!empty($input_photo)) {
|
|||
|
|
$photo = [
|
|||
|
|
'name' => $input_photo['name'],
|
|||
|
|
'tmp_name' => $input_photo['tmp_name'],
|
|||
|
|
'type' => $input_photo['type'],
|
|||
|
|
'error' => $input_photo['error'],
|
|||
|
|
'size' => $input_photo['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
} else {
|
|||
|
|
$photo = null;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$urls = $complex->saveHouseUTP($house_id, $desc, $id, $title, $photo);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'save_house_decoration') {
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_id = $_POST['house_id'];
|
|||
|
|
$desc = $_POST['desc'];
|
|||
|
|
$id = isset($_POST['id']) ? $_POST['id'] : null;
|
|||
|
|
$decorationId = $_POST['decoration_id'];
|
|||
|
|
$input_photo = isset($_FILES['photo']) ? $_FILES['photo'] : null;
|
|||
|
|
$input_photo2 = isset($_FILES['photo2']) ? $_FILES['photo2'] : null;
|
|||
|
|
$input_photo3 = isset($_FILES['photo3']) ? $_FILES['photo3'] : null;
|
|||
|
|
$input_photo4 = isset($_FILES['photo4']) ? $_FILES['photo4'] : null;
|
|||
|
|
$input_photo5 = isset($_FILES['photo5']) ? $_FILES['photo5'] : null;
|
|||
|
|
|
|||
|
|
if (!empty($input_photo)) {
|
|||
|
|
$photo = [
|
|||
|
|
'name' => $input_photo['name'],
|
|||
|
|
'tmp_name' => $input_photo['tmp_name'],
|
|||
|
|
'type' => $input_photo['type'],
|
|||
|
|
'error' => $input_photo['error'],
|
|||
|
|
'size' => $input_photo['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
} else {
|
|||
|
|
$photo = $_POST['photo'];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!empty($input_photo2)) {
|
|||
|
|
$photo2 = [
|
|||
|
|
'name' => $input_photo2['name'],
|
|||
|
|
'tmp_name' => $input_photo2['tmp_name'],
|
|||
|
|
'type' => $input_photo2['type'],
|
|||
|
|
'error' => $input_photo2['error'],
|
|||
|
|
'size' => $input_photo2['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
} else {
|
|||
|
|
$photo2 = $_POST['photo2'];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!empty($input_photo3)) {
|
|||
|
|
$photo3 = [
|
|||
|
|
'name' => $input_photo3['name'],
|
|||
|
|
'tmp_name' => $input_photo3['tmp_name'],
|
|||
|
|
'type' => $input_photo3['type'],
|
|||
|
|
'error' => $input_photo3['error'],
|
|||
|
|
'size' => $input_photo3['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
} else {
|
|||
|
|
$photo3 = $_POST['photo3'];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!empty($input_photo4)) {
|
|||
|
|
$photo4 = [
|
|||
|
|
'name' => $input_photo4['name'],
|
|||
|
|
'tmp_name' => $input_photo4['tmp_name'],
|
|||
|
|
'type' => $input_photo4['type'],
|
|||
|
|
'error' => $input_photo4['error'],
|
|||
|
|
'size' => $input_photo4['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
} else {
|
|||
|
|
$photo4 = $_POST['photo4'];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!empty($input_photo5)) {
|
|||
|
|
$photo5 = [
|
|||
|
|
'name' => $input_photo5['name'],
|
|||
|
|
'tmp_name' => $input_photo5['tmp_name'],
|
|||
|
|
'type' => $input_photo5['type'],
|
|||
|
|
'error' => $input_photo5['error'],
|
|||
|
|
'size' => $input_photo5['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
} else {
|
|||
|
|
$photo5 = $_POST['photo5'];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$urls = $complex->saveHouseDecoration($house_id, $desc, $id, $decorationId, $photo, $photo2, $photo3, $photo4, $photo5);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'add_plan_to_house') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_id = $_POST['house_id'];
|
|||
|
|
$position = $_POST['position'];
|
|||
|
|
|
|||
|
|
$input_photos = $_FILES['photos'];
|
|||
|
|
$photos = [];
|
|||
|
|
if (!empty($input_photos)) {
|
|||
|
|
foreach ($input_photos['name'] as $index => $value) {
|
|||
|
|
$photos[] = [
|
|||
|
|
'name' => $value,
|
|||
|
|
'tmp_name' => $input_photos['tmp_name'][$index],
|
|||
|
|
'type' => $input_photos['type'][$index],
|
|||
|
|
'error' => $input_photos['error'][$index],
|
|||
|
|
'size' => $input_photos['size'][$index],
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$urls = $complex->addPlanToHouse($house_id, $photos, $position);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_media_entrances') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$includes = (array)$data->includes;
|
|||
|
|
$user_id = 0;
|
|||
|
|
$has_token = false;
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$token = trim($data->token);
|
|||
|
|
$has_token = true;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$accessData = $complex->get_frame_access($token);
|
|||
|
|
|
|||
|
|
if (!empty($accessData['access']) && isset($accessData['agency_id'])) {
|
|||
|
|
$user_id = (int)$accessData['agency_id'];
|
|||
|
|
} else {
|
|||
|
|
http_response_code(403);
|
|||
|
|
echo json_encode([
|
|||
|
|
'error' => 'Access denied or invalid token',
|
|||
|
|
'token' => $token
|
|||
|
|
], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
}else if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->get_media_entrances($house_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'save_complex_action') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$complex_id = $_POST['complex_id'];
|
|||
|
|
$desc = $_POST['desc'];
|
|||
|
|
$id = isset($_POST['id']) ? $_POST['id'] : null;
|
|||
|
|
$name = $_POST['name'];
|
|||
|
|
$input_photo = isset($_FILES['image']) ? $_FILES['image'] : null;
|
|||
|
|
|
|||
|
|
if (!empty($input_photo)) {
|
|||
|
|
$photo = [
|
|||
|
|
'name' => $input_photo['name'],
|
|||
|
|
'tmp_name' => $input_photo['tmp_name'],
|
|||
|
|
'type' => $input_photo['type'],
|
|||
|
|
'error' => $input_photo['error'],
|
|||
|
|
'size' => $input_photo['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
} else {
|
|||
|
|
$photo = null;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$response = $complex->saveComplexAction($name, $desc, $photo, '', $id, $complex_id);
|
|||
|
|
echo json_encode($response, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'add_floor_plan_to_house') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_id = $_POST['house_id'];
|
|||
|
|
$input_photo = $_FILES['photo'];
|
|||
|
|
|
|||
|
|
if (!empty($input_photo)) {
|
|||
|
|
$photo = [
|
|||
|
|
'name' => $input_photo['name'],
|
|||
|
|
'tmp_name' => $input_photo['tmp_name'],
|
|||
|
|
'type' => $input_photo['type'],
|
|||
|
|
'error' => $input_photo['error'],
|
|||
|
|
'size' => $input_photo['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
$urls = $complex->addFloorPlanToHouse($house_id, $photo);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
echo json_encode(['status' => true], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_house_plans') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$plan_ids = (array)$data->plan_ids;
|
|||
|
|
|
|||
|
|
$result = $complex->deleteHousePlans($plan_ids);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_house_utp') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$id = (int)$data->id;
|
|||
|
|
|
|||
|
|
$result = $complex->deleteHouseUTP($id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_house_decoration') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$id = (int)$data->id;
|
|||
|
|
|
|||
|
|
$result = $complex->deleteHouseDecoration($id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_complex_action') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$id = (int)$data->id;
|
|||
|
|
|
|||
|
|
$result = $complex->deletecComplesAction($id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_house_photo') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$photo_id = (int)$data->photo_id;
|
|||
|
|
|
|||
|
|
$result = $complex->deleteHousePhoto($photo_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_complex_photo') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$photo_id = (int)$data->photo_id;
|
|||
|
|
|
|||
|
|
$result = $complex->deleteComplexPhoto($photo_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'update_complex_photo') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$photo_id = $_POST['photo_id'];
|
|||
|
|
$input_photo = $_FILES['photo'];
|
|||
|
|
$photos = [];
|
|||
|
|
$result = [];
|
|||
|
|
if ($input_photo) {
|
|||
|
|
$photo = [
|
|||
|
|
'name' => $input_photo['name'],
|
|||
|
|
'tmp_name' => $input_photo['tmp_name'],
|
|||
|
|
'type' => $input_photo['type'],
|
|||
|
|
'error' => $input_photo['error'],
|
|||
|
|
'size' => $input_photo['size'],
|
|||
|
|
];
|
|||
|
|
$result = $complex->updateComplexPhoto($photo, $photo_id);
|
|||
|
|
} else {
|
|||
|
|
$result = ['status' => false, 'message' => 'Photo not found'];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'add_photos_to_room_plan') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$plan_id = $_POST['plan_id'];
|
|||
|
|
$position = $_POST['position'];
|
|||
|
|
|
|||
|
|
$input_photos = $_FILES['photos'];
|
|||
|
|
$photos = [];
|
|||
|
|
if (!empty($input_photos)) {
|
|||
|
|
foreach ($input_photos['name'] as $index => $value) {
|
|||
|
|
$photos[] = [
|
|||
|
|
'name' => $value,
|
|||
|
|
'tmp_name' => $input_photos['tmp_name'][$index],
|
|||
|
|
'type' => $input_photos['type'][$index],
|
|||
|
|
'error' => $input_photos['error'][$index],
|
|||
|
|
'size' => $input_photos['size'][$index],
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$urls = $complex->addPhotosToRoomPlan($photos, $plan_id, $position);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($_POST['request'] == 'update_photo_floor_plan') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$floor_plan_id = $_POST['floor_plan_id'];
|
|||
|
|
$input_photo = $_FILES['photo'];
|
|||
|
|
if (!empty($input_photo)) {
|
|||
|
|
$photo = [
|
|||
|
|
'name' => $input_photo['name'],
|
|||
|
|
'tmp_name' => $input_photo['tmp_name'],
|
|||
|
|
'type' => $input_photo['type'],
|
|||
|
|
'error' => $input_photo['error'],
|
|||
|
|
'size' => $input_photo['size'],
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex->deletePhotoFloorPlan($floor_plan_id);
|
|||
|
|
$photo = $complex->addPhotoToFloorPlan($photo, $floor_plan_id);
|
|||
|
|
echo json_encode($photo, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'update_plan_photo_position') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$image_id = $data->image_id;
|
|||
|
|
$position = $data->position;
|
|||
|
|
$result = $complex->updatePlanPhotoPosition($image_id, $position);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_photo_from_room_plan') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$photo_id = (int)$data->photo_id;
|
|||
|
|
|
|||
|
|
$result = $complex->deletePhotoFromRoomPlan($photo_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'update_house_plans') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$plan_ids = (array)$data->plan_ids;
|
|||
|
|
$fields = (array)$data->fields;
|
|||
|
|
|
|||
|
|
$result = $complex->updateHousePlans($plan_ids, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'update_house_floor_plans') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$plan_ids = (array)$data->plan_ids;
|
|||
|
|
$floor_ids = (array)$data->floor_ids;
|
|||
|
|
$fields = (array)$data->fields;
|
|||
|
|
$use_bulk = (bool)$data->use_bulk;
|
|||
|
|
|
|||
|
|
$result = $complex->updateHouseFloorPlans($plan_ids, $floor_ids, $fields, $use_bulk);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Типы комплексов
|
|||
|
|
if($request == 'get_types_complex') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$types = $complex->get_types_complex();
|
|||
|
|
echo json_encode($types, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Страны
|
|||
|
|
if($request == 'get_country'){
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$country = $complex -> get_country();
|
|||
|
|
echo json_encode($country, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Регионы
|
|||
|
|
if($request == 'get_rf_regions') {
|
|||
|
|
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$rf_regions = $complex->get_rf_regions();
|
|||
|
|
echo json_encode($rf_regions, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Метро
|
|||
|
|
if($request == 'get_metro') {
|
|||
|
|
$region_id = $data->region_id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$metro_list = $complex->get_metro($region_id);
|
|||
|
|
echo json_encode($metro_list, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//ЖК новостройки
|
|||
|
|
if($request == 'get_blocks'){
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->get_blocks();
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Преобразование нового корпуса
|
|||
|
|
if($request == 'convert_corpus') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$corpus = $data->corpus;
|
|||
|
|
$deadline = $data->deadline;
|
|||
|
|
$corpus_id = $data->corpus_id;
|
|||
|
|
$corpus_floors = (int)$data->corpus_floors;
|
|||
|
|
$corpus_floors_ready = (int)$data->corpus_floors_ready;
|
|||
|
|
$corpus_fz_214 = (int)$data->corpus_fz_214;
|
|||
|
|
$corpus_status = $data->corpus_status;
|
|||
|
|
$result = $complex->corpus_convert($corpus, $deadline, $corpus_id, $corpus_floors, $corpus_floors_ready, $corpus_fz_214, $corpus_status);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Список застройщиков
|
|||
|
|
if($request == 'get_builders'){
|
|||
|
|
$agency_id = null;
|
|||
|
|
if(isset($data->agency_id)){
|
|||
|
|
$agency_id = (int)$data->agency_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->get_builder_list($agency_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Добавить застройщика
|
|||
|
|
if($request == 'add_builder'){
|
|||
|
|
$name = $data->name;
|
|||
|
|
$phone = $data->phone;
|
|||
|
|
$link = $data->link;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->addBuilder($name, $phone, $link);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Фото ЖК
|
|||
|
|
if($request == 'get_photos'){
|
|||
|
|
$block_id = (int)$data->block_id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->getPhotos($block_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Типы оплат
|
|||
|
|
if($request == 'get_payment_types') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$types = $complex->get_payment_types();
|
|||
|
|
echo json_encode($types, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Типы отделок
|
|||
|
|
if($request == 'get_deсoration_types') {
|
|||
|
|
$result = array();
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$types = $complex->get_decarations();
|
|||
|
|
if(isset($types['options'])){
|
|||
|
|
$result = $types['options'];
|
|||
|
|
}
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Классы жилья
|
|||
|
|
if($request == 'get_housing_class') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$types = $complex->get_housing_class();
|
|||
|
|
echo json_encode($types, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Отделка
|
|||
|
|
if($request == 'get_decorations'){
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$decorations = $complex->get_decorations();
|
|||
|
|
echo json_encode($decorations, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_payment_types_list'){
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$paymentTypesList = $complex->get_payment_types_list();
|
|||
|
|
echo json_encode($paymentTypesList, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_windows_placements'){
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$windows_placements = $complex->get_windows_placements();
|
|||
|
|
echo json_encode($windows_placements, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
//Типы домов
|
|||
|
|
if($request == 'get_house_types'){
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_types = $complex->get_house_types();
|
|||
|
|
echo json_encode($house_types, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Материалы домов
|
|||
|
|
if($request == 'get_house_material'){
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_material = $complex->get_house_material();
|
|||
|
|
echo json_encode($house_material, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_house_plans') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$has_token = false;
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$has_token = true;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_plans = $complex->get_house_plans($house_id, $has_token);
|
|||
|
|
echo json_encode($house_plans, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_entrances_floor_plans') {
|
|||
|
|
|
|||
|
|
$user_id = 0;
|
|||
|
|
$has_token = false;
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$token = trim($data->token);
|
|||
|
|
$has_token = true;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$accessData = $complex->get_frame_access($token);
|
|||
|
|
|
|||
|
|
if (!empty($accessData['access']) && isset($accessData['agency_id'])) {
|
|||
|
|
$user_id = (int)$accessData['agency_id'];
|
|||
|
|
} else {
|
|||
|
|
http_response_code(403);
|
|||
|
|
echo json_encode([
|
|||
|
|
'error' => 'Access denied or invalid token',
|
|||
|
|
'token' => $token
|
|||
|
|
], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
}else if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
|
|||
|
|
$entrances = $complex->get_entrances_floor_plans($house_id, $has_token);
|
|||
|
|
echo json_encode($entrances, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_house_floors_plans') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_floor_plans = $complex->get_house_floors_plans($house_id);
|
|||
|
|
echo json_encode($house_floor_plans, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_floor_plan') {
|
|||
|
|
$floor_plan_id = (int)$data->floor_plan_id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$floor_plan = $complex->get_floor_plan($floor_plan_id);
|
|||
|
|
echo json_encode($floor_plan, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// FACADES
|
|||
|
|
if ($_POST['request'] == 'add_facade_to_house') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$house_id = $_POST['house_id'];
|
|||
|
|
$position = $_POST['position'];
|
|||
|
|
$hover_color = $_POST['hover_color'];
|
|||
|
|
$opacity = $_POST['opacity'];
|
|||
|
|
$input_photo = $_FILES['photo'];
|
|||
|
|
|
|||
|
|
if (!empty($input_photo)) {
|
|||
|
|
$photo = [
|
|||
|
|
'name' => $input_photo['name'],
|
|||
|
|
'tmp_name' => $input_photo['tmp_name'],
|
|||
|
|
'type' => $input_photo['type'],
|
|||
|
|
'error' => $input_photo['error'],
|
|||
|
|
'size' => $input_photo['size']
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
$urls = $complex->addFacadeToHouse($house_id, $photo, $position, $hover_color, $opacity);
|
|||
|
|
echo json_encode($urls, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
echo json_encode(['status' => false], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'add_facade_figure') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$facade_id = (int)$data->facade_id;
|
|||
|
|
$points = (array)$data->points;
|
|||
|
|
|
|||
|
|
$result = $complex->addFacadeFigure($facade_id, $points);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'update_facade_figure') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$figure_id = (int)$data->figure_id;
|
|||
|
|
$fields = (array)$data->fields;
|
|||
|
|
|
|||
|
|
$result = $complex->updateFacadeFigure($figure_id, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_facade_figure') {
|
|||
|
|
$figure_id = (int)$data->figure_id;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
$result = $complex->deleteFacedeFigure($figure_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
if ($request == 'update_house_facade') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$facade_id = $data->facade_id;
|
|||
|
|
$fields = (array)$data->fields;
|
|||
|
|
|
|||
|
|
$result = $complex->updateHouseFacade($facade_id, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_house_facades') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$includes = (array)$data->includes;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$facades = $complex->get_house_facades($house_id, $includes);
|
|||
|
|
echo json_encode($facades, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_house_facade') {
|
|||
|
|
$facade_id = (int)$data->facade_id;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
$result = $complex->deleteHouseFacede($facade_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// END FACADES
|
|||
|
|
|
|||
|
|
|
|||
|
|
if ($request == 'update_rooms_plan_link') {
|
|||
|
|
$plan_id = (int)$data->plan_id;
|
|||
|
|
$room_ids = (array)$data->room_ids;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$rooms = $complex->updateRoomsPlanLink($plan_id, $room_ids);
|
|||
|
|
echo json_encode($rooms, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//Сохранение комплекса
|
|||
|
|
if($request == 'save_complex') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex_data = $data->complex;
|
|||
|
|
$linkBuilder = '';
|
|||
|
|
$phoneBuilder = '';
|
|||
|
|
if(isset($data->newBuilderPhone)) $phoneBuilder = $data->newBuilderPhone;
|
|||
|
|
if(isset($data->newBuilderLink)) $linkBuilder = $data->newBuilderLink;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$complex->set_complex($complex_data);
|
|||
|
|
$photo = array();
|
|||
|
|
|
|||
|
|
if(isset($data->photo)){
|
|||
|
|
$photo = json_decode($data->photo, true);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->save($linkBuilder, $phoneBuilder, $photo);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Сохранение дома
|
|||
|
|
if($request == 'add_edit_house'){
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$house = $data->house;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->add_edit_house($house);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Все дома комплекса
|
|||
|
|
if($request == 'get_houses'){
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
$has_token = false;
|
|||
|
|
$filter = [];
|
|||
|
|
if(isset($data->filter)){
|
|||
|
|
$filter = $data->filter;
|
|||
|
|
}
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$token = trim($data->token);
|
|||
|
|
$has_token = true;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$accessData = $complex->get_frame_access($token);
|
|||
|
|
|
|||
|
|
if (!empty($accessData['access']) && isset($accessData['agency_id'])) {
|
|||
|
|
$user_id = (int)$accessData['agency_id'];
|
|||
|
|
} else {
|
|||
|
|
http_response_code(403);
|
|||
|
|
echo json_encode([
|
|||
|
|
'error' => 'Access denied or invalid token',
|
|||
|
|
'token' => $token
|
|||
|
|
], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
}else if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->get_houses($complex_id, $has_token, $filter);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_all_houses') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->get_all_houses();
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_complex_entrances') {
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$includes = (array)$data->includes;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$partner_id = 0;
|
|||
|
|
if(isset($data->partner_id)){
|
|||
|
|
$partner_id = (int)$data->partner_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->get_complex_entrances($complex_id, $includes, $partner_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'send_rooms_to_advert') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$room_ids = (array)$data->room_ids;
|
|||
|
|
$type = (string)$data->type;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$rooms = $complex->send_rooms_to_advert($house_id, $room_ids, $type);
|
|||
|
|
|
|||
|
|
$result = $complex->get_house_entrances($house_id, ['rooms']);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'change_rooms_price') {
|
|||
|
|
$room_ids = (array)$data->room_ids;
|
|||
|
|
$type = (string)$data->actions_type;
|
|||
|
|
$by_square = (boolean)$data->by_square;
|
|||
|
|
$by_installment_price = (boolean)$data->by_installment_price;
|
|||
|
|
$value = (double)$data->actions_value;
|
|||
|
|
|
|||
|
|
if ($by_installment_price) {
|
|||
|
|
$operation_type = 'installment_price';
|
|||
|
|
} else {
|
|||
|
|
$operation_type = 'total_amount';
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if ($by_square) {
|
|||
|
|
$result = $complex->change_rooms_price_by_square($value, $room_ids, $type, $operation_type);
|
|||
|
|
} else {
|
|||
|
|
$result = $complex->change_rooms_price($value, $room_ids, $type, $operation_type);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_house_entrances') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$includes = (array)$data->includes;
|
|||
|
|
$user_id = 0;
|
|||
|
|
$has_token = false;
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$token = trim($data->token);
|
|||
|
|
$has_token = true;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$accessData = $complex->get_frame_access($token);
|
|||
|
|
|
|||
|
|
if (!empty($accessData['access']) && isset($accessData['agency_id'])) {
|
|||
|
|
$user_id = (int)$accessData['agency_id'];
|
|||
|
|
} else {
|
|||
|
|
http_response_code(403);
|
|||
|
|
echo json_encode([
|
|||
|
|
'error' => 'Access denied or invalid token',
|
|||
|
|
'token' => $token
|
|||
|
|
], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
}else if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$partner_id = 0;
|
|||
|
|
if(isset($data->partner_id)){
|
|||
|
|
$partner_id = (int)$data->partner_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->get_house_entrances($house_id, $includes, $partner_id, $has_token);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'add_house_entrance') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$fields = $data->fields;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->add_house_entrance($house_id, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'add_floor_plan_figure') {
|
|||
|
|
$floor_plan_id = (int)$data->floor_plan_id;
|
|||
|
|
$fields = $data->fields;
|
|||
|
|
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->add_floor_plan_figure($floor_plan_id, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_floor_plan_figure') {
|
|||
|
|
$figure_id = (int)$data->figure_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->delete_floor_plan_figure($figure_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_floor_plan') {
|
|||
|
|
$floor_plan_id = (int)$data->floor_plan_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->delete_floor_plan($floor_plan_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'update_floor_plan_figure') {
|
|||
|
|
$figure_id = (int)$data->figure_id;
|
|||
|
|
$fields = $data->fields;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->update_floor_plan_figure($figure_id, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_house') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->delete_house($house_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_house_entrance') {
|
|||
|
|
$entrance_id = (int)$data->entrance_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->delete_house_entrance($entrance_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'update_house_entrance') {
|
|||
|
|
$entrance_id = (int)$data->entrance_id;
|
|||
|
|
$fields = $data->fields;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->update_house_entrance($entrance_id, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'create_floor') {
|
|||
|
|
$entrance_id = (int)$data->entrance_id;
|
|||
|
|
$fields = $data->fields;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->create_floor($entrance_id, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
if ($request == 'update_floor') {
|
|||
|
|
$floor_id = (int)$data->floor_id;
|
|||
|
|
$fields = $data->fields;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->update_floor($floor_id, $fields);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_floor') {
|
|||
|
|
$floor_id = (int)$data->floor_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->delete_floor($floor_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'delete_room') {
|
|||
|
|
$room_id = (int)$data->room_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->delete_room($room_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'copy_room') {
|
|||
|
|
$room_id = (int)$data->room_id;
|
|||
|
|
$floor_id = (int)$data->floor_id;
|
|||
|
|
$position = (int)$data->position;
|
|||
|
|
$copies_count = (int)$data->copies_count;
|
|||
|
|
$floors_with_position = (array)$data->floors_with_position;
|
|||
|
|
// echo(json_encode($floors_with_position));die;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = [];
|
|||
|
|
if ($floors_with_position) {
|
|||
|
|
|
|||
|
|
foreach ($floors_with_position as $floor) {
|
|||
|
|
// $floor['id']
|
|||
|
|
|
|||
|
|
// $floor['position']
|
|||
|
|
$copied_room = null;
|
|||
|
|
$result[$floor->id] = [];
|
|||
|
|
for ($i=0; $i < $copies_count; $i++) {
|
|||
|
|
|
|||
|
|
$copied_room = $complex->copy_room($room_id, $floor->id, $copied_room ? $copied_room['position'] + 1 : $floor->position);
|
|||
|
|
$result[$floor->id][] = $copied_room;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
} else if($floor_id && $position) {
|
|||
|
|
$result = $complex->copy_room($room_id, $floor_id, $position);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'copy_floor') {
|
|||
|
|
$floor_id = (int)$data->floor_id;
|
|||
|
|
$position = (int)$data->position;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->copy_floor($floor_id, $position);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'copy_house') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->copy_house($house_id,$complex_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//дом по id
|
|||
|
|
if($request == 'get_house_one'){
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$token = trim($data->token);
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$accessData = $complex->get_frame_access($token);
|
|||
|
|
|
|||
|
|
if (!empty($accessData['access']) && isset($accessData['agency_id'])) {
|
|||
|
|
$user_id = (int)$accessData['agency_id'];
|
|||
|
|
} else {
|
|||
|
|
http_response_code(403);
|
|||
|
|
echo json_encode([
|
|||
|
|
'error' => 'Access denied or invalid token',
|
|||
|
|
'token' => $token
|
|||
|
|
], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
}else if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->get_house_one($house_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == "get_filter_fields")
|
|||
|
|
{
|
|||
|
|
$house_id = $data->house_id;
|
|||
|
|
$complex_id = $data->complex_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->get_filter_fields($house_id, $complex_id);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Периоды для фильтров
|
|||
|
|
if($request == 'get_periods') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->getUniquePeriods();
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Комплексы для фильтров
|
|||
|
|
if($request == 'get_complex'){
|
|||
|
|
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
// echo $user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->get_complexes();
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
|
|||
|
|
exit;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_complex_status')
|
|||
|
|
{
|
|||
|
|
$complex_status = new ComplexStatus;
|
|||
|
|
|
|||
|
|
$complex_status = $complex_status::getComplexStatus();
|
|||
|
|
|
|||
|
|
echo json_encode($complex_status, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// if ($request == 'get_room_types') {
|
|||
|
|
// echo json_encode(array(
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'apartment',
|
|||
|
|
// 'name' => 'Квартира',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'apartments',
|
|||
|
|
// 'name' => 'Апартаменты',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'parking_space',
|
|||
|
|
// 'name' => 'Машинаместо',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'office',
|
|||
|
|
// 'name' => 'Офис',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'storage_room',
|
|||
|
|
// 'name' => 'Кладовка',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'warehouse',
|
|||
|
|
// 'name' => 'Склад',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'retail_space',
|
|||
|
|
// 'name' => 'Торговое Помещение',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'commercial_space',
|
|||
|
|
// 'name' => 'Помещение свободного назначения',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'townhouse',
|
|||
|
|
// 'name' => 'Таунхаус',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'villa',
|
|||
|
|
// 'name' => 'Вилла',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'penthouse',
|
|||
|
|
// 'name' => 'Пентхаус',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'duplex',
|
|||
|
|
// 'name' => 'Дуплекс',
|
|||
|
|
// ],
|
|||
|
|
// [
|
|||
|
|
// 'code' => 'cottage',
|
|||
|
|
// 'name' => 'Коттедж',
|
|||
|
|
// ],
|
|||
|
|
// ), JSON_UNESCAPED_UNICODE);
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
if ($request == 'get_decoration_types') {
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->get_decoration_types();
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'save_room') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->save_room($data->room);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
if ($request == 'update_room') {
|
|||
|
|
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->update_room($data->room);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
if ($request == 'save_document') {
|
|||
|
|
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
$blank_id = (int)$data->blank_id;
|
|||
|
|
$req_id = (int)$data->req_id;
|
|||
|
|
$room = isset($data->apartment) ? json_decode($data->apartment) : null;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->save_document($blank_id, $req_id,$room,$user_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_room_entrance') {
|
|||
|
|
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
|
|||
|
|
$partner_id = 0;
|
|||
|
|
if(isset($data->partner_id)){
|
|||
|
|
$partner_id = (int)$data->partner_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$id = (int)$data->id;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
$complex->set_user();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->get_room_entrance($id, $partner_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_room_requisition') {
|
|||
|
|
$id = (int)$data->id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
$result = $complex->get_room_requisition($id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_room_requisitions') {
|
|||
|
|
$id = (int)$data->complex_room_id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
$result = $complex->get_room_requisitions($id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//Вид комнат
|
|||
|
|
if($request == 'get_types_room'){
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->get_types_room();
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_complex_names') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
$use_empty_rooms = (bool)$data->use_empty_rooms;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->getComplexNames($use_empty_rooms);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Поиск
|
|||
|
|
if($request == 'search') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
// echo $user_id;
|
|||
|
|
}
|
|||
|
|
$use_empty_rooms = (bool)$data->use_empty_rooms;
|
|||
|
|
$page=1;
|
|||
|
|
if(isset($data->page)){
|
|||
|
|
$page = $data->page;
|
|||
|
|
}
|
|||
|
|
if($page < 1) {
|
|||
|
|
$page = 1;
|
|||
|
|
}
|
|||
|
|
$filter = $data->filter;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$complex->set_page($page);
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->search($filter, $use_empty_rooms);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Объекты комплекса
|
|||
|
|
if($request == 'get_complex_one') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$token = trim($data->token);
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$accessData = $complex->get_frame_access($token);
|
|||
|
|
|
|||
|
|
if (!empty($accessData['access']) && isset($accessData['agency_id'])) {
|
|||
|
|
$user_id = (int)$accessData['agency_id'];
|
|||
|
|
} else {
|
|||
|
|
http_response_code(403);
|
|||
|
|
echo json_encode([
|
|||
|
|
'error' => 'Access denied or invalid token',
|
|||
|
|
'token' => $token
|
|||
|
|
], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
} else if (isset($data->user_id)) {
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$filter = array();
|
|||
|
|
if(isset($data->filter)){
|
|||
|
|
$filter = $data->filter;
|
|||
|
|
}
|
|||
|
|
$pageObj = 1;
|
|||
|
|
if(isset($data->page)){
|
|||
|
|
$pageObj = (int)$data->page;
|
|||
|
|
}
|
|||
|
|
$object_list = true;
|
|||
|
|
if(isset($data->object_list)){
|
|||
|
|
$object_list = $data->object_list;
|
|||
|
|
}
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$complex->set_page_obj($pageObj);
|
|||
|
|
$complex->set_filter($filter);
|
|||
|
|
$result = $complex->get_complex_one($complex_id, true, $object_list);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Привязать объект
|
|||
|
|
if($request == 'add_object') {
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$object_id = (int)$data->object_id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->complex_add_object($complex_id, $object_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Архивировать комплекс
|
|||
|
|
if($request == 'complex_archive') {
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$archive = $data->archive;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->complex_archive($complex_id, $archive);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//Удалить комплекс
|
|||
|
|
if($request == 'complex_delete') {
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->complex_delete($complex_id);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//В рекламу
|
|||
|
|
if($request == 'complex_advert') {
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$yes_no = (int)$data->yes_no;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->complex_advert($complex_id, $yes_no);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//В рекламу по площадкам
|
|||
|
|
if($request == 'complex_advert_plases') {
|
|||
|
|
$days = 5000;
|
|||
|
|
|
|||
|
|
if (isset($data->numDays) && $data->numDays > 0) {
|
|||
|
|
$days = $data->numDays;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($days > 5000) {
|
|||
|
|
$days = 5000;
|
|||
|
|
}
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
$yes_no = (int)$data->yes_no;
|
|||
|
|
$type = $data->type;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$result = $complex->complex_advert_plases($complex_id, $yes_no, $type, $days);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//создание заявки
|
|||
|
|
if($request == 'create_room_requisition') {
|
|||
|
|
$room_id = (int)$data->room_id;
|
|||
|
|
$user_id = 0;
|
|||
|
|
$requisition = $data->requisition;
|
|||
|
|
$partner_id = $data->partner_id;
|
|||
|
|
$employee_id = $data->employee_id;
|
|||
|
|
if(isset($data->user_id)){
|
|||
|
|
$user_id = (int)$data->user_id;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
if($user_id > 0){
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$result = $complex->createRequisition($room_id, $requisition, $partner_id, $employee_id);
|
|||
|
|
//$result = $complex->delete_room($room_id);
|
|||
|
|
//echo json_encode($data, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_room_figures') {
|
|||
|
|
$room_id = (int)$data->room_id;
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
|
|||
|
|
echo json_encode($complex->get_room_figures($room_id), JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_frame_colors') {
|
|||
|
|
$token = $data->token;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
echo json_encode($complex->get_frame_colors($token));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'get_frame_access') {
|
|||
|
|
$token = $data->token;
|
|||
|
|
$complex = new Complex();
|
|||
|
|
echo json_encode($complex->get_frame_access($token));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if($request == 'get_installments')
|
|||
|
|
{
|
|||
|
|
$installments = new Installments();
|
|||
|
|
|
|||
|
|
echo json_encode($installments->getInstallments(), JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'getInstallmentProgramsByHouseId') {
|
|||
|
|
$house_id = (int)$data->house_id;
|
|||
|
|
|
|||
|
|
$installments = new Installments();
|
|||
|
|
|
|||
|
|
echo json_encode($installments->getByHouseId($house_id), JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'getInstallmentProgramsByComplexId') {
|
|||
|
|
$complex_id = (int)$data->complex_id;
|
|||
|
|
|
|||
|
|
$installments = new Installments();
|
|||
|
|
|
|||
|
|
echo json_encode($installments->getByComplexId($complex_id), JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//Для iframe
|
|||
|
|
if ($request == 'get_complex_names_for_iframe') {
|
|||
|
|
$complex = new Complex(); // создаём один раз
|
|||
|
|
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$token = trim($data->token);
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$accessData = $complex->get_frame_access($token);
|
|||
|
|
|
|||
|
|
if (!empty($accessData['access']) && isset($accessData['agency_id'])) {
|
|||
|
|
$user_id = (int)$accessData['agency_id'];
|
|||
|
|
} else {
|
|||
|
|
http_response_code(403);
|
|||
|
|
echo json_encode([
|
|||
|
|
'error' => 'Access denied or invalid token',
|
|||
|
|
'token' => $token
|
|||
|
|
], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$use_empty_rooms = !empty($data->use_empty_rooms);
|
|||
|
|
$page = max(!empty($data->page) ? (int)$data->page : 1, 1);
|
|||
|
|
|
|||
|
|
if ($user_id > 0) {
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
$complex->set_page($page);
|
|||
|
|
|
|||
|
|
$result = $complex->getComplexNamesForIframe($use_empty_rooms);
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if ($request == 'search_for_iframe') {
|
|||
|
|
$user_id = 0;
|
|||
|
|
|
|||
|
|
if (isset($data->token)) {
|
|||
|
|
$token = trim($data->token);
|
|||
|
|
|
|||
|
|
$complex = new Complex();
|
|||
|
|
$accessData = $complex->get_frame_access($token);
|
|||
|
|
|
|||
|
|
if (!empty($accessData['access']) && isset($accessData['agency_id'])) {
|
|||
|
|
$user_id = (int)$accessData['agency_id'];
|
|||
|
|
} else {
|
|||
|
|
http_response_code(403);
|
|||
|
|
echo json_encode([
|
|||
|
|
'error' => 'Access denied or invalid token',
|
|||
|
|
'token' => $token
|
|||
|
|
], JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
} else {
|
|||
|
|
$complex = new Complex(); // создаём без токена
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$use_empty_rooms = !empty($data->use_empty_rooms);
|
|||
|
|
$page = max(!empty($data->page) ? (int)$data->page : 1, 1);
|
|||
|
|
$filter = is_array($data->filter) ? $data->filter : [];
|
|||
|
|
|
|||
|
|
$complex->set_page($page);
|
|||
|
|
|
|||
|
|
if ($user_id > 0) {
|
|||
|
|
$complex->set_user_id($user_id);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$result = $complex->searchForIframe($filter, $use_empty_rooms);
|
|||
|
|
|
|||
|
|
echo json_encode($result, JSON_UNESCAPED_UNICODE);
|
|||
|
|
exit;
|
|||
|
|
}
|