T: відмінності між версіями

Матеріал з expertsolution
Перейти до навігації Перейти до пошуку
Немає опису редагування
Немає опису редагування
Рядок 72: Рядок 72:
                   }
                   }
}
}
</pre>
'''Значення, що повертається:'''
<pre>
{
"VersionInfo" : "0.1",
// час, коли почали формувати відповідь на сервері у UTC (мілісекунди)
"RequestTime" : "345356546",
// код помилки, 0 – помилок немає
"ErrorCode" : "0",
"ErrorText" : "" ,
"Hotels" : [
"HotelInformation" : {
"HotelID" : 1,
"HotelName" : "Назва",
"HotelShortName" : "КороткаНазва"
},
"Guests" : [ {
"Room" : {
"RoomId" : 1,
"RoomNumber" : "1001",
"Floor" : "10",
"RoomType" : {
"RoomTypeName" : "",
"RoomTypeShortName" : "",
"RoomTypeId" : "",
"Beds" : "1",
"AddBeds" : "0"
}
}, 
"Guest" : #GuestInformation#
}
] // Гості
] // Готелі
}
</pre>
</pre>

Версія за 07:50, 21 травня 2025

Формат запитів JSON

Формат переданих і прийнятих даних – протокол обміну JSON. Кодування запиту та відповіді UTF8.
Запити повинні містити інформацію про авторизацію, відповіді повинні містити інформацію про версію протоколу, знімок часу в момент відповіді сервера, інформацію про помилку. Приклад запиту та відповіді наведено нижче.

Права доступу розрізняються залежно від пари користувач/пароль, які вводяться в кожному JSON-запиті в розділі «Облікові дані»:

{
    "Credentials": {
        "UserName": "UserName",
        "Password": "User Password"
    },
}

Формат даних

  • Формат дати/часу: "yyyy-MM-dd HH:mm:ss";
  • Формат дати: "yyyy-MM-dd"
  • Формат часу: "HH:mm"
  • Роздільник типів із плаваючою крапкою(double): "."

Опис функцій спілкування

GetGuestsModified

Отримання інформації про гостей готелю.
Параметри: дані авторизації, готель (декілька?), час оновлення даних (обрізано те, що було раніше, якщо не вказано, то тільки для всіх гостей, що проживають,
або наступне бронювання, або останнє перебування в номері), масив з переборами відображених даних (проживання гостей (за замовчуванням, якщо не вказано), бронювання, виїзду, контактна інформація для гостей)
Вхідні параметри:

{
	"Credentials" : {
		"UserName" : "UserName", 
		"Password" : "User Password"
	},
	// 0 – всі доступні готелі
	"Hotels" : [1, 2,...],
	// дата з часом, показувати номери, зміни у яких сталися після вказаного часу.
	"ModifiedDateFrom" : "2019-11-12 12:33:45",
	// необов’язковий фільтр за ідентифікаторами гостей
	"GuestsID" : ["1", .....] ,
	// відповідно заброньовані, що проживають, останній виїхавший по номеру, анульований, незаїзд.
	"GuestStatus" : [0,2,3,-1,-2],
	// отримувати вартість гостя, за замовчуванням ні
	"isNeedCostInfo" : "0",
	// літерні коди класів послуг, нарахування по яких потрапляють у вартість
	"ServiceClasses":[""],
	// літерні коди підкласів послуг, нарахування по яких не потраплятимуть у вартість
	"ExcludeServiceSubclasses":[""],
	// виводити дані по анкетах у гостей, за замовчуванням ні
	"isNeedClientInfo" : "0",
	// вивантажувати фото клієнта
	"isNeedClientPhoto" : "0",

	// виводити дані по документах в анкетах, за замовчуванням ні
	"isNeedDocumentsInfo" : "0",
	// ПІБ гостя
	"GuestName" : "Петров Петро Петрович",
	// Номер телефону
	"PhoneNumber" : "0991232233",
	// Пошта
	"Mail" : "user@gmail.com",
	// Ідентифікатор анкети гостя
	"ClientID" : 654,
	// Вподобання
	"Preferences": [
                   {
                   	"Code": "carnumber",
                        "Value": "333-44-55"                    
                   }
                ],
	// Комплексний пошук по конкретних полях
	"ComplexSearch": {
                   	"SearchString": "+380991112233",
                        "SearchObjects": ["GuestName", "Phone", "Email", "RoomNumber", "AccountNumber", "IdentityCard"]                    
                  }
}

Значення, що повертається:

{
	"VersionInfo" : "0.1",
	// час, коли почали формувати відповідь на сервері у UTC (мілісекунди)
	"RequestTime" : "345356546",
	// код помилки, 0 – помилок немає
	"ErrorCode" : "0", 
	"ErrorText" : "" ,
	"Hotels" : [
		"HotelInformation" : { 
			"HotelID" : 1, 
			"HotelName" : "Назва", 				
			"HotelShortName" : "КороткаНазва"
		},
		
		"Guests" : [ {
			"Room" : { 
				"RoomId" : 1, 
				"RoomNumber" : "1001", 
				"Floor" : "10",
				"RoomType" : {
					"RoomTypeName" : "", 
					"RoomTypeShortName" : "", 
					"RoomTypeId" : "", 
					"Beds" : "1", 
					"AddBeds" : "0" 
				}
			},  
			"Guest" : #GuestInformation#
			}
		] // Гості
	] // Готелі
}