mirror of
https://github.com/task-17-lct/backend.git
synced 2024-11-30 17:53:44 +03:00
added data
This commit is contained in:
parent
1a7e6422af
commit
061052c53d
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -329,3 +329,5 @@ passfinder/media/
|
|||
.pytest_cache/
|
||||
|
||||
.ipython/
|
||||
.env
|
||||
.idea
|
||||
|
|
|
@ -74,6 +74,7 @@
|
|||
|
||||
LOCAL_APPS = [
|
||||
"passfinder.users",
|
||||
"passfinder.events",
|
||||
]
|
||||
# https://docs.djangoproject.com/en/dev/ref/settings/#installed-apps
|
||||
INSTALLED_APPS = DJANGO_APPS + THIRD_PARTY_APPS + LOCAL_APPS
|
||||
|
|
61864
data/cities.json
Normal file
61864
data/cities.json
Normal file
File diff suppressed because it is too large
Load Diff
84
data/cities_description.txt
Normal file
84
data/cities_description.txt
Normal file
|
@ -0,0 +1,84 @@
|
|||
{
|
||||
id:{
|
||||
$oid: str // id объекта коллекции
|
||||
},
|
||||
dictionary_data: { // собственно наполнение словарей
|
||||
_id: str // нет
|
||||
aliases: list // Псевдонимы
|
||||
cg_images: list // Обложка CityGuide / Alfa travel
|
||||
city: str // идентификатор города
|
||||
country: list // идентификатор страны
|
||||
description: str // описание
|
||||
description_title: str // заголовок
|
||||
external_id: str // внешний идентификатор
|
||||
gallery: list // Галерея изображений
|
||||
geo_data {
|
||||
center_distance: float // расстояние до центра
|
||||
coordinates: [ // Координаты (широта и долгота)
|
||||
#.##, // широта
|
||||
#.## // долгота
|
||||
]
|
||||
type: str // Тип геоданных (по умолчанию: points)
|
||||
}
|
||||
google_place {
|
||||
use_manual_schedule: bool // Использовать google расписание
|
||||
}
|
||||
hp_images: list // HP Картинки
|
||||
icon: [ // Иконка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Основное изображений
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // импорт запрещен
|
||||
is_priority: bool // приоритет
|
||||
list_image: list // идентификаторы и источники файлов изображений
|
||||
on_map: list // Город на карте
|
||||
rating: int // Рейтинг
|
||||
region: str // Регион
|
||||
short_description: str // Краткое описание
|
||||
sort: int // Порядковый номер сортировки
|
||||
source: str // Источник данных
|
||||
timezone: str // часовой пояс
|
||||
title: str // Название
|
||||
title_dative: str // Название в винительном падеже
|
||||
title_genitive: str // Название в родительном падеже
|
||||
travel_line_id: str // Идентификатор города в справочнике на стороне travelline (TravelLine ID)
|
||||
weather_sync: bool // Признак синхронизации погоды
|
||||
working_time: {
|
||||
days: {
|
||||
Mon: {
|
||||
closed: bool // Нерабочий день Понедельник
|
||||
}
|
||||
Tue: {
|
||||
closed: bool // Нерабочий день Вторник
|
||||
}
|
||||
Wed: {
|
||||
closed: bool // Нерабочий день Среда
|
||||
}
|
||||
Thu: {
|
||||
closed: bool // Нерабочий день Четверг
|
||||
}
|
||||
Fri: {
|
||||
closed: bool // Нерабочий день Пятница
|
||||
}
|
||||
Sat: {
|
||||
closed: bool // Нерабочий день Суббота
|
||||
}
|
||||
Sun: {
|
||||
closed: bool // Нерабочий день Воскресенье
|
||||
}
|
||||
}
|
||||
}
|
||||
ya_id: str // Идентификатор города в справочнике на стороне Яндекс
|
||||
сoat_of_arms: list // Герб
|
||||
}
|
||||
}
|
BIN
data/events.zip
Normal file
BIN
data/events.zip
Normal file
Binary file not shown.
126
data/events_description.txt
Normal file
126
data/events_description.txt
Normal file
|
@ -0,0 +1,126 @@
|
|||
{
|
||||
_id:{
|
||||
$oid: str // id объекта коллекции
|
||||
},
|
||||
dictionary_data: { // собственно наполнение коллекций
|
||||
_id: str // нет
|
||||
aac_images: list // ААЦ Изображения
|
||||
aac_tags: list // AAC Тэги
|
||||
about_booking: str // Дополнительная информация о покупке билета
|
||||
age: str // Возрастное ограничение
|
||||
billing_product_id: int // Идентификатор продукта в биллинге
|
||||
booking_link: str // Ссылка на покупку билета
|
||||
cg_announcement: str // Краткое описание события
|
||||
cg_recommendations: list // CG: Рекомендации членов клуба Prime
|
||||
city: str // id города (справочник cities)
|
||||
creator: str // Кто создал запись
|
||||
description: str // Описание
|
||||
disable_sessionids_autoupdate: bool // Не обновлять автоматически sessionIds
|
||||
discover_moscow_link: str // ссылка на Discover.Moscow
|
||||
duration: str // Продолжительность, мин
|
||||
event_type: str // Тип события
|
||||
galereya: list // Галерея
|
||||
id_izi_travel: str // Идентификатор izi.travel
|
||||
image_detailed_page_main: [ // Главная картинка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_explore_preview: [ // Превью для Explore
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Изображение обложки
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // Отклонено модератором
|
||||
information_pages: list // Информационные страницы
|
||||
is_can_buy: bool // Можно купить
|
||||
is_priority: bool // Приоритетное событие
|
||||
link_source: str // Ссылка на источник события
|
||||
parser_source: str // Источник импорта
|
||||
partner: str // Партнер
|
||||
partner_type: str // Тип партнера
|
||||
payment_method: str // Метод покупки
|
||||
place: list // Площадка проведения события (справочник places)
|
||||
pravila-soglasovaniya: bool // Правила согласования
|
||||
purchase_addtitional_info: str // Дополнительная информация к стоимости
|
||||
purchase_method: str // Метод покупки (старый)
|
||||
recommendation_prime: list // City Guide Рекомендации
|
||||
region: str // Регион
|
||||
remote_event_id: str // нет
|
||||
remote_place_id: str // нет
|
||||
restaurants: list // Рестораны проведения события
|
||||
rp_price_id: int // Идентификатор тарифа в биллинге
|
||||
russpass_recommendation: bool // RUSSPASS рекомендует
|
||||
schedule: [ // Расписание
|
||||
{
|
||||
title: str // заголовок
|
||||
start: {
|
||||
$date: str // Дата и время начала
|
||||
},
|
||||
end: {
|
||||
$date: str // Дата и время окончания
|
||||
}
|
||||
}
|
||||
]
|
||||
schedule_description: str // Дополнительная информация к расписанию
|
||||
scheduleUpdatedByPlace: bool // нет
|
||||
sessionId: str // sessionId
|
||||
sessionIds: [ // sessionIds
|
||||
{
|
||||
id: str // id сессии
|
||||
startTime: str // Дата время начала
|
||||
endTime: str // Дата время окончания
|
||||
timezone: str // Временная зона
|
||||
isAllDay: bool // Длитяс ли весь день
|
||||
}
|
||||
]
|
||||
social_buttons: list // Кнопки социальных сетей
|
||||
sort: int // Порядковый номер сортировки
|
||||
tags: list // Тэги
|
||||
tags_main_screen: list // Тэг главного экрана
|
||||
ticket_price: str // Стоимость билета
|
||||
timetable_by_place: [ // Расписание и сессии по площадкам(Yandex Afisha)
|
||||
{
|
||||
placeId: str // id места (справочник places)
|
||||
sessionIds: [
|
||||
{
|
||||
id: str // id сессии
|
||||
startTime: str // Дата время начала
|
||||
endTime: str // Дата время окончания
|
||||
timezone: str // Временная зона
|
||||
isAllDay: bool // Длитяс ли весь день
|
||||
}
|
||||
]
|
||||
schedule: [ // Расписание
|
||||
{
|
||||
title: str // заголовок
|
||||
start: {
|
||||
$date: str // Дата и время начала
|
||||
}
|
||||
end: {
|
||||
$date: str // Дата и время окончания
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
]
|
||||
title: str // Заголовок
|
||||
type_audio_guide: list // Тип аудиогида
|
||||
without_schedule: bool // Событие без расписания
|
||||
ya_id: str // Идентификатор города в справочнике на стороне Яндекс
|
||||
youtube_video_url: str // Ссылка на видео в Youtube
|
||||
youtube_videos: list // YouTube ролики
|
||||
}
|
||||
}
|
45856
data/excursions.json
Normal file
45856
data/excursions.json
Normal file
File diff suppressed because it is too large
Load Diff
100
data/excursions_description.txt
Normal file
100
data/excursions_description.txt
Normal file
|
@ -0,0 +1,100 @@
|
|||
{
|
||||
_id: {
|
||||
$oid: str // id объекта коллекции
|
||||
},
|
||||
dictionary_data: {
|
||||
audioguide: bool // наличие аудиогида
|
||||
campaign: list // id кампании (акции)
|
||||
city: str // идентификатор города
|
||||
description: str // описание
|
||||
duration: str // длительность минуты
|
||||
duration_hours: float // длительность часы
|
||||
duration_string: str // длительность часы
|
||||
event_type: str // тип события
|
||||
excursion_form: str // Способ передвижения
|
||||
excursion_type: str // Тип экскурсии
|
||||
html_file: list // html файл
|
||||
image_detailed_page_main: [ // Главная картинка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_explore_preview: [ // Превью картитнки
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Список изображений
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // Отклонено модератором
|
||||
information_pages: list // Информационные страницы
|
||||
is_can_buy: bool // Возможность покупки
|
||||
is_priority: bool // Признак приоритета
|
||||
language: list // Язык проведения
|
||||
min_age: str // Минимальный возраст
|
||||
minGroupCount: str // Минимальное количество группы
|
||||
parser_source: str // Источник импорта
|
||||
partner: str // Партнер
|
||||
partner_logo: list // Логотипы партнёра
|
||||
pravila-soglasovaniya: bool // Правила согласования
|
||||
price: int // Цена от
|
||||
program: str // Программа экскурсий
|
||||
region: str // Регион
|
||||
route: [ // Основные события
|
||||
{
|
||||
title: str // заголовок
|
||||
day_contents: { // события, посещения внутри дня
|
||||
dictionaries: list // Используемые словари
|
||||
selected: [ // события / рестораны и прочие участвующие
|
||||
{
|
||||
id: str
|
||||
active: bool
|
||||
}
|
||||
]
|
||||
active: list // список активностей
|
||||
}
|
||||
events: [ // список событий
|
||||
{
|
||||
title: str
|
||||
images: [
|
||||
{
|
||||
source: {
|
||||
id: str
|
||||
}
|
||||
}
|
||||
]
|
||||
geo_data: {
|
||||
coordinates: []
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
russpass_recommendation: bool // Признак значка "RUSSPASS рекомендует" true / false
|
||||
schedule_excursion: str // Расписание проведения экскурсии
|
||||
season_end: date // Дата конца сезона
|
||||
season_start: date // Дата начала сезона
|
||||
short_description: str // Краткое описание экскурсий
|
||||
sort: int // Порядковый номер сортировки
|
||||
tags: list // Тэги дополнительные
|
||||
tags_main_screen: list // Тэг главного экрана
|
||||
title: str // Заголовок
|
||||
tour_composition: [ // Состав экскурсии
|
||||
{
|
||||
title: str
|
||||
list: list
|
||||
}
|
||||
]
|
||||
type_audio_guide: list // Тип аудиогида
|
||||
without_schedule: bool // Признак, показывающий, отсутствует расписание у активности: true, false
|
||||
}
|
||||
}
|
104
data/hotels_description.txt
Normal file
104
data/hotels_description.txt
Normal file
|
@ -0,0 +1,104 @@
|
|||
{
|
||||
_id:{
|
||||
$oid: str // id объекта коллекции
|
||||
},
|
||||
dictionary_data: {
|
||||
address: str // адрес отеля
|
||||
arrival_time: str // Время заезда
|
||||
beach_services: list // Список услуг отеля связанных с пляжным отдыхом
|
||||
city: str // Город
|
||||
common_services: list // Список общих услуг отеля
|
||||
departure_time: str // Время выезда
|
||||
description: str // Описание отеля
|
||||
email: str // Контактный email
|
||||
entertainment_services: list // Список услуг отеля связанных с развлечением
|
||||
facility_services: list // Список общих удобств отеля
|
||||
fitness_services: list // Список услуг отеля связанных со здоровьем и красотой
|
||||
geo_data: {
|
||||
center_distance: float // расстояние до центра города
|
||||
coordinates: [ // Координаты (широта и долгота)
|
||||
#.##, // широта
|
||||
#.## // долгота
|
||||
]
|
||||
type: str // Тип координат
|
||||
}
|
||||
google_place: { // информация из Google
|
||||
meta: { // доп информация
|
||||
formatted_address: str // Адрес Google
|
||||
update_time: str // дата и время последнего обновления
|
||||
}
|
||||
}
|
||||
hotel_rooms: { // наличие типов комнат
|
||||
active: list // список активных комнат
|
||||
dictionaries: list // id словаря который описывает комнаты
|
||||
selected: [ // все доступные комнаты
|
||||
{
|
||||
id: str
|
||||
active: bool
|
||||
}
|
||||
]
|
||||
}
|
||||
image_detailed_page_main: [ // Главная картинка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_explore_preview: [ // Превью для Explore
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Изображения
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // Отклонено модератором
|
||||
import_denied_reason: str // Причина отклонения модератором
|
||||
integration_id: str // id интеграции
|
||||
meals: list // услуги питания
|
||||
parser_source: str // Условный код внешней системы откуда было загружено событие Yandex Afisha – ya/afisha; infotech – INFOTECH; LeClick– leclick/restaurants; LKP Личный кабинет партнёров
|
||||
partner: str // id партнёра
|
||||
partner_is_not_moderated: bool // Партнёр не проходил модерацию
|
||||
partner_system_type: str // Наименование системы партнера
|
||||
phones: list // Контактные телефоны
|
||||
region: str // Регион
|
||||
rooms: [ // Список объектов содержащий информацию о номерах
|
||||
{
|
||||
name: str // Название комнат
|
||||
description: str // Описание комнат
|
||||
images: list // Изображения комнат
|
||||
integration_id: str // id интеграции
|
||||
rate_plans: [ // Тарифы комнаты
|
||||
{
|
||||
integration_id: str // id интеграции
|
||||
name: str // Наименование тарифа
|
||||
description: str // Описание тарифа
|
||||
currency: str // Валюта тарифа
|
||||
services: list // Услуги тарифа
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
russpass_recommendation: bool // Признак значка "RUSSPASS рекомендует" true / false
|
||||
services: [ // Услуги отеля
|
||||
{
|
||||
name: str // Название услуги
|
||||
description: str // Описание услуги
|
||||
kind: str // Тип услуги
|
||||
mealPlanCode: str // Код услуги питания
|
||||
integration_id: str // id интеграции
|
||||
}
|
||||
]
|
||||
sort: int // Порядковый номер сортировки
|
||||
stars: str // Звёзд отеля
|
||||
time_zone: str // Временная зона
|
||||
title: str // Название
|
||||
}
|
||||
}
|
757844
data/places.json
Normal file
757844
data/places.json
Normal file
File diff suppressed because one or more lines are too long
278
data/places_description.txt
Normal file
278
data/places_description.txt
Normal file
|
@ -0,0 +1,278 @@
|
|||
{
|
||||
_id: {
|
||||
$oid: str // id объекта коллекции
|
||||
}
|
||||
dictionary_data: {
|
||||
address: str // адрес места
|
||||
cg_recommendations: list // CG: Рекомендации членов клуба Prime
|
||||
chain: list // Сеть
|
||||
city: list // Город
|
||||
country: list // идентификатор страны (дублирует strana)
|
||||
creator: str // Кто создал запись
|
||||
description: str // Описание места
|
||||
district: list // Список районов из выборки
|
||||
emails: list[str] // Контактные email-ы
|
||||
exter_spot_id: int // Идентификатор площадки в ЕБС
|
||||
external_id: str // id места из внешней системы
|
||||
geo_data: {
|
||||
center_distance: float // расстояние до центра города
|
||||
coordinates: [ // Координаты (широта и долгота)
|
||||
#.##, // широта
|
||||
#.## // долгота
|
||||
]
|
||||
type: str // Тип координат
|
||||
}
|
||||
google_place: { // Google Place
|
||||
meta: {
|
||||
formatted_address: str // Адрес Google
|
||||
international_phone_number: str // Номер телефона
|
||||
place_id: str // id места из внешней системы
|
||||
update_time: str // дата и время последнего обновления
|
||||
vicinity: str // "около"
|
||||
website: str // сайт места
|
||||
}
|
||||
schedule_google: { // Расписание google
|
||||
all: {
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
days: { // Объекты дней недели
|
||||
Sun: { // Воскресенье
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Mon: { // Понедельник
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Tue: { // Вторник
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Wed: { // Среда
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Thu: { // Четверг
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Fri: { // Пятница
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Sat: { // Суббота
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
}
|
||||
}
|
||||
use_manual_schedule: bool // Применять ручное расписание
|
||||
}
|
||||
holding: str // Холдинг
|
||||
hotels_types: list // Тип отеля
|
||||
hp_images: list // HP Изображения
|
||||
image_detailed_page_main: [ // Главная картинка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_explore_preview: [ // Превью для Explore
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Изображения
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // Отклонено модератором
|
||||
import_denied_reason: str // Причина отклонения модератором
|
||||
is_showed_in_placeslist: bool // Отображать в списке площадок
|
||||
metro: list // список id станций метро
|
||||
parser_source: str // Условный код внешней системы откуда было загружено событие Yandex Afisha – ya/afisha; infotech – INFOTECH; LeClick– leclick/restaurants; LKP Личный кабинет партнёров
|
||||
partner: list // id партнёра
|
||||
partner_subtype: list // Подтип партнера ПП
|
||||
partner_system: list // Партнерская система
|
||||
partner_type: str // Тип партнера
|
||||
phones: list // Контактные телефоны
|
||||
place_note: str // Доп информация
|
||||
post_code: str // Почтовый индекс
|
||||
pravila-soglasovaniya: bool // Правила согласования
|
||||
privileges_prime: list // Привилегии Prime
|
||||
promo: list // Условный код промо слова
|
||||
region: str // Регион
|
||||
remote_place_id: str // нет
|
||||
route_description: str // Описание для пути, проходящего
|
||||
short_title: str // Короткое название
|
||||
sites: list // web сайты
|
||||
sort: int // Порядковый номер сортировки
|
||||
source: str // Источник данных
|
||||
strana: list // идентификатор страны (дублирует country)
|
||||
tags: list // Тэги дополнительные
|
||||
tags_main_screen: list // Тэги главного экрана
|
||||
testovaya-ploshadkakf: str // Тестовая площадкаКФ
|
||||
tet: { // Тет
|
||||
coordinates: list
|
||||
}
|
||||
title: str // Название
|
||||
type_audio_guide: list // Тип аудиогида
|
||||
working_time: { // График работы площадки
|
||||
all: {
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
days: { // Объекты дней недели
|
||||
Sun: { // Воскресенье
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Mon: { // Понедельник
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Tue: { // Вторник
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Wed: { // Среда
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Thu: { // Четверг
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Fri: { // Пятница
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Sat: { // Суббота
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
}
|
||||
}
|
||||
working_time_description: str // Примечание ко времени работы
|
||||
ya_afisha_id: str // Yandex Afisha ID
|
||||
}
|
||||
}
|
18430
data/regions.json
Normal file
18430
data/regions.json
Normal file
File diff suppressed because it is too large
Load Diff
54
data/regions_description.txt
Normal file
54
data/regions_description.txt
Normal file
|
@ -0,0 +1,54 @@
|
|||
{
|
||||
_id: {
|
||||
$oid: str // id объекта коллекции
|
||||
}
|
||||
dictionary_data: {
|
||||
city: list // Список городов
|
||||
coat_of_arms: list // Герб (аналог: сoat_of_arms)
|
||||
code_ott_avia_from: str // Код региона откуда (города) в onetwotrip для авиабилетов
|
||||
code_ott_avia_to: str // Код региона куда (города) в onetwotrip для авиабилетов
|
||||
code_ott_rzd_from: str // Код региона откуда (города) в onetwotrip жд билетов
|
||||
code_ott_rzd_to: str // Код региона куда (города) в onetwotrip жд билетов
|
||||
country: str // Страна
|
||||
description: str // Детальное описание
|
||||
description_title: str // Заголовок детального описания
|
||||
external_id: str // Внешний ID
|
||||
gallery: list // Галерея изображений
|
||||
icon: [ // Иконка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Основное изображение
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // Отклонено модератором
|
||||
map_info: str // Информация для карты
|
||||
on_map: [ // Регион на карте
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
price_hotel: int // Цена билета за ночь (отель)
|
||||
short_description: str // Краткое описание
|
||||
showcase_cards: list // Активности на витрине региона
|
||||
showcase_description: str // Описание на витрине региона
|
||||
sort: int // Порядковый номер сортировки
|
||||
time_zone: list // Часовой пояс
|
||||
title: str // Заголовок
|
||||
title_accusative: str // Название в винительном падеже
|
||||
title_dative: str // Название в дательном падеже
|
||||
title_genitive: str // Название в родительном падеже
|
||||
travel_line_id: str // TravelLine ID
|
||||
url: str // Официальный адрес сайт региона/ОИВа
|
||||
сoat_of_arms: list // Герб (аналог: coat_of_arms)
|
||||
}
|
||||
}
|
261892
data/restaurants.json
Normal file
261892
data/restaurants.json
Normal file
File diff suppressed because it is too large
Load Diff
288
data/restaurants_description.txt
Normal file
288
data/restaurants_description.txt
Normal file
|
@ -0,0 +1,288 @@
|
|||
{
|
||||
_id: {
|
||||
$oid: str // id объекта коллекции
|
||||
}
|
||||
dictionary_data: {
|
||||
_id: str // нет
|
||||
address: str // Адрес
|
||||
avg_price_level: str // Уровень цен
|
||||
avg_time_visit: int // Среднее время посещения, мин
|
||||
bill: int // Средний чек
|
||||
can_reserve: bool // Доступен для бронирования
|
||||
cg_recommendations: list // Рекомендации членов клуба Prime
|
||||
chain: list // Сеть
|
||||
children: list // Дети
|
||||
city: list // Город
|
||||
country: list // Страна
|
||||
cuisines: list // Кухни
|
||||
description: str // Описание
|
||||
district: list // Район
|
||||
emails: list // Электронные почты
|
||||
external_id: str // Внешний ID
|
||||
external_status: int // нет
|
||||
geo_data: {
|
||||
center_distance: float // расстояние до центра города
|
||||
coordinates: [ // Координаты (широта и долгота)
|
||||
#.##, // широта
|
||||
#.## // долгота
|
||||
]
|
||||
type: str // Тип координат
|
||||
}
|
||||
google_place: { // Google Place
|
||||
meta: {
|
||||
formatted_address: str // Адрес Google
|
||||
international_phone_number: str // Номер телефона
|
||||
place_id: str // id места из внешней системы
|
||||
update_time: str // дата и время последнего обновления
|
||||
vicinity: str // "около"
|
||||
website: str // сайт места
|
||||
}
|
||||
schedule_google: { // Расписание google
|
||||
all: {
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
days: { // Объекты дней недели
|
||||
Sun: { // Воскресенье
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Mon: { // Понедельник
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Tue: { // Вторник
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Wed: { // Среда
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Thu: { // Четверг
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Fri: { // Пятница
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Sat: { // Суббота
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
}
|
||||
}
|
||||
use_manual_schedule: bool // Применять ручное расписание
|
||||
}
|
||||
guides: list // Гиды
|
||||
holding: str // Холдинг
|
||||
hp_images: list // Изображения Hotel Prime
|
||||
icons: [ // Тэги ресторана (Особенности)
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_detailed_page_main: [ // Главная картинка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_explore_preview: [ // Превью для Explore
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Изображения
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images360: list // 360 изображения
|
||||
import_denied: bool // Отклонено модератором
|
||||
menu_type: list // Тип меню
|
||||
metro: list // Метро
|
||||
parser_source: str // Источник импорта
|
||||
partner: str // Партнер
|
||||
partner_subtype: list // Подтип партнера ПП
|
||||
partner_type: list // Тип партнера
|
||||
phones: list // Телефоны
|
||||
post_code: str // Почтовый индекс
|
||||
promo: list // Промоакции
|
||||
rating_prime: str // Рейтинг Prime
|
||||
region: str // Регион
|
||||
remote_id: str // ID Ресторана
|
||||
remote_status: int // нет
|
||||
rest_id: str // нет
|
||||
rest_services: list // Услуги ресторанов
|
||||
route_description: str // Как добраться
|
||||
russpass_recommendation: bool // RUSSPASS рекомендует
|
||||
short_description: str // Краткое описание
|
||||
showcase_filter: list // Фильтрация по витринам
|
||||
sites: list // web сайты
|
||||
sort: int // Порядковый номер сортировки
|
||||
source: str // нет
|
||||
subcategories: list // Подкатегория
|
||||
tags: list // Тэги основные (фильтр)
|
||||
tags_main_screen: list // Тэг главного экрана
|
||||
title: str // Название
|
||||
type_audio_guide: list // Тип аудиогида
|
||||
working_time: { // График работы площадки
|
||||
all: {
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
days: { // Объекты дней недели
|
||||
Sun: { // Воскресенье
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Mon: { // Понедельник
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Tue: { // Вторник
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Wed: { // Среда
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Thu: { // Четверг
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Fri: { // Пятница
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
Sat: { // Суббота
|
||||
breaks: [ // перерывы
|
||||
{
|
||||
startTime: str // время начала перерыва
|
||||
endTime: str // время конца перерыва
|
||||
}
|
||||
]
|
||||
closed: bool // Закрыта ли на целый день активность или нет; true - закрыто
|
||||
endTime: str // Время окончания работы
|
||||
startTime: str // Время начала работы
|
||||
}
|
||||
}
|
||||
}
|
||||
working_time_description: str // Примечание ко времени работы
|
||||
}
|
||||
}
|
670
data/routes.json
Normal file
670
data/routes.json
Normal file
|
@ -0,0 +1,670 @@
|
|||
[
|
||||
{
|
||||
"_id": {
|
||||
"$oid": "63ce792cb792256419d55e28"
|
||||
},
|
||||
"dictionary_data": {
|
||||
"type_audio_guide": [],
|
||||
"region": "5d08e36dad3a9a001701b95b",
|
||||
"information_pages": [
|
||||
"5ed7a8a9070b700019e2d3cc",
|
||||
"5ed7aaed7437c000194f1972"
|
||||
],
|
||||
"image_explore_preview": [
|
||||
{
|
||||
"source": {
|
||||
"id": "63ce70b1b792256419d51be2"
|
||||
}
|
||||
}
|
||||
],
|
||||
"image_detailed_page_main": [],
|
||||
"tags_main_screen": [
|
||||
"5e4aa3aca7edd0687c4688e1"
|
||||
],
|
||||
"rp_price_id": 39665,
|
||||
"images": [
|
||||
{
|
||||
"source": {
|
||||
"id": "63ce7095b792256419d51b90"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": {
|
||||
"id": "63ce7099b792256419d51b94"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": {
|
||||
"id": "63ce709db792256419d51ba7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": {
|
||||
"id": "63ce70a2b792256419d51baa"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": {
|
||||
"id": "63ce70a6b792256419d51bbf"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": {
|
||||
"id": "63ce70a9b792256419d51bca"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": {
|
||||
"id": "63ce70adb792256419d51bd8"
|
||||
}
|
||||
}
|
||||
],
|
||||
"route": {
|
||||
"dictionaries": [
|
||||
"5a673061e97c730010ac6281"
|
||||
],
|
||||
"selected": [
|
||||
{
|
||||
"id": "5f146cfa448801001847422d",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5f2bfb47a0eff200185761cc",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e67af0ea4ba9e001a93240f",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561a45826e00001944d0ee",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561770826e00001944d02c",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619e8826e00001944d0d0",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5617c6826e00001944d042",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619a6826e00001944d0c2",
|
||||
"active": true
|
||||
}
|
||||
],
|
||||
"active": [
|
||||
"5f146cfa448801001847422d",
|
||||
"5f2bfb47a0eff200185761cc",
|
||||
"5e67af0ea4ba9e001a93240f",
|
||||
"5e561a45826e00001944d0ee",
|
||||
"5e561770826e00001944d02c",
|
||||
"5e5619e8826e00001944d0d0",
|
||||
"5e5617c6826e00001944d042",
|
||||
"5e5619a6826e00001944d0c2"
|
||||
]
|
||||
},
|
||||
"description": "Moscow CityPass Express ― это новый формат карты гостя столицы. В ее стоимость включены увлекательные экскурсии и бесплатное посещение интереснейших мест города, а срок действия составляет целых 30 дней. Туристы смогут познакомиться с главными достопримечательностями Москвы во время путешествия на двухэтажном автобусе, побывать на стадионе «Лужники» и прокатиться по канатной дороге, полюбоваться панорамными видами на мегаполис со смотровой площадки в сталинской высотке, прогуляться по «Зарядью» в компании гида и посетить музеи, которые известны на весь мир. Получить карту Moscow CityPass Express можно в Музее советских игровых автоматов.\n",
|
||||
"sort": 60,
|
||||
"time": "90",
|
||||
"packet_price": 5100,
|
||||
"route_tags": [],
|
||||
"city": "5bbe8a8a9e7fcb000f78a92d",
|
||||
"import_denied": false,
|
||||
"title": "Moscow CityPass Express"
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": {
|
||||
"$oid": "5e58fffb7849960019a7e18a"
|
||||
},
|
||||
"dictionary_data": {
|
||||
"is_priority": false,
|
||||
"is_can_buy": false,
|
||||
"type_audio_guide": [],
|
||||
"region": "5d08e36dad3a9a001701b95b",
|
||||
"information_pages": [
|
||||
"5ed7a8a9070b700019e2d3cc",
|
||||
"5ed7aaed7437c000194f1972"
|
||||
],
|
||||
"short_description": "Пластиковая смарт карта Moscow CityPass откроет двери всех главных достопримечательностей столицы! ",
|
||||
"image_explore_preview": [
|
||||
{
|
||||
"source": {
|
||||
"id": "623982ee994c9997315b6917"
|
||||
}
|
||||
}
|
||||
],
|
||||
"image_detailed_page_main": [
|
||||
{
|
||||
"source": {
|
||||
"id": "705a663b-41c4-430f-abf9-814f493c0c52",
|
||||
"avg": "rgba(125, 136, 148, 0.4)"
|
||||
}
|
||||
}
|
||||
],
|
||||
"tags_main_screen": [
|
||||
"5e4aa3aca7edd0687c4688e1"
|
||||
],
|
||||
"billing_product_id": 3507,
|
||||
"rp_price_id": 6301,
|
||||
"images": [
|
||||
{
|
||||
"source": {
|
||||
"id": "635fce9512bcf2bb9a7508b9"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": {
|
||||
"id": "635fce9912bcf2bb9a7508d3"
|
||||
}
|
||||
}
|
||||
],
|
||||
"route": {
|
||||
"active": [
|
||||
"5e561615826e00001944cfe2",
|
||||
"5e561627826e00001944cfe6",
|
||||
"5e561760826e00001944d027",
|
||||
"5e561768826e00001944d029",
|
||||
"5e561770826e00001944d02c",
|
||||
"5e561784826e00001944d030",
|
||||
"5e561815826e00001944d067",
|
||||
"5e56181d826e00001944d069",
|
||||
"5e56193a826e00001944d0ac",
|
||||
"5e5617b9826e00001944d03e",
|
||||
"5e5617e5826e00001944d04b",
|
||||
"5e561800826e00001944d05e",
|
||||
"5e5617c6826e00001944d042",
|
||||
"5e561948826e00001944d0b0",
|
||||
"5e561964826e00001944d0b4",
|
||||
"5e56169d826e00001944cfff",
|
||||
"5e5619ad826e00001944d0c4",
|
||||
"5e5619f0826e00001944d0d2",
|
||||
"5e5619a6826e00001944d0c2",
|
||||
"5e56199a826e00001944d0c0",
|
||||
"5e5618b5826e00001944d08b",
|
||||
"5e561729826e00001944d01c",
|
||||
"5e561950826e00001944d0b2",
|
||||
"5e5619e8826e00001944d0d0",
|
||||
"5e5616b4826e00001944d005",
|
||||
"5e5616ac826e00001944d003",
|
||||
"5e5616a5826e00001944d001",
|
||||
"5e561941826e00001944d0ae",
|
||||
"5e5616e6826e00001944d00f",
|
||||
"5e561636826e00001944cfea",
|
||||
"5e5619d9826e00001944d0cc",
|
||||
"5e5619c4826e00001944d0ca",
|
||||
"5e5619bc826e00001944d0c8",
|
||||
"5e5619b4826e00001944d0c6",
|
||||
"5e56196c826e00001944d0b6",
|
||||
"5e561974826e00001944d0b8",
|
||||
"5e56197b826e00001944d0ba",
|
||||
"5e56198a826e00001944d0be",
|
||||
"5e561898826e00001944d087",
|
||||
"5e56171a826e00001944d017",
|
||||
"5e561982826e00001944d0bc",
|
||||
"5e561a38826e00001944d0ec",
|
||||
"5e561a4e826e00001944d0f0",
|
||||
"5e561759826e00001944d025",
|
||||
"5e561a45826e00001944d0ee",
|
||||
"5e561a5e826e00001944d0f4",
|
||||
"5e561a56826e00001944d0f2",
|
||||
"5e561a26826e00001944d0e8"
|
||||
],
|
||||
"dictionaries": [
|
||||
"5bb51b424390424300d06a41",
|
||||
"5a673061e97c730010ac6281"
|
||||
],
|
||||
"selected": [
|
||||
{
|
||||
"id": "5e561615826e00001944cfe2",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561627826e00001944cfe6",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561760826e00001944d027",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561768826e00001944d029",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5617a2826e00001944d03a",
|
||||
"active": false
|
||||
},
|
||||
{
|
||||
"id": "5e561770826e00001944d02c",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561784826e00001944d030",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561815826e00001944d067",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56181d826e00001944d069",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56193a826e00001944d0ac",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5617b9826e00001944d03e",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5617e5826e00001944d04b",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561800826e00001944d05e",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5617c6826e00001944d042",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561948826e00001944d0b0",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561964826e00001944d0b4",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56169d826e00001944cfff",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619ad826e00001944d0c4",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619f0826e00001944d0d2",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619a6826e00001944d0c2",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56199a826e00001944d0c0",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5618b5826e00001944d08b",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561729826e00001944d01c",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561950826e00001944d0b2",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619e8826e00001944d0d0",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5616b4826e00001944d005",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5616ac826e00001944d003",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5616a5826e00001944d001",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561941826e00001944d0ae",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5616e6826e00001944d00f",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561636826e00001944cfea",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619d9826e00001944d0cc",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619c4826e00001944d0ca",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619bc826e00001944d0c8",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619b4826e00001944d0c6",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56196c826e00001944d0b6",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561974826e00001944d0b8",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56197b826e00001944d0ba",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56198a826e00001944d0be",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561898826e00001944d087",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56171a826e00001944d017",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561982826e00001944d0bc",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5619e1826e00001944d0ce",
|
||||
"active": false
|
||||
},
|
||||
{
|
||||
"id": "5e561a38826e00001944d0ec",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561a4e826e00001944d0f0",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561759826e00001944d025",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561a45826e00001944d0ee",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561a5e826e00001944d0f4",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561a56826e00001944d0f2",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561a26826e00001944d0e8",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e56162f826e00001944cfe8",
|
||||
"active": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"description": "Пластиковая смарт карта Moscow CityPass откроет двери всех главных достопримечательностей столицы! Экскурсии по суше и воде, проход в музеи без очередей, скидки в ресторанах и 15 поездок на общественном транспорте — и все это бесплатно! В турпакет включены более 40 достопримечательностей и 6 экскурсионных туров разных форматов. Скучать не придется! \n\nИспользуя карту Moscow CityPass, вы можете посетить каждый объект программы, но не более одного раза, в течение срока действия карты (кроме билетов на City Sightseeing Bus. Они бывают нескольких видов на 24, 48 и 72 часа. Вы можете выходить и заходить обратно на любой из остановок неограниченное количество раз в течение срока действия билета).",
|
||||
"sort": 96,
|
||||
"time": "48",
|
||||
"packet_price": 6500,
|
||||
"route_tags": [
|
||||
"5e4fa298d067450019abf839",
|
||||
"5e4f9f18d067450019abf806",
|
||||
"5e4fa278d067450019abf834",
|
||||
"5e4fa0a4d067450019abf81c",
|
||||
"5ec3ee769bee8c001946a9a7",
|
||||
"5ec3ee40bfdeb400197cbe8e"
|
||||
],
|
||||
"city": "5bbe8a8a9e7fcb000f78a92d",
|
||||
"import_denied": false,
|
||||
"title": "Moscow CityPass на 2 дня"
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": {
|
||||
"$oid": "5e5902357849960019a7e25e"
|
||||
},
|
||||
"dictionary_data": {
|
||||
"type_audio_guide": [],
|
||||
"region": "5d08e36dad3a9a001701b94c",
|
||||
"information_pages": [
|
||||
"5ed7a8a9070b700019e2d3cc",
|
||||
"5f132560448801001846dfc0"
|
||||
],
|
||||
"service_count": null,
|
||||
"activity_count": null,
|
||||
"short_description": "Карта гостя Санкт-Петербурга, ключ к главным достопримечательностям города и не только!",
|
||||
"image_explore_preview": [
|
||||
{
|
||||
"source": {
|
||||
"id": "6351452112bcf2bb9a0c8e7c"
|
||||
}
|
||||
}
|
||||
],
|
||||
"image_detailed_page_main": [
|
||||
{
|
||||
"source": {
|
||||
"id": "5f16ea774488010018484d59"
|
||||
}
|
||||
}
|
||||
],
|
||||
"tags_main_screen": [
|
||||
"5e4aa3aca7edd0687c4688e1"
|
||||
],
|
||||
"rp_price_id": 7101,
|
||||
"images": [
|
||||
{
|
||||
"source": {
|
||||
"id": "635fc95f12bcf2bb9a748e5c"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": {
|
||||
"id": "635fc96412bcf2bb9a748e60"
|
||||
}
|
||||
}
|
||||
],
|
||||
"route": {
|
||||
"active": [
|
||||
"5c1ce09d514196d20547020e",
|
||||
"5e5615db826e00001944cfd2",
|
||||
"5e5615e9826e00001944cfd6",
|
||||
"5e55a62a826e00001944c86c",
|
||||
"5e5e331d2fc00200193460d3",
|
||||
"5e561606826e00001944cfe0",
|
||||
"5e5615ff826e00001944cfde",
|
||||
"5e5e473d2fc00200193461b6",
|
||||
"5e5e531e2fc00200193461f4",
|
||||
"5e5e49822fc00200193461c2",
|
||||
"5e5e4bf42fc00200193461d1",
|
||||
"5e5e561a2fc002001934620c",
|
||||
"5e5e45052fc00200193461a1",
|
||||
"5e55a346b333bd0019d18d2c",
|
||||
"5e5e29d82fc0020019346078",
|
||||
"5e5615e1826e00001944cfd4",
|
||||
"5e5d676d88e8040019cda132",
|
||||
"5e5e42982fc0020019346184",
|
||||
"5e5615f8826e00001944cfdc",
|
||||
"5e5e6903ccb7de00197f8abd",
|
||||
"5e5e5e45ccb7de00197f8aa3",
|
||||
"5e5e6e30ccb7de00197f8aec",
|
||||
"5e590ac47849960019a7e44b",
|
||||
"5e590a777849960019a7e445",
|
||||
"5e57735d2c129400197af134",
|
||||
"5f130fb1448801001846dec8",
|
||||
"5e5e6fe8ccb7de00197f8af3"
|
||||
],
|
||||
"dictionaries": [
|
||||
"5bb51b424390424300d06a41",
|
||||
"5a673061e97c730010ac6281"
|
||||
],
|
||||
"selected": [
|
||||
{
|
||||
"id": "5c1ce09d514196d20547020e",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e40f22fc0020019346173",
|
||||
"active": false
|
||||
},
|
||||
{
|
||||
"id": "5e5615db826e00001944cfd2",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5615e9826e00001944cfd6",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e55a62a826e00001944c86c",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e267b2fc002001934603b",
|
||||
"active": false
|
||||
},
|
||||
{
|
||||
"id": "5e5e2e422fc0020019346090",
|
||||
"active": false
|
||||
},
|
||||
{
|
||||
"id": "5e5e30fc2fc00200193460c8",
|
||||
"active": false
|
||||
},
|
||||
{
|
||||
"id": "5e5e331d2fc00200193460d3",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e561606826e00001944cfe0",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5615ff826e00001944cfde",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e473d2fc00200193461b6",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e531e2fc00200193461f4",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e49822fc00200193461c2",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e4bf42fc00200193461d1",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e561a2fc002001934620c",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e218d2fc002001934601a",
|
||||
"active": false
|
||||
},
|
||||
{
|
||||
"id": "5e5e45052fc00200193461a1",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e55a346b333bd0019d18d2c",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e29d82fc0020019346078",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5615e1826e00001944cfd4",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5d676d88e8040019cda132",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e42982fc0020019346184",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5615f8826e00001944cfdc",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e6903ccb7de00197f8abd",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e5e45ccb7de00197f8aa3",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e59098f7849960019a7e435",
|
||||
"active": false
|
||||
},
|
||||
{
|
||||
"id": "5e5e6e30ccb7de00197f8aec",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e590ac47849960019a7e44b",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e590a777849960019a7e445",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e57735d2c129400197af134",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5f130fb1448801001846dec8",
|
||||
"active": true
|
||||
},
|
||||
{
|
||||
"id": "5e5e6fe8ccb7de00197f8af3",
|
||||
"active": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"description": "St. Petersburg CityPass — это карта гостя Санкт-Петербурга, ключ к главным достопримечательностям города и не только! Комплект состоит из путеводителя с отрывными билетами на двух языках (русский, английский) и карты города. Вас ждет доступ к 23 музеям, 6 увлекательных разноформатных экскурсий и многое другое! Это просто, удобно и экономно! \n\nОбратите внимание, что после приобретения St. Petersburg CityPass, вы получаете путеводитель с отрывными билетами. В течение срока действия CityPass вы можете один раз посетить все музеи и экскурсии (кроме билетов на City Sightseeing Bus. Они бывают нескольких видов на 24, 48 и 72 часа. Вы можете выходить и заходить обратно на любой из остановок неограниченное количество раз в течение срока действия билета). CityPass действует с момента первого прохода в музей, автобус или на борт корабля. Скидками и специальными предложениями можно воспользоваться и после окончания срока действия CityPass!",
|
||||
"sort": 90,
|
||||
"time": "48",
|
||||
"packet_price": 5500,
|
||||
"route_tags": [],
|
||||
"city": "5bbf0e5f729bd4000fe02d5e",
|
||||
"import_denied": false,
|
||||
"pravila-soglasovaniya": false,
|
||||
"title": "St.-Petersburg CityPass на 2 дня"
|
||||
}
|
||||
}
|
||||
]
|
56
data/routes_description.txt
Normal file
56
data/routes_description.txt
Normal file
|
@ -0,0 +1,56 @@
|
|||
{
|
||||
_id: {
|
||||
$oid: str // id объекта коллекции
|
||||
}
|
||||
dictionary_data: {
|
||||
billing_product_id: int // Идентификатор продукта в биллинге
|
||||
city: str // Город
|
||||
description: str // Описание
|
||||
image_detailed_page_main: [ // Главная картинка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_explore_preview: [ // Превью для Explore
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Изображение
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // Отклонено модератором
|
||||
information_pages: list // Информационные страницы
|
||||
is_can_buy: bool // нет
|
||||
is_priority: bool // нет
|
||||
packet_price: int // Стоимость пакета
|
||||
pravila-soglasovaniya: bool // Правила согласования
|
||||
region: str // Регион
|
||||
route: { // Маршрут
|
||||
active: list // список активностей
|
||||
dictionaries: list // Используемые словари
|
||||
selected: [ // события / рестораны и прочие участвующие
|
||||
{
|
||||
id: str
|
||||
active: bool
|
||||
}
|
||||
]
|
||||
}
|
||||
route_tags: list // Тэги маршрута
|
||||
rp_price_id: int // Идентификатор тарифа в биллинге
|
||||
short_description: str // Краткое описание
|
||||
sort: int // Порядковый номер сортировки
|
||||
tags_main_screen: list // Тэг главного экрана
|
||||
time: str // Продолжительность, мин
|
||||
title: str // Заголовок
|
||||
type_audio_guide: list // Тип аудиогида
|
||||
}
|
||||
}
|
20988
data/tours.json
Normal file
20988
data/tours.json
Normal file
File diff suppressed because one or more lines are too long
92
data/tours_description.txt
Normal file
92
data/tours_description.txt
Normal file
|
@ -0,0 +1,92 @@
|
|||
{
|
||||
_id: {
|
||||
$oid: str // id объекта коллекции
|
||||
}
|
||||
dictionary_data: {
|
||||
city: str // Город
|
||||
complexity: str // Cложность
|
||||
days: int // Количество дней
|
||||
description: str // Описание
|
||||
hotel_stars: str // Звезды отеля
|
||||
image_detailed_page_main: [ // Главная картинка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_explore_preview: [ // Превью для Explore
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Изображения
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // Отклонено модератором
|
||||
included: str // В стоимость включено
|
||||
is_can_buy: bool // Можно купить
|
||||
language: str // Язык проведения
|
||||
min_age: str // Возрастное ограничение
|
||||
minGroupCount: str // Группа
|
||||
nights: int // Количество ночей
|
||||
paid_separately: str // Оплачивается дополнительно
|
||||
partner: str // Партнер
|
||||
pravila-soglasovaniya: bool // Правила согласования
|
||||
price: str // Стоимость
|
||||
program: str // Программа
|
||||
region: str // Регион
|
||||
route: [ // Программа тура
|
||||
{
|
||||
title: str // заголовок
|
||||
day_contents: { // события, посещения внутри дня
|
||||
dictionaries: list // Используемые словари
|
||||
selected: [ // события / рестораны и прочие участвующие
|
||||
{
|
||||
id: str
|
||||
active: bool
|
||||
}
|
||||
]
|
||||
active: list // список активностей
|
||||
}
|
||||
events: [ // список событий
|
||||
{
|
||||
title: str
|
||||
images: [
|
||||
{
|
||||
source: {
|
||||
id: str
|
||||
}
|
||||
}
|
||||
]
|
||||
geo_data: {
|
||||
coordinates: []
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
russpass_recommendation: bool // RUSSPASS рекомендует
|
||||
season_end: str // Конец сезона
|
||||
season_start: str // Начало сезона
|
||||
short_description: str // Краткое описание
|
||||
sort: int // Порядковый номер сортировки
|
||||
tags: list // Тэги
|
||||
tags_main_screen: list // Тэг главного экрана
|
||||
title: str // Заголовок
|
||||
tour_composition: [ // Состав тура
|
||||
{
|
||||
title: str
|
||||
list: list
|
||||
}
|
||||
]
|
||||
tour_type: str // Тип тура
|
||||
type_audio_guide: list // Тип аудиогида
|
||||
}
|
||||
}
|
29729
data/tracks.json
Normal file
29729
data/tracks.json
Normal file
File diff suppressed because it is too large
Load Diff
78
data/tracks_description.txt
Normal file
78
data/tracks_description.txt
Normal file
|
@ -0,0 +1,78 @@
|
|||
{
|
||||
_id: {
|
||||
$oid: str // id объекта коллекции
|
||||
}
|
||||
dictionary_data: {
|
||||
city: str // Город
|
||||
days_count: int // Длительность (дни)
|
||||
description: str // Полное описание
|
||||
duration_hours: int // Общее время прохождения маршрута (часы)
|
||||
image_detailed_page_main: [ // Главная картинка
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
image_explore_preview: [ // Превью для Explore
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
images: [ // Изображения
|
||||
{
|
||||
source: {
|
||||
id: str // id картинки в бд
|
||||
}
|
||||
}
|
||||
]
|
||||
import_denied: bool // Отклонено модератором
|
||||
information_pages: list // Информационные страницы
|
||||
price: int // Стоимость маршрута
|
||||
region: str // Регион
|
||||
route: [ // Маршрут по дням
|
||||
{
|
||||
title: str // заголовок
|
||||
day_contents: { // события, посещения внутри дня
|
||||
dictionaries: list // Используемые словари
|
||||
selected: [ // события / рестораны и прочие участвующие
|
||||
{
|
||||
id: str
|
||||
active: bool
|
||||
}
|
||||
]
|
||||
active: list // список активностей
|
||||
}
|
||||
recommended_hotels: list
|
||||
descriptions: { // Описания
|
||||
'active_id': { // id из day_contents
|
||||
description: str // Описание для данного элемента маршрута (может быть отлично от данных объекта)
|
||||
duration_custom_for_this_route: int // Продолжительность для данного элемента маршрута (может быть отлична от данных объекта)
|
||||
}
|
||||
}
|
||||
translated_data: {
|
||||
'language': { // 2-х буквенное описание языка
|
||||
descriptions: { // Описания
|
||||
'active_id': { // id из day_contents
|
||||
description: str // Описание для данного элемента маршрута (может быть отлично от данных объекта)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
russpass_recommendation: bool // RUSSPASS рекомендует
|
||||
short_description: str // Краткое описание
|
||||
sort: int // Порядковый номер сортировки
|
||||
tags: list // Тэги
|
||||
tags_main_screen: list // Тэги главного экрана
|
||||
title: str // Заголовок
|
||||
total_activity_price: int // Суммарная цена на активности
|
||||
type: str // Тип маршрута
|
||||
type_audio_guide: list // Тип аудиогида
|
||||
video_link: str // Ссылка на видео
|
||||
video_url_detail: str // Ссылка на видео на странице маршрута
|
||||
}
|
||||
}
|
0
passfinder/events/__init__.py
Normal file
0
passfinder/events/__init__.py
Normal file
3
passfinder/events/admin.py
Normal file
3
passfinder/events/admin.py
Normal file
|
@ -0,0 +1,3 @@
|
|||
from django.contrib import admin
|
||||
|
||||
# Register your models here.
|
5
passfinder/events/apps.py
Normal file
5
passfinder/events/apps.py
Normal file
|
@ -0,0 +1,5 @@
|
|||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class EventsConfig(AppConfig):
|
||||
name = "passfinder.events"
|
0
passfinder/events/migrations/__init__.py
Normal file
0
passfinder/events/migrations/__init__.py
Normal file
43
passfinder/events/models.py
Normal file
43
passfinder/events/models.py
Normal file
|
@ -0,0 +1,43 @@
|
|||
from django.db import models
|
||||
from polymorphic.models import PolymorphicModel
|
||||
|
||||
|
||||
class OIDModel(models.Model):
|
||||
oid = models.CharField(primary_key=True, max_length=24)
|
||||
|
||||
class Meta:
|
||||
abstract = True
|
||||
|
||||
|
||||
class Region(OIDModel):
|
||||
title = models.CharField(max_length=250)
|
||||
|
||||
|
||||
class Country(OIDModel):
|
||||
title = models.CharField(max_length=250)
|
||||
|
||||
|
||||
class City(OIDModel):
|
||||
title = models.CharField(max_length=250)
|
||||
region = models.ForeignKey(
|
||||
"Region", related_name="cities", null=True, on_delete=models.SET_NULL
|
||||
)
|
||||
|
||||
|
||||
class Tag(OIDModel):
|
||||
name = models.CharField(max_length=250)
|
||||
|
||||
|
||||
class BasePoints(OIDModel, PolymorphicModel):
|
||||
title = models.CharField(max_length=250)
|
||||
description = models.TextField()
|
||||
city = models.ForeignKey(
|
||||
"City", related_name="places", null=True, on_delete=models.SET_NULL
|
||||
)
|
||||
region = models.ForeignKey(
|
||||
"Region", related_name="points", null=True, on_delete=models.SET_NULL
|
||||
)
|
||||
creator = models.CharField(max_length=250)
|
||||
partner = models.CharField(max_length=250)
|
||||
payment_method = models.CharField(max_length=250)
|
||||
tags = models.ManyToManyField("Tag", related_name="points")
|
3
passfinder/events/tests.py
Normal file
3
passfinder/events/tests.py
Normal file
|
@ -0,0 +1,3 @@
|
|||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
3
passfinder/events/views.py
Normal file
3
passfinder/events/views.py
Normal file
|
@ -0,0 +1,3 @@
|
|||
from django.shortcuts import render
|
||||
|
||||
# Create your views here.
|
28
poetry.lock
generated
28
poetry.lock
generated
|
@ -811,6 +811,17 @@ files = [
|
|||
{file = "django_ipware-5.0.0-py2.py3-none-any.whl", hash = "sha256:80b52a3f571a371519cc552798f1015b934dd5dd7738bfad87e101e861bd21b8"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "django-location-field"
|
||||
version = "2.7.0"
|
||||
description = "Location field for Django"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "*"
|
||||
files = [
|
||||
{file = "django_location_field-2.7.0-py2.py3-none-any.whl", hash = "sha256:25745b3f409c0c7a1dfb5773f4f7505acbe7d0eaba93c2b9ce24ef368b71a24c"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "django-model-utils"
|
||||
version = "4.3.1"
|
||||
|
@ -826,6 +837,21 @@ files = [
|
|||
[package.dependencies]
|
||||
Django = ">=3.2"
|
||||
|
||||
[[package]]
|
||||
name = "django-polymorphic"
|
||||
version = "3.1.0"
|
||||
description = "Seamless polymorphic inheritance for Django models"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "*"
|
||||
files = [
|
||||
{file = "django-polymorphic-3.1.0.tar.gz", hash = "sha256:d6955b5308bf6e41dcb22ba7c96f00b51dfa497a8a5ab1e9c06c7951bf417bf8"},
|
||||
{file = "django_polymorphic-3.1.0-py3-none-any.whl", hash = "sha256:08bc4f4f4a773a19b2deced5a56deddd1ef56ebd15207bf4052e2901c25ef57e"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
Django = ">=2.1"
|
||||
|
||||
[[package]]
|
||||
name = "django-redis"
|
||||
version = "5.2.0"
|
||||
|
@ -2780,4 +2806,4 @@ files = [
|
|||
[metadata]
|
||||
lock-version = "2.0"
|
||||
python-versions = "^3.11"
|
||||
content-hash = "bfdadc8edad07f35f7f618b5cf8107885ead0db343fc3116d90198f803414c16"
|
||||
content-hash = "f28dac962f7703c39a58bd0f7640a1cc37af3dccd44f124e57e71d19d85278c0"
|
||||
|
|
|
@ -47,6 +47,8 @@ django-extensions = "^3.2.1"
|
|||
django-coverage-plugin = "^3.0.0"
|
||||
pytest-django = "^4.5.2"
|
||||
sentry-sdk = "^1.12.0"
|
||||
django-location-field = "^2.7.0"
|
||||
django-polymorphic = "^3.1.0"
|
||||
|
||||
|
||||
[build-system]
|
||||
|
|
Loading…
Reference in New Issue
Block a user