> For the complete documentation index, see [llms.txt](https://navixy.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://navixy.com/docs/analytics/ru/iot-query/schema-overview/bronze-layer/raw-business-data.md).

# Схема raw\_business\_data

raw\_business\_data содержит более 40 таблиц с пользователями, объектами, транспортом, заданиями и геозонами. Ознакомьтесь с определением схемы и описаниями ключевых таблиц для SQL-анализа

Эта схема содержит 40+ тщательно отобранных таблиц, охватывающих различные бизнес-аспекты и варианты использования. Эти таблицы представляют ваши основные бизнес-сущности, организационную структуру и операционные данные.

{% hint style="info" %}
Интерактивная диаграмма схемы raw\_business\_data доступна на **dbdiagram.io**: <https://dbdiagram.io/d/V3-bronze-layer-68ecfd1c2e68d21b4131089a>
{% endhint %}

Ниже вы найдете подробности схемы необработанных бизнес-данных.

{% code title="схема raw\_business\_data" expandable="true" %}

```sql
Таблица "vehicle_service_tasks" {
  "record_added_at" timestamp [not null]
  "start_mileage" числовой
  "comment" "character varying(255)"
  "status" "character varying(10)" [not null]
  "completion_date" метка времени
  "start_engine_hours" числовой
  "service_task_id" integer [not null]
  "is_notification_push_enabled" boolean [not null]
  "date_notification_interval" интервал
  "predicted_datetime" временная метка
  "cost" numeric [не null]
  "mileage_limit" числовой
  "notification_emails" текст
  "is_unplanned" boolean [not null]
  "is_repeat" boolean [not null]
  "completion_engine_hours" integer
  "engine_hours_limit" числовой
  "mileage_repeat_interval" целое число
  "vehicle_id" integer [not null]
  "engine_hours_notification_interval" integer
  "start_date" временная метка
  "mileage_notification_interval" целое число
  "date_repeat_interval" интервал
  "description" "character varying(255)"
  "notification_sms_phone_numbers" текст
  "end_date" метка времени
  "engine_hours_repeat_interval" целое число
  "completion_mileage" целое число
}

Таблица "гаражи" {
  "record_added_at" timestamp [not null]
  "garage_id" integer [not null]
  "longitude" числовой
  "mechanic_name" "character varying(255)"
  "radius" integer [not null]
  "latitude" числовое
  "organization_label" "character varying(255)"
  "user_id" integer [not null]
  "dispatcher_name" "character varying(255)"
  "address" "character varying(255)"
}

Таблица "driver_history" {
  "server_datetime" timestamp [not null]
  "address" "character varying(255)"
  "updated_by" integer [not null]
  "object_id" integer
  "longitude" числовой
  "latitude" числовое
  "driver_history_id" integer [not null]
  "hardware_key" "character varying(64)"
  "new_employee_id" integer
  "changed_datetime" метка времени
  "record_added_at" timestamp [not null]
  "old_employee_id" integer
}

Table "Отделы" {
  "record_added_at" timestamp [not null]
  "department_label" "character varying(255)" [not null]
  "latitude" числовое
  "department_id" integer [not null]
  "address" "character varying(255)"
  "radius" integer [not null]
  "longitude" числовой
  "user_id" integer [not null]
}

Table "checkins" {
  "radius" integer [not null]
  "latitude" numeric [not null]
  "employee_id" integer [not null]
  "longitude" numeric [not null]
  "record_added_at" timestamp [not null]
  "actual_datetime" timestamp [not null]
  "user_id" integer [not null]
  "form_id" integer [not null]
  "address" "character varying(255)"
  "planned_datetime" timestamp [not null]
  "object_id" integer [not null]
  "checkin_id" integer [not null]
  "комментарий" текст
}

Таблица "statuses" {
  "order_sort" integer [not null]
  "listing_id" integer [not null]
  "color" "character varying(6)" [not null]
  "status_id" integer [not null]
  "status_label" "character varying(200)" [not null]
  "record_added_at" timestamp [not null]
  "is_deleted" boolean [not null]
}

Таблица "places_linked_entity_fields" {
  "value" bigint [not null]
  "record_added_at" timestamp [not null]
  "place_id" integer [not null]
  "field_id" integer [not null]
}

Таблица "places_text_fields" {
  "place_id" integer [not null]
  "record_added_at" timestamp [not null]
  "value" text [not null]
  "field_id" integer [not null]
}

Таблица "users2zones" {
  "zone_id" integer [not null]
  "record_added_at" timestamp [not null]
  "user_id" integer [not null]
}

Таблица "objects" {
  "record_added_at" timestamp [not null]
  "create_datetime" timestamp [not null]
  "client_id" integer [not null]
  "group_id" целое число
  "object_label" "character varying(100)"
  "model" "character varying(64)"
  "is_clone" boolean [not null]
  "is_deleted" boolean [not null]
  "device_id" integer [not null]
  "object_id" integer [not null]
}

Таблица "device_output_name" {
  "device_id" integer [not null]
  "record_added_at" timestamp [not null]
  "label" "character varying(100)" [not null]
  "number" integer [not null]
}

Таблица "geofence_points" {
  "longitude" numeric [not null]
  "number" integer [not null]
  "zone_id" integer [not null]
  "record_added_at" timestamp [not null]
  "latitude" numeric [not null]
}

Table "custom_fields" {
  "record_added_at" timestamp [not null]
  "entity_id" integer [not null]
  "is_required" boolean [not null]
  "custom_field_label" text [not null]
  "parameters" jsonb
  "custom_field_type" integer [not null]
  "description" текст
  "custom_field_id" integer [not null]
}

Таблица "places_decimal_fields" {
  "field_id" integer [not null]
  "record_added_at" timestamp [not null]
  "place_id" integer [not null]
  "value" числовое [не NULL]
}

Table "task_history" {
  "task_id" integer [not null]
  "activity" integer [not null]
  "task_history_id" integer [not null]
  "record_added_at" timestamp [not null]
  "user_id" integer [not null]
  "event_datetime" timestamp [not null]
  "payload" текст
}

Таблица "теги" {
  "tag_label" "character varying(64)" [not null]
  "color" "character varying(6)"
  "user_id" integer [not null]
  "record_added_at" timestamp [not null]
  "tag_id" integer [not null]
}

Table "places" {
  "description" текст
  "custom_fields" jsonb
  "place_id" integer [not null]
  "external_id" "character varying(32)"
  "record_added_at" timestamp [not null]
  "user_id" целое число
  "latitude" числовое
  "radius" целое число
  "place_label" "character varying(256)"
  "assigned_datetime" timestamp
  "address" "character varying(256)"
  "longitude" числовой
}

Таблица "status_listings" {
  "user_id" integer [not null]
  "is_supervisor_controlled" boolean [not null]
  "is_deleted" boolean [not null]
  "status_listing_id" integer [not null]
  "is_employee_controlled" boolean [not null]
  "record_added_at" timestamp [not null]
  "status_listing_label" "character varying(200)" [not null]
}

Таблица "models" {
  "record_added_at" timestamp [not null]
  "model_id" integer [not null]
  "has_battery_level" boolean [not null]
  "alternative_label" "character varying(50)" [not null]
  "vendor" "character varying(30)" [not null]
  "is_clone" boolean
  "has_altitude" boolean [not null]
  "has_phone" boolean [not null]
  "type_output_control" "character varying(30)" [not null]
  "has_gsm_roaming" boolean [not null]
  "has_gsm_level" boolean [not null]
  "model" "character varying(255)" [not null]
  "type_special_control" "character varying(255)" [not null]
  "digital_amount" integer [not null]
  "has_detach_button" boolean [not null]
  "has_gsm_name" boolean [not null]
  "analog_amount" integer [not null]
  "outputs_amount" integer [not null]
}

Таблица "vehicle_trackers_history" {
  "vehicle_id" integer [not null]
  "record_added_at" timestamp [not null]
  "object_id" integer [not null]
  "changed_datetime" timestamp [not null]
  "vehicle_tracker_history_id" integer [not null]
}

Table "groups" {
  "group_id" integer [not null]
  "group_color" "character varying(6)" [not null]
  "group_label" "character varying(255)" [not null]
  "client_id" integer [not null]
  "record_added_at" timestamp [not null]
}

Таблица "sensor_description" {
  "record_added_at" timestamp [not null]
  "parameters" jsonb
  "input_id" integer [not null]
  "accuracy" numeric [not null]
  "sensor_units" "character varying(10)"
  "multiplier" doubleprecision [not null]
  "input_label" "character varying(64)"
  "sensor_label" "character varying(100)"
  "units_type" integer [not null]
  "divider" doubleprecision [not null]
  "group_id" integer [not null]
  "sensor_id" integer [not null]
  "device_id" integer [not null]
  "sensor_type" "character varying(45)" [not null]
  "group_type" integer [not null]
  "calibration_data" jsonb
}

Таблица "entities" {
  "entity_label" jsonb
  "record_added_at" timestamp [not null]
  "entity_id" integer [not null]
  "builtin_type" integer [not null]
  "user_id" integer [not null]
}

Table "zones" {
  "address" "character varying(255)"
  "radius" integer [not null]
  "zone_id" integer [not null]
  "circle_center_latitude" numeric [not null]
  "client_id" integer [not null]
  "zone_label" "character varying(100)"
  "color" "character varying(6)" [not null]
  "zone_type" "character varying(20)" [not null]
  "circle_center_longitude" numeric [not null]
  "latitude" numeric [not null]
  "record_added_at" timestamp [not null]
  "longitude" numeric [not null]
}

Table "vehicles" {
  "vehicle_id" integer [not null]
  "payload_length" числовой
  "vin" "character varying(20)"
  "free_insurance_policy_number" "character varying(50)"
  "vehicle_label" "character varying(100)"
  "payload_width" числовой
  "color" "character varying(6)"
  "trailer" "character varying(255)"
  "object_id" integer
  "vehicle_status_id" integer
  "liability_Страховка_valid_till" метка времени
  "manufacture_year" целое число
  "fuel_grade" "character varying(16)"
  "fuel_cost" numeric
  "fuel_tank_volume" numeric
  "model" "character varying(100)"
  "garage_id" integer
  "payload_height" числовой
  "max_speed" числовой
  "registration_number" "character varying(32)"
  "tyre_size" "character varying(50)"
  "passenger_capacity" integer
  "record_added_at" timestamp [not null]
  "trailer_reg_number" "character varying(32)"
  "free_insurance_valid_till_date" метка времени
  "gross_weight" числовое
  "standard_fuel_consumption" numeric
  "fuel_type" целое число
  "payload_weight" числовой
  "additional_info" текст
  "vehicle_subtype" "character varying(32)"
  "номер_полиса_Страховка_ответственности" "character varying(50)"
  "frame_number" "character varying(32)"
  "user_id" integer [not null]
  "vehicle_type" integer [not null]
  "chassis_number" "character varying(32)"
  "tyres_number" integer
  "wheel_arrangement" "character varying(16)"
}

Таблица "tag_links" {
  "entity_id" integer [not null]
  "record_added_at" timestamp [not null]
  "entity_type" integer [not null]
  "ordinal" integer [not null]
  "tag_id" integer [not null]
}

Table "rules" {
  "rule_id" integer [not null]
  "object_id" integer [not null]
  "parameters" jsonb
  "alert_phone" "character varying(210)" [not null]
  "event_type" "character varying(100)" [not null]
  "client_id" integer [not null]
  "is_push_enabled" boolean [not null]
  "event_comment1" "character varying(255)" [not null]
  "event_label" "character varying(255)" [not null]
  "description" "character varying(255)" [not null]
  "record_added_at" timestamp [not null]
  "alert_sms" текст [not null]
  "event_group" integer [not null]
  "created_at" timestamp [not null]
  "maximum" integer [not null]
  "is_deleted" boolean [not null]
  "alert_email" text [not null]
  "event_comment2" "character varying(255)" [not null]
}

Таблица "status_history" {
  "longitude" числовой
  "new_status_id" integer
  "status_history_id" integer [not null]
  "device_id" integer [not null]
  "updated_by" integer [not null]
  "address" "character varying(255)"
  "latitude" числовое
  "record_added_at" timestamp [not null]
  "server_datetime" timestamp [not null]
  "changed_datetime" метка времени
  "old_status_id" integer
}

Таблица "rules2zones" {
  "zone_id" integer [not null]
  "record_added_at" timestamp [not null]
  "rule_id" integer [not null]
}

Таблица "forms" {
  "object_id" integer [not null]
  "description" текст
  "form_label" "character varying(255)" [not null]
  "поля" текст
  "created_at" timestamp [not null]
  "submission_address" "character varying(255)"
  "submission_latitude" числовой
  "form_id" integer [not null]
  "submission_longitude" числовой
  "is_submission_in_zone" boolean [not null]
  "значения" текст
  "record_added_at" timestamp [not null]
  "task_id" целое число
  "submitted_at" метка времени
}


Таблица "rules2objects" {
  "object_params" jsonb
  "param_group_number" integer [not null]
  "object_id" integer [not null]
  "record_added_at" timestamp [not null]
  "rule_id" integer [not null]
}

Таблица "tasks" {
  "time_from" метка времени
  "stay_duration_minutes" интервал
  "external_id" "character varying(100)"
  "object_id" integer
  "task_type" целое число
  "arrival_duration_minutes" интервал
  "status" целое число
  "arrival_datetime" метка времени
  "record_added_at" timestamp [not null]
  "task_id" integer [not null]
  "user_id" целое число
  "status_change_datetime" timestamp
  "order_sort" integer
  "time_to" метка времени
  "max_delay_minuts" целое число
  "is_stay_control_enabled" boolean
  "address" "character varying(255)"
  "task_label" "character varying(200)" [not null]
  "longitude" числовой
  "created_by" целое число
  "description" text [not null]
  "radius" целое число
  "latitude" числовое
  "stay_duration" целое число
  "created_at" timestamp [not null]
  "custom_fields" jsonb
  "parent_task_id" целое число
}

Таблица "places_bigint_fields" {
  "field_id" integer [not null]
  "value" bigint [not null]
  "place_id" integer [not null]
  "record_added_at" timestamp [not null]
}

Таблица "devices" {
  "is_sim_blocked" boolean [not null]
  "device_id" integer [not null]
  "device_imei" "character varying(64)" [not null]
  "network_label" "character varying(50)" [not null]
  "status_listing_id" integer [not null]
  "signal_level" numeric [not null]
  "phone" "character varying(32)" [not null]
  "has_roaming" boolean [not null]
  "created_at" timestamp [not null]
  "owner_id" integer [not null]
  "record_added_at" timestamp [not null]
}

Table "description_parameters" {
  "description" "character varying(150)"
  "record_added_at" timestamp [not null]
  "type" "character varying(100)" [not null]
  "key" integer [not null]
}

Table "users" {
  "company_label" "character varying(255)" [not null]
  "registration_datetime" timestamp
  "first_name" "character varying(100)" [not null]
  "master_id" integer
  "last_name" "character varying(100)" [not null]
  "birth_date" timestamp
  "timezone_label" "character varying(30)"
  "middle_name" "character varying(100)" [not null]
  "user_id" integer [not null]
  "locale" "character varying(10)" [not null]
  "record_added_at" timestamp [not null]
}

Таблица "counters" {
  "sensor_id" integer
  "multiplier" numeric [not null]
  "counter_id" integer [not null]
  "device_id" integer [not null]
  "counter_type" integer [not null]
  "record_added_at" timestamp [not null]
}

Таблица "employees" {
  "driver_license_valid_till" временная метка
  "record_added_at" timestamp [not null]
  "last_name" "character varying(100)"
  "department_id" integer
  "citizen_id_number" "character varying(32)"
  "first_name" "character varying(100)"
  "driver_license_categories" "character varying(32)"
  "user_id" integer [not null]
  "phone_number" "character varying(32)"
  "object_id" integer
  "is_deleted" boolean [not null]
  "driver_license_issue_date" boolean
  "hardware_key" "character varying(64)"
  "middle_name" "character varying(100)"
  "address" "character varying(255)"
  "latitude" числовое
  "employee_id" integer [not null]
  "personnel_number" "character varying(15)"
  "Уровень топлива_cost" doubleprecision
  "driver_license_number" "character varying(32)"
  "email" "character varying(100)"
  "fuel_consumption" doubleprecision
  "radius" integer [not null]
  "longitude" числовой
}

Таблица "places_longtext_fields" {
  "field_id" integer [not null]
  "value" text [not null]
  "record_added_at" timestamp [not null]
  "place_id" integer [not null]
}

Table "groups_objects" {
  "groups_client_id" integer
  "objects_client_id" integer

  Индексы {
    (groups_client_id, objects_client_id) [pk]
  }
}

Table "device_settings" {
  "device_id" integer [not null]
  "key" "character varying" [not null]
  "значение" текст

  Индексы {
    (device_id, key) [pk]
  }
}

Table "event_description" {
  "event_id" integer [not null, pk]
  "description" текст
}

Ссылка:"employees"."employee_id" < "checkins"."employee_id"

Ref:"objects"."object_id" < "checkins"."object_id"

Ref:"forms"."form_id" < "checkins"."form_id"

Ссылка:"sensor_description"."sensor_id" < "counters"."sensor_id"

Ref:"devices"."device_id" < "counters"."device_id"

Ref:"entities"."entity_id" < "custom_fields"."entity_id"

Ref:"Отделы"."department_id" < "employees"."department_id"

Ref:"users"."user_id" < "departments"."user_id"

Ссылка:"description_parameters"."key" < "counters"."counter_type"

Ref:"description_parameters"."key" < "custom_fields"."custom_field_type"

Ref:"description_parameters"."key" < "driver_history"."updated_by"

Ref:"description_parameters"."key" < "entities"."builtin_type"

Ref:"description_parameters"."key" < "sensor_description"."units_type"

Ссылка:"description_parameters"."key" < "status_history"."updated_by"

Ref:"description_parameters"."key" < "tasks"."status"

Ref:"description_parameters"."key" < "tasks"."created_at"

Ref:"description_parameters"."key" < "tasks"."task_type"

Ref:"description_parameters"."key" < "vehicles"."fuel_type"

Ref:"description_parameters"."key" < "task_history"."activity"

Ref:"description_parameters"."key" < "sensor_description"."group_type"

Ref:"devices"."device_id" < "device_output_name"."device_id"

Ссылка:"status_listings"."status_listing_id" < "devices"."status_listing_id"

Ref:"employees"."employee_id" < "driver_history"."new_employee_id"

Ref:"employees"."employee_id" < "driver_history"."old_employee_id"

Ref:"objects"."object_id" < "driver_history"."object_id"

Ref:"objects"."object_id" < "employees"."object_id"

Ref:"users"."user_id" < "employees"."user_id"

Ссылка:"users"."user_id" < "entities"."user_id"

Ref:"tasks"."task_id" < "forms"."task_id"

Ref:"objects"."object_id" < "forms"."object_id"

Ref:"objects"."object_id" < "tasks"."object_id"

Ref:"users"."user_id" < "garages"."user_id"

Ссылка:"groups"."client_id" < "groups_objects"."groups_client_id"

Ссылка:"objects"."client_id" < "groups_objects"."objects_client_id"

Ссылка:"models"."model" < "objects"."model"

Ссылка:"devices"."device_id" < "objects"."device_id"

Ref:"users"."user_id" < "places"."user_id"

Ссылка:"custom_fields"."custom_field_id" < "places_bigint_fields"."field_id"

Ref:"places"."place_id" < "places_bigint_fields"."place_id"

Ref:"custom_fields"."custom_field_id" < "places_decimal_fields"."field_id"

Ref:"places"."place_id" < "places_decimal_fields"."place_id"

Ссылка:"custom_fields"."custom_field_id" < "places_linked_entity_fields"."field_id"

Ref:"places"."place_id" < "places_linked_entity_fields"."place_id"

Ref:"custom_fields"."custom_field_id" < "places_longtext_fields"."field_id"

Ref:"places"."place_id" < "places_longtext_fields"."place_id"

Ref:"custom_fields"."custom_field_id" < "places_text_fields"."field_id"

Ref:"places"."place_id" < "places_text_fields"."place_id"

Ref:"rules"."rule_id" < "rules2zones"."rule_id"

Ссылка:"objects"."object_id" < "rules2objects"."object_id"

Ref:"rules"."rule_id" < "rules2objects"."object_id"

Ссылка:"zones"."zone_id" < "rules2zones"."zone_id"

Ref:"devices"."device_id" < "sensor_description"."device_id"

Ref:"statuses"."status_id" < "status_history"."new_status_id"

Ref:"statuses"."status_id" < "status_history"."old_status_id"

Ref:"devices"."device_id" < "status_history"."device_id"

Ref:"users"."user_id" < "status_listings"."user_id"

Ref:"status_listings"."status_listing_id" < "statuses"."listing_id"

Ref:"tags"."tag_id" < "tag_links"."tag_id"

Ref:"users"."user_id" < "tags"."user_id"

Ссылка:"tasks"."task_id" < "task_history"."task_id"

Ref:"users"."user_id" < "task_history"."user_id"

Ref:"tasks"."parent_task_id" < "tasks"."task_id"

Ref:"users"."user_id" < "tasks"."user_id"

Ref:"users"."master_id" < "users"."user_id"

Ссылка:"users"."user_id" < "users2zones"."user_id"

Ref:"zones"."zone_id" < "users2zones"."zone_id"

Ref:"vehicles"."vehicle_id" < "vehicle_service_tasks"."vehicle_id"

Ref:"objects"."object_id" < "vehicle_trackers_history"."object_id"

Ref:"vehicles"."vehicle_id" < "vehicle_trackers_history"."vehicle_id"

Ref:"garages"."garage_id" < "vehicles"."garage_id"

Ref:"objects"."object_id" < "vehicles"."object_id"

Ref:"users"."user_id" < "vehicles"."user_id"

Ref:"zones"."zone_id" < "geofence_points"."zone_id"

Ref:"users"."user_id" < "devices"."owner_id"

Ссылка:"users"."user_id" < "objects"."client_id"

```

{% endcode %}

## Частота обновления

Данные в этой схеме синхронизируются с основной БД. Обновления происходят инкрементально по мере изменений в исходной базе MySQL, обычно менее чем через 5 минут после изменения в источнике.

## `description_parameters`

Система включает справочные данные для стандартизации значений по всей базе данных:

<table><thead><tr><th width="167.1817626953125">Тип справочных данных</th><th width="173.9090576171875">Описание</th><th>Примеры значений</th></tr></thead><tbody><tr><td>Определения типов</td><td>Стандартные типы сущностей</td><td><code>vehicle_type: автомобиль, грузовик, автобус</code></td></tr><tr><td>Коды статуса</td><td>Задание и значения статуса системы</td><td><code>tasks_status: unassigned, assigned, done</code></td></tr><tr><td>Определения единиц</td><td>Единицы измерения для датчиков</td><td><code>units_type: литр, галлон, celsius</code></td></tr><tr><td>Классификации сущностей</td><td>Категории бизнес-сущностей</td><td><code>entities_type: Место, Задание, клиент</code></td></tr></tbody></table>

## Основные таблицы по категориям

Таблицы в **`raw_business_data`** схема организованы в функциональные категории для более удобной навигации. Приведенная ниже таблица кратко описывает ключевые таблицы по их бизнес-назначению:

Основные бизнес-сущности

<details>

<summary><strong><code>пользователи</code></strong></summary>

**Описание**: Учетные записи пользователей, содержащие информацию Профиль, привязку к компании, настройки локализации (часовой пояс, локаль) и иерархические связи через master\_id для многоуровневых структур учетных записей

<table><thead><tr><th width="145">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>user_id</code> - Уникальный идентификатор пользователя<br>- <code>company_label</code> - Название компании, связанной с пользователем<br>- <code>first_name</code> - Имя пользователя<br>- <code>last_name</code> - Фамилия пользователя<br>- <code>middle_name</code> - Отчество пользователя<br>- <code>locale</code> - Настройки языка пользователя<br>- <code>timezone_label</code> - Часовой пояс в формате IANA<br>- <code>master_id</code> - ID основного пользователя (если текущий является подчиненным)<br>- <code>registration_datetime</code> - Дата регистрации в системе<br>- <code>birth_date</code> - Дата рождения пользователя</td></tr><tr><td><strong>Связи</strong></td><td>Родительский пользователь через <code>master_id</code>, связанный с <code>сотрудники</code>, <code>Отделы</code>, <code>Места</code>, <code>Задания</code> через <code>user_id</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Центральная сущность, соединяющая организационные данные; <code>master_id</code> позволяет строить иерархии пользователей для многоуровневых структур учетных записей</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>сотрудники</code></strong></summary>

**Описание** : Записи сотрудников и Водитель, используемые для представления людей, работающих в организации, включая личную информацию, данные о лицензиях, назначения в подразделения, аппаратные ключи для идентификации iButton/RFID и данные о местоположении с поддержкой геозон.

<table><thead><tr><th width="143">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>employee_id</code> - Идентификатор сущности сотрудника<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>department_id</code> - Идентификатор отдела, к которому назначен сотрудник<br>- <code>first_name</code> - Атрибут first_name таблицы employees<br>- <code>last_name</code> - Атрибут last_name таблицы employees<br>- <code>middle_name</code> - Атрибут middle_name таблицы employees<br>- <code>driver_license_number</code> - Номер Водительского удостоверения<br>- <code>категории_водительских_прав</code> - Категории водительских прав<br>- <code>driver_license_issue_date</code> - Дата выдачи Водительского удостоверения<br>- <code>driver_license_valid_till</code> - Дата до окончания действия водительского удостоверения<br>- <code>hardware_key</code> - Аппаратный ключ<br>- <code>email</code> - Электронная почта сотрудника<br>- <code>phone_number</code> - Телефон сотрудника без знака "+"<br>- <code>address</code> - Адрес локации<br>- <code>personnel_number</code> - Табельный номер сотрудника/водителя<br>- <code>citizen_id_number</code> - номер социального Охрана<br>- <code>широта</code> - Местоположение, связанное с этим сотрудником<br>- <code>долгота</code> - Местоположение, связанное с этим сотрудником<br>- <code>радиус</code> - Местоположение, связанное с этим сотрудником, в метрах<br>- <code>fuel_consumption</code> - Атрибут fuel_consumption таблицы сотрудников<br>- <code>fuel_cost</code> - Атрибут fuel_cost таблицы employees<br>- <code>is_deleted</code> - Атрибут is_deleted таблицы employees</td></tr><tr><td><strong>Связи</strong></td><td>Ссылки на <code>пользователи</code>, <code>Отделы</code>, <code>объекты</code> (назначенный трекер), отслеживается в <code>история_водителя</code> и <code>чек-ины</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Аппаратный ключ обеспечивает идентификацию Водителя с помощью iButton или RFID; поддерживает геозонирование с <code>широта</code>, <code>долгота</code>, <code>радиус</code> поля</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>Отделы</code></strong></summary>

**Описание**: Организационные единицы с данными географического местоположения (широта, долгота, радиус), обеспечивающие аналитику на основе Зона для отчетности на уровне подразделений и сопоставления местоположения сотрудников

<table><thead><tr><th width="156">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>department_id</code> - Идентификатор сущности отдела<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>department_label</code> - Атрибут department_label таблицы Отделы<br>- <code>широта</code> - Местоположение, связанное с этими Отделы<br>- <code>долгота</code> - Местоположение, связанное с этими Отделы<br>- <code>радиус</code> - Размер геолокации в метрах<br>- <code>address</code> - Атрибут address таблицы Отделы</td></tr><tr><td><strong>Связи</strong></td><td>Связывает сотрудников с организационной структурой через <code>department_id</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Поля местоположения поддерживают аналитику на основе Зона для отчетов на уровне отдела</td></tr></tbody></table>

</details>

Мониторинг и мониторинг

<details>

<summary><strong><code>устройства</code></strong></summary>

**Описание**: Реестр физических устройств мониторинга с аппаратными идентификаторами (IMEI), информацией о SIM-карте, статусом сетевого подключения (уровень сигнала, роуминг, оператор) и списком статусов назначений для управления жизненным циклом устройства

<table><thead><tr><th width="138">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>device_id</code> - ID устройства<br>- <code>owner_id</code> - ID Владелец устройства, в чей аккаунт был добавлен маячок<br>- <code>device_imei</code> - IMEI устройства<br>- <code>телефон</code> - Номер SIM-карты устройства<br>- <code>status_listing_id</code> - ID Статус работы устройств<br>- <code>network_label</code> - Название сети, к которой подключена SIM-карта<br>- <code>signal_level</code> - Уровень сигнала устройства<br>- <code>has_roaming</code> - Флаг доступности роуминга<br>- <code>is_sim_blocked</code> - Флаг блокировки SIM-карты<br>- <code>created_at</code> - Дата и время создания записи</td></tr><tr><td><strong>Связи</strong></td><td>Основная сущность, ссылающаяся на <code>объекты</code>, <code>модели</code>, <code>sensor_description</code>, <code>счетчики</code>; <code>owner_id</code> ссылки <code>users.user_id</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Все телематические данные в <code>raw_telematics_data</code> схема ссылается на эту таблицу через <code>device_id</code></td></tr></tbody></table>

</details>

<details>

<summary><strong><code>объекты</code></strong></summary>

**Описание**: Центральный реестр отслеживаемых сущностей (Транспорт, активы, персонал), связывающий физические устройства с организационной структурой через client\_id и group\_id и представляющий «отслеживаемую единицу» с одним активным Объектом на устройство

<table><thead><tr><th width="148">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>client_id</code> - Идентификатор сущности клиента<br>- <code>device_id</code> - Идентификатор сущности устройства<br>- <code>метка объекта</code> - Название Объект<br>- <code>модель</code> - Модель устройства<br>- <code>group_id</code> - Группа идентификаторов сущности<br>- <code>create_datetime</code> - Дата и время создания новой строки на сервере<br>- <code>is_deleted</code> - Атрибут is_deleted таблицы objects<br>- <code>is_clone</code> - Признак клона</td></tr><tr><td><strong>Связи</strong></td><td>Центральный узел, соединяющий устройства с пользователями (<code>client_id</code>), сведения о транспортном средстве, история мониторинга, задания и правила</td></tr><tr><td><strong>Особые примечания</strong></td><td>Представляет в системе «отслеживаемую единицу»; один объект на каждое устройство в активном использовании</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>модели</code></strong></summary>

**Описание**: Центральный реестр отслеживаемых сущностей (Транспорт, активы, персонал), связывающий физические устройства с организационной структурой через client\_id и group\_id и представляющий «отслеживаемую единицу» с одним активным Объектом на устройство

<table><thead><tr><th width="135">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>model_id</code> - Идентификатор модели сущности<br>- <code>модель</code> - Атрибут model таблицы models<br>- <code>vendor</code> - Название компании, выпустившей трекер<br>- <code>alternative_label</code> - Атрибут alternative_label таблицы models<br>- <code>analog_amount</code> - Количество аналоговых входов трекера<br>- <code>digital_amount</code> - Количество дискретных входов трекера<br>- <code>outputs_amount</code> - Количество дискретных выходов трекера<br>- <code>has_battery_level</code> - Определяет, передает ли трекер показатели заряда батареи<br>- <code>has_altitude</code> - Определяет, передает ли трекер высоту<br>- <code>has_phone</code> - Есть ли SIM-карта?<br>- <code>has_gsm_level</code> - Может ли трекер передавать уровень сигнала GSM?<br>- <code>has_gsm_name</code> - Может ли трекер передавать название сети GSM или код оператора (MCC + MNC)?<br>- <code>has_gsm_roaming</code> - Может ли трекер передавать статус роуминга?<br>- <code>has_detach_button</code> - Есть ли у трекера датчик снятия?<br>- <code>type_output_control</code> - Профиль управления выходами трекера<br>- <code>type_special_control</code> - Содержит специализированные настройки и функциональные модули для отдельных моделей устройства, например режим опасного вождения (hbm_telfm) для оборудования Teltonika<br>- <code>is_clone</code> - Является ли модель клоном другой модели?</td></tr><tr><td><strong>Содержимое</strong></td><td>Булевы флаги возможностей указывают, какие поля данных доступны для этого типа устройства</td></tr><tr><td><strong>Особые примечания</strong></td><td>Используйте флаги возможностей, чтобы определить допустимые датчики и входы при запросе телематических данных</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>sensor_description</code></strong></summary>

**Описание**: Полная конфигурация датчиков, связывающая входы устройства с бизнес-логикой, включая сопоставления входов, единицы измерения, коэффициенты преобразования (multiplier/divider), таблицы калибровки для датчиков уровня топлива, пороги точности и логику группировки для агрегированных показаний датчиков

<table><thead><tr><th width="142">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>sensor_id</code> - Идентификатор сущности датчика<br>- <code>device_id</code> - Идентификатор сущности устройства<br>- <code>sensor_label</code> - Название датчика для интерфейса<br>- <code>input_label</code> - Имя поля сообщения (атрибута), из которого берутся Данные датчиков. Если значение равно "input_status," это Дискретный датчик<br>- <code>sensor_type</code> - Тип датчика<br>- <code>units_type</code> - Единицы измерения<br>- <code>multiplier</code> - Множитель - число, на которое умножается значение поля. Только для Измерительные датчики<br>- <code>divider</code> - Делитель - число, на которое делится значение поля. Только для Измерительные датчики<br>- <code>погрешность</code> - Указанный процент для расчета абсолютной погрешности объема бака. Эта погрешность используется для определения того, когда происходят заправки или сливы. Это используется только для датчиков уровня топлива<br>- <code>calibration_data</code> - Атрибут calibration_data таблицы sensor_description<br>- <code>input_id</code> - Номер входа для Дискретный датчик<br>- <code>group_id</code> - Датчики одного типа с одинаковыми group_id и source_id считаются относящимися к одной Группе. Их данные суммируются или усредняются в зависимости от значения group_type. Это необходимо для агрегированных датчиков. Используется в датчиках измерения<br>- <code>тип_группы</code> - 0 - суммирование значений датчиков внутри Группы, 1 - среднее<br>- <code>sensor_units</code> - Название единицы, введенное пользователем, если units_type=0 (пользовательский)<br>- <code>параметры</code> - Необязательный объект с дополнительными параметрами parent_ids — необязательный массив parent_ids для составного датчика. volume — double. Необязательно. Объем для составного датчика. parent_ids — необязательно. Массив int. Массив parent_ids для составного датчика. volume — необязательно. Double. Объем для составного датчика. min — необязательно. Double. Минимальное допустимое исходное значение датчика. max — необязательно. Double. Максимальное допустимое исходное значение датчика. max_lowering_by_time — необязательно. Double. Максимальное допустимое снижение значения в час. max_lowering_by_mileage — необязательно. Double. Максимальное допустимое снижение значения на 100 km. ignore_drains_in_move — необязательно. Boolean. По умолчанию — false. Если true, сливы топлива не будут определяться во время движения. ignore_refuels_in_move — необязательно. Boolean. По умолчанию — false. Если true, заправки не будут определяться во время движения. refuel_gap_minutes — необязательно. Integer. По умолчанию — 5. Время в минутах после начала движения, в течение которого заправки будут определяться во время движения. custom_field_name — необязательно. Boolean. По умолчанию — false. Параметр определяет, является ли поле input_name пользовательским значением, введенным пользователем. Это имеет смысл, только если модель трекера поддерживает функцию has_custom_fields</td></tr><tr><td><strong>Связи</strong></td><td>Связывает входы устройства (из <code>raw_telematics_data.inputs</code>) к бизнес-логике через <code>device_id</code> и <code>input_label</code> сопоставление</td></tr><tr><td><strong>Особые примечания</strong></td><td><code>calibration_data</code> (JSONB) хранит калибровочные таблицы, специфичные для датчиков уровня топлива; <code>multiplier</code> и <code>divider</code> преобразовать сырые значения в единицы измерения</td></tr></tbody></table>

</details>

Управление Активами

<details>

<summary><strong><code>Транспорт</code></strong></summary>

**Описание**: Комплексный реестр транспортных средств, содержащий технические характеристики (габариты, масса, вместимость), документацию (VIN, регистрационные данные, Страховка), эксплуатационные параметры (Норма расхода, объем бака) и сведения о текущем назначении устройства типа Трекер через object\_id для задач «Управление транспортом» и мониторинга соответствия требованиям

<table><thead><tr><th width="144">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>vehicle_id</code> - Идентификатор сущности транспортного средства<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>garage_id</code> - идентификатор сущности Garage<br>- <code>vehicle_label</code> - Атрибут vehicle_label таблицы Транспорт<br>- <code>registration_number</code> - Рег. номер/ Гос. номер транспортного средства<br>- <code>VIN</code> - атрибут VIN таблицы Транспорт<br>- <code>manufacture_year</code> - Атрибут manufacture_year таблицы Транспорт<br>- <code>тип_топлива</code> - Атрибут fuel_type таблицы vehicles<br>- <code>fuel_cost</code> - Атрибут fuel_cost таблицы vehicles<br>- <code>fuel_tank_volume</code> - Атрибут fuel_tank_volume таблицы vehicles<br>- <code>max_speed</code> - Атрибут max_speed таблицы Транспорт<br>- <code>модель</code> - Атрибут model таблицы Транспорт<br>- <code>color</code> - Атрибут color таблицы Транспорт<br>- <code>trailer</code> - Атрибут trailer таблицы Транспорт<br>- <code>additional_info</code> - Атрибут additional_info таблицы Транспорт<br>- <code>vehicle_type</code> - Атрибут vehicle_type таблицы Транспорт<br>- <code>vehicle_subtype</code> - Атрибут vehicle_subtype таблицы Транспорт<br>- <code>vehicle_status_id</code> - Идентификатор сущности статуса транспортного средства<br>- <code>chassis_number</code> - Атрибут chassis_number таблицы Транспорт<br>- <code>frame_number</code> - Атрибут frame_number таблицы Транспорт<br>- <code>trailer_reg_number</code> - Атрибут trailer_reg_number таблицы Транспорт<br>- <code>payload_weight</code> - Атрибут payload_weight таблицы Транспорт<br>- <code>payload_height</code> - Атрибут payload_height таблицы Транспорт<br>- <code>payload_length</code> - Атрибут payload_length таблицы Транспорт<br>- <code>payload_width</code> - Атрибут payload_width таблицы Транспорт<br>- <code>passenger_capacity</code> - Максимальное число пассажиров<br>- <code>gross_weight</code> - Атрибут gross_weight таблицы Транспорт<br>- <code>standard_fuel_consumption</code> - Нормальная средняя Норма расхода в литрах на 100 км<br>- <code>марка_топлива</code> - Атрибут fuel_grade таблицы vehicles<br>- <code>wheel_arrangement</code> - Атрибут wheel_arrangement таблицы Транспорт<br>- <code>tyre_size</code> - Размер транспортного средства: габариты и размер колес<br>- <code>tyres_number</code> - Количество колес<br>- <code>liability_insurance_policy_number</code> - Атрибут liability_insurance_policy_number таблицы vehicles<br>- <code>liability_Страховка_valid_till</code> - Дата, до которой действует страховка гражданской ответственности<br>- <code>бесплатный_номер_полиса_Страховка</code> - Атрибут free_insurance_policy_number таблицы vehicles<br>- <code>free_insurance_valid_till_date</code> - Дата, до которой действует бесплатная Страховка</td></tr><tr><td><strong>Связи</strong></td><td>Ссылки на <code>объекты</code> (текущий Трекер), <code>Гаражи</code> (место обслуживания), <code>vehicle_service_tasks</code>; отслеживается в <code>vehicle_trackers_history</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Поля физических параметров (<code>payload_length</code>, <code>payload_width</code>, <code>payload_height</code>, <code>gross_weight</code>) поддерживают аналитику планирования загрузки; даты Страховка обеспечивают Мониторинг соответствия</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>Гаражи</code></strong></summary>

**Описание**: Местоположения сервисных и Техобслуживание объектов с географическими координатами (широта, долгота, радиус), контактная информация для механиков и диспетчеров, обеспечивающая обнаружение сервисных визитов на основе Зона и анализ близости

<table><thead><tr><th width="135">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>garage_id</code> - идентификатор сущности Garage<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>широта</code> - Объект местоположения<br>- <code>долгота</code> - Объект местоположения<br>- <code>радиус</code> - Размер геолокации в метрах<br>- <code>address</code> - Объект местоположения<br>- <code>organization_label</code> - Гараж ID<br>- <code>mechanic_name</code> - Имя механика<br>- <code>dispatcher_name</code> - Имя диспетчера</td></tr><tr><td><strong>Связи</strong></td><td>Используется в <code>vehicles.garage_id</code> для назначения сервисной локации</td></tr><tr><td><strong>Особые примечания</strong></td><td>Поля местоположения обеспечивают обнаружение сервисных визитов на основе Зона и анализ близости</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>vehicle_service_tasks</code></strong></summary>

**Описание**: График техобслуживания и мониторинг истории обслуживания с несколькими типами триггеров (по дате, по пробегу, по моточасам двигателя), повторяющимися интервалами задания, уведомлениями по нескольким каналам (email, SMS, push) и разграничением между плановыми (is\_repeat) и внеплановыми событиями техобслуживания

<table><thead><tr><th width="132">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>service_task_id</code> - Идентификатор сущности сервисного задания<br>- <code>vehicle_id</code> - Идентификатор сущности транспортного средства<br>- <code>описание</code> - Атрибут description таблицы vehicle_service_tasks<br>- <code>статус</code> - Значение статуса атрибута status<br>- <code>стоимость</code> - Атрибут cost таблицы vehicle_service_tasks<br>- <code>start_date</code> - Дата и время, связанные с атрибутом start_date<br>- <code>end_date</code> - Дата и время, связанные с атрибутом end_date<br>- <code>completion_date</code> - Дата и время, связанные с атрибутом completion_date<br>- <code>predicted_datetime</code> - Дата и время, связанные с атрибутом predicted_datetime<br>- <code>mileage_limit</code> - Атрибут mileage_limit таблицы vehicle_service_tasks<br>- <code>engine_hours_limit</code> - атрибут engine_hours_limit таблицы vehicle_service_tasks<br>- <code>start_пробег</code> - Атрибут start_mileage таблицы vehicle_service_tasks<br>- <code>start_engine_hours</code> - Атрибут start_engine_hours таблицы vehicle_service_tasks<br>- <code>mileage_notification_interval</code> - Атрибут mileage_notification_interval таблицы vehicle_service_tasks<br>- <code>engine_hours_notification_interval</code> - Атрибут engine_hours_notification_interval таблицы vehicle_service_tasks<br>- <code>date_notification_interval</code> - Преобразование целого числа N в N дней<br>- <code>mileage_repeat_interval</code> - Атрибут mileage_repeat_interval таблицы vehicle_service_tasks<br>- <code>engine_hours_repeat_interval</code> - Атрибут engine_hours_repeat_interval таблицы vehicle_service_tasks<br>- <code>date_repeat_interval</code> - Преобразование целого числа N в N дней<br>- <code>notification_emails</code> - Атрибут notification_emails таблицы vehicle_service_tasks<br>- <code>notification_sms_phone_numbers</code> - Атрибут notification_sms_phone_numbers таблицы vehicle_service_tasks<br>- <code>is_notification_push_enabled</code> - Атрибут is_notification_push_enabled таблицы vehicle_service_tasks<br>- <code>completion_пробег</code> - Атрибут completion_mileage таблицы vehicle_service_tasks<br>- <code>completion_engine_hours</code> - Атрибут completion_engine_hours таблицы vehicle_service_tasks<br>- <code>is_repeat</code> - Атрибут is_repeat таблицы vehicle_service_tasks<br>- <code>is_unplanned</code> - Атрибут is_unplanned таблицы vehicle_service_tasks<br>- <code>комментарий</code> - Атрибут comment таблицы vehicle_service_tasks</td></tr><tr><td><strong>Содержимое</strong></td><td>Поддерживает три типа триггеров: по дате, по Пробег, по моточасам двигателя; настройки уведомлений для email, SMS, push</td></tr><tr><td><strong>Особые примечания</strong></td><td><code>is_repeat</code> а поля интервала позволяют задавать повторяющиеся графики Техобслуживание; <code>is_unplanned</code> различает плановое и реактивное техобслуживание</td></tr></tbody></table>

</details>

Местоположение и маршрутизация

<details>

<summary><strong><code>зоны</code></strong></summary>

**Описание**: Зоны геозон, определяющие виртуальные периметры с использованием кругов или полигонов для мониторинга событий въезда и выезда транспортного средства/Актив, поддерживающие автоматизацию на основе правил и аналитику местоположения с цветовым кодированием для визуального различения

<table><thead><tr><th width="150">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>zone_id</code> - Идентификатор сущности геозоны<br>- <code>client_id</code> - Идентификатор сущности клиента<br>- <code>zone_label</code> - Атрибут zone_label таблицы zones<br>- <code>zone_type</code> - Атрибут zone_type таблицы zones<br>- <code>широта</code> - Необязательный объект, ограничивающая рамка, которая может полностью содержать возвращаемый результат<br>- <code>долгота</code> - Необязательный объект, ограничивающая рамка, которая может полностью содержать возвращаемый результат<br>- <code>circle_center_latitude</code> - Атрибут circle_center_latitude таблицы zones<br>- <code>circle_center_longitude</code> - Атрибут circle_center_longitude таблицы zones<br>- <code>радиус</code> - Размер геолокации в метрах<br>- <code>address</code> - Атрибут address таблицы zones<br>- <code>color</code> - Атрибут color таблицы zones</td></tr><tr><td><strong>Содержимое</strong></td><td>Типы зон включают круг, полигон (определяемый через <code>geofence_points</code>), и специальные классификации зон</td></tr><tr><td><strong>Связи</strong></td><td>Используется в <code>rules2zones</code>, <code>users2zones</code>; вершины полигона хранятся в <code>geofence_points</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Функции PostGIS можно использовать для проверки point-in-polygon для сложного анализа Зона</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>Места</code></strong></summary>

**Описание** : Точки интереса с географическими координатами, определениями радиуса и поддержкой расширяемых пользовательских полей для хранения контактной информации клиентов и данных, специфичных для бизнеса, что позволяет интеграцию с CRM/ERP через external\_id и формирование отчетов на основе местоположения

<table><thead><tr><th width="129">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>place_id</code> - Идентификатор сущности Место<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>place_label</code> - Атрибут place_label таблицы places<br>- <code>широта</code> - Объект местоположения<br>- <code>долгота</code> - Объект местоположения<br>- <code>радиус</code> - Размер геолокации в метрах<br>- <code>address</code> - Атрибут address таблицы Места<br>- <code>описание</code> - атрибут description таблицы Места<br>- <code>external_id</code> - ID для интеграции с внешними системами (CRM)<br>- <code>custom_fields</code> - Дополнительные поля<br>- <code>assigned_datetime</code> - Дата и время назначения точки интереса пользователю</td></tr><tr><td><strong>Связи</strong></td><td>Расширен значениями пользовательских полей через <code>Места_text_fields</code>, <code>Места_десятичные_поля</code>, <code>places_bigint_fields</code>, <code>places_longtext_fields</code>, <code>places_linked_entity_fields</code></td></tr><tr><td><strong>Особые примечания</strong></td><td><code>custom_fields</code> JSONB обеспечивает быстрый доступ; связанные таблицы позволяют фильтровать и сортировать по пользовательским атрибутам</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>geofence_points</code></strong></summary>

**Описание**: Упорядоченные координаты вершин (поле number определяет последовательность), задающие границы полигона для сложных форм Зона, обеспечивающие точные географические периметры сверх простых круговых зон, используемые с PostGIS ST\_MakePolygon для геометрических операций

<table><thead><tr><th width="133">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>zone_id</code> - Идентификатор зоны, к которой прикреплена эта Форма<br>- <code>число</code> - Серийный номер<br>- <code>широта</code> - Местоположение<br>- <code>долгота</code> - Местоположение</td></tr><tr><td><strong>Связи</strong></td><td>Несколько записей на <code>zone_id</code> определяют границы полигона; <code>число</code> поле определяет порядок вершин</td></tr><tr><td><strong>Особые примечания</strong></td><td>Запрос с <code>ORDER BY number</code> для восстановления контура полигона; используйте с PostGIS ST_MakePolygon для геометрических операций</td></tr></tbody></table>

</details>

Управление заданиями и рабочими процессами

<details>

<summary><strong><code>Задания</code></strong></summary>

**Описание**: Назначения нарядов с проверкой местоположения (широта, долгота, радиус), временными окнами (time\_from, time\_to), требованиями к длительности визита (stay\_duration\_minutes, arrival\_duration\_minutes), иерархической структурой через parent\_task\_id и мониторингом статусов для системы «Управление сотрудниками» и операций доставки

<table><thead><tr><th width="130">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>task_id</code> - Идентификатор сущности Задание<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>parent_task_id</code> - Идентификатор сущности родительского задания<br>- <code>метка задания</code> - Атрибут task_label таблицы tasks<br>- <code>статус</code> - Значение статуса атрибута status<br>- <code>task_type</code> - Тип задания, задание, маршрут или контрольная точка<br>- <code>широта</code> - Атрибут latitude таблицы Задания<br>- <code>долгота</code> - Атрибут longitude таблицы заданий<br>- <code>радиус</code> - Размер геолокации в метрах<br>- <code>arrival_datetime</code> - Когда Трекер прибывает в область задания. ИГНОРИРУЕТСЯ при создании/обновлении<br>- <code>created_at</code> - Атрибут created_at таблицы заданий<br>- <code>status_change_datetime</code> - Дата и время обновления задания<br>- <code>time_from</code> - Дата и время, связанные с атрибутом time_from<br>- <code>time_to</code> - Дата и время, связанные с атрибутом time_to<br>- <code>stay_duration</code> - Атрибут stay_duration таблицы Задания<br>- <code>stay_duration_minutes</code> - Продолжительность визита. Время, которое мобильный сотрудник должен провести на месте Задание, чтобы успешно его выполнить. Несколько визитов суммируются<br>- <code>arrival_duration_minutes</code> - Игнорировать случайные визиты короче указанной продолжительности. При расчете минимальной продолжительности визиты короче указанной продолжительности будут игнорироваться<br>- <code>max_delay_minuts</code> - Допустимое опоздание. Максимальное время, на которое сотрудник может опоздать. Любое Задание, выполненное в течение этого времени, будет отмечено как "опоздавшее"<br>- <code>is_stay_control_enabled</code> - Атрибут is_stay_control_enabled таблицы Задания<br>- <code>address</code> - Атрибут address таблицы Задания<br>- <code>описание</code> - Атрибут Description таблицы Задания<br>- <code>custom_fields</code> - Атрибут custom_fields таблицы Задания<br>- <code>external_id</code> - Идентификатор внешней сущности<br>- <code>order_sort</code> - Атрибут order_sort таблицы Задания<br>- <code>created_by</code> - Источник созданного задания</td></tr><tr><td><strong>Содержимое</strong></td><td>Поддерживает иерархические задания через <code>parent_task_id</code>; временные интервалы, определенные <code>time_from</code>/<code>time_to</code>; проверка Зоны по местоположению и радиусу</td></tr><tr><td><strong>Связи</strong></td><td>Ссылки на <code>формы</code> (сбор данных), <code>task_history</code> (изменения статуса), <code>объекты</code> (назначенный Трекер)</td></tr><tr><td><strong>Особые примечания</strong></td><td><code>stay_duration</code> и <code>arrival_duration_minutes</code> включить мониторинг соответствия для заданий по доставке и обслуживанию</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>формы</code></strong></summary>

**Описание**: Настраиваемые формы сбора данных для фиксации структурированной информации при выполнении задания или в мобильном приложении Отметки, с полями и значениями, хранящимися в JSON, необязательной проверкой местоположения (is\_submission\_in\_zone) и обязательными требованиями к отправке, когда они прикреплены к заданиям

<table><thead><tr><th width="141">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>form_id</code> - идентификатор сущности Форма<br>- <code>task_id</code> - Идентификатор Задание, к которому прикреплена эта Форма<br>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>метка_формы</code> - Пользовательская метка Форма<br>- <code>поля</code> - Если true, форма может быть отправлена только в зоне задания<br>- <code>значения</code> - Словарь с идентификаторами полей в качестве ключей и объектами field_value в качестве значений. Ключ, используемый для связывания поля и соответствующего ему значения<br>- <code>submitted_at</code> - Дата последней отправки значений Форма<br>- <code>submission_latitude</code> - Место, в котором значения Форма были отправлены в последний раз<br>- <code>submission_longitude</code> - Место, в котором значения Форма были отправлены в последний раз<br>- <code>submission_address</code> - Место, в котором значения Форма были отправлены в последний раз<br>- <code>is_submission_in_zone</code> - Если true, форма может быть отправлена только в зоне задания<br>- <code>описание</code> - Дата, когда эта Форма была создана (или прикреплена к Задание)<br>- <code>created_at</code> - Дата, когда эта Форма была создана (или прикреплена к Задание)</td></tr><tr><td><strong>Содержимое</strong></td><td><code>поля</code> определяет структуру Форма (JSON); <code>значения</code> содержит отправленные данные (JSON)</td></tr><tr><td><strong>Связи</strong></td><td>Ссылки на <code>Задания</code> (связанный наряд-заказ), <code>объекты</code> (отправитель), упоминается в <code>чек-ины</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Флаг валидации местоположения <code>is_submission_in_zone</code> позволяет использовать правила отправки Формы на основе Зоны</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>чек-ины</code></strong></summary>

**Описание**: Записи посещаемости и активности на основе местоположения, отправляемые через мобильное приложение, с отслеживанием запланированного и фактического времени прибытия (planned\_datetime vs actual\_datetime) с географическими координатами и измерениями точности определения местоположения (radius) для отчетности по пунктуальности

<table><thead><tr><th width="129">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>checkin_id</code> - Идентификатор сущности отметки<br>- <code>employee_id</code> - Идентификатор сущности сотрудника также является идентификатором для Водителей<br>- <code>object_id</code> - Устройство сотрудника<br>- <code>form_id</code> - идентификатор сущности Форма<br>- <code>user_id</code> - Пользователь сотрудника<br>- <code>planned_datetime</code> - Время устройства, когда была выполнена отметка<br>- <code>actual_datetime</code> - Время сервера, когда запрос/сообщение было обработано<br>- <code>широта</code> - Местоположение, в котором были отправлены чекины<br>- <code>долгота</code> - Местоположение, в котором были отправлены чекины<br>- <code>радиус</code> - Погрешность определения положения в точке в метрах<br>- <code>address</code> - адрес отметки<br>- <code>комментарий</code> - Атрибут comment таблицы checkins</td></tr><tr><td><strong>Связи</strong></td><td>Связывает сотрудников с формами и локациями; отслеживает отклонение от запланированного графика</td></tr><tr><td><strong>Особые примечания</strong></td><td>Разница во времени между <code>planned_datetime</code> и <code>actual_datetime</code> позволяет формировать отчетность по пунктуальности; радиус определяет допустимую погрешность местоположения</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>task_history</code></strong></summary>

**Описание**: Полный аудитный след событий жизненного цикла задания, фиксирующий все изменения статуса, назначения, обновления и изменения полей с временными метками (event\_datetime), указанием пользователя и типами действий (create, update, assign, status\_change), хранящимися в поле payload для анализа соответствия требованиям и рабочих процессов

<table><thead><tr><th width="137">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>task_history_id</code> - Идентификатор сущности истории задания<br>- <code>task_id</code> - Идентификатор сущности Задание<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>activity</code> - Операция, которая произошла. Может быть "create", "update", "assign" или "status_change"<br>- <code>event_datetime</code> - Дата и время события<br>- <code>payload</code> - Зависит от операции. Обычно содержит поля, которые были изменены во время операции</td></tr><tr><td><strong>Содержимое</strong></td><td>Типы активности, определенные в <code>description_parameters</code>; <code>payload</code> содержит специфичные для события подробности (текст)</td></tr><tr><td><strong>Особые примечания</strong></td><td>Важно для анализа завершения задания, отчетности по переходам статусов и мониторинга активности пользователя</td></tr></tbody></table>

</details>

Правила и автоматизация

<details>

<summary><strong><code>правила</code></strong></summary>

**Описание**: правила обнаружения событий с настраиваемыми условиями срабатывания (превышение скорости, нарушения геозоны (Зона), пороги датчиков, время простоя), хранящиеся в параметрах (JSONB), и настройки многоканальных уведомлений (alert\_email, alert\_sms, alert\_phone, is\_push\_enabled) для автоматического мониторинга и оповещения на основе данных устройства и сервера

<table><thead><tr><th width="131">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>rule_id</code> - Идентификатор сущности правила<br>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>client_id</code> - Идентификатор сущности клиента<br>- <code>event_type</code> - Атрибут event_type таблицы rules<br>- <code>event_label</code> - атрибут event_label таблицы правил<br>- <code>event_group</code> - Атрибут event_group таблицы rules<br>- <code>описание</code> - атрибут Description таблицы правил<br>- <code>параметры</code> - Параметры события. Для более подробной информации о доступных параметрах см. <a href="https://www.navixy.com/docs/navixy-api/user-api/resources/tracking/tracker/rules/rule_types/">документация API Navixy</a>.<br>- <code>alert_email</code> - Электронная почта для уведомлений<br>- <code>alert_sms</code> - Номера телефонов для SMS-уведомлений<br>- <code>alert_phone</code> - Телефоны для голосовых вызовов<br>- <code>is_push_enabled</code> - Если true, доступны push-уведомления<br>- <code>created_at</code> - Атрибут created_at таблицы rules<br>- <code>is_deleted</code> - Атрибут is_deleted таблицы rules<br>- <code>максимум</code> - Ограничения, применяемые к различным правилам. Например, для правила времени холостого хода при работающем двигателе в минутах<br>- <code>event_comment1</code> - Атрибут event_comment1 таблицы rules<br>- <code>event_comment2</code> - Атрибут event_comment2 таблицы rules</td></tr><tr><td><strong>Содержимое</strong></td><td>Параметры правила (JSONB) определяют условия срабатывания; поддерживает email, SMS, телефонные звонки и push-уведомления</td></tr><tr><td><strong>Связи</strong></td><td>Ссылки на объекты через <code>rules2objects</code>, зоны через <code>rules2zones</code></td></tr><tr><td><strong>Особые примечания</strong></td><td><code>event_type</code> задает конкретный сценарий мониторинга (превышение скорости, нарушение Зоны, порог датчика); <code>максимум</code> поле включает агрегацию событий для оповещений на основе пороговых значений</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>rules2objects</code></strong></summary>

**Описание**: связь типа «многие ко многим», связывающая правила с отслеживаемыми единицами типа «Объект», с настройкой параметров для каждой единицы через object\_params (JSONB), что позволяет задавать разные пороговые значения (например, ограничения скорости) для каждого транспортного средства или единицы типа «Актив» в рамках одного правила

<table><thead><tr><th width="140">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>rule_id</code> - Идентификатор сущности правила<br>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>param_group_number</code> - Атрибут param_group_number таблицы rules2objects<br>- <code>object_params</code> - Атрибут object_params таблицы rules2objects</td></tr><tr><td><strong>Содержимое</strong></td><td><code>object_params</code> (JSONB) позволяет настраивать правила для каждого Объект (например, разные ограничения скорости для каждого транспортного средства)</td></tr><tr><td><strong>Особые примечания</strong></td><td>Отношение многие ко многим позволяет одному правилу отслеживать несколько объектов с разными параметрами</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>rules2zones</code></strong></summary>

**Описание**: Связь многие-ко-многим, связывающая правила с геозонами, позволяющая одному правилу отслеживать события въезда/выезда в нескольких географических областях для сложных сценариев пространственного мониторинга

<table><thead><tr><th width="144">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>rule_id</code> - Идентификатор сущности правила<br>- <code>zone_id</code> - Идентификатор сущности зоны</td></tr><tr><td><strong>Особые примечания</strong></td><td>Связь многие-ко-многим позволяет выполнять многозонный мониторинг для одного правила (например, оповещение при въезде в любую из нескольких ограниченных зон)</td></tr></tbody></table>

</details>

Статус и категоризация

<details>

<summary><strong><code>статусы</code></strong></summary>

**Описание**: Пользовательские определения статусов в списках статусов, включая свойства отображения (color для отображения на сайте, order\_sort для позиционирования), используемые для представления состояний работы устройства или сотрудника с поддержкой мягкого удаления через флаг is\_deleted

<table><thead><tr><th width="128">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>status_id</code> - Статус идентификатора сущности<br>- <code>listing_id</code> - Идентификатор сущности listing<br>- <code>status_label</code> - Значение статуса атрибута status_label<br>- <code>color</code> - Цвет, используемый для отображения на веб-сайте<br>- <code>order_sort</code> - Позиция сортировки в статусе listing<br>- <code>is_deleted</code> - Атрибут is_deleted таблицы statuses</td></tr><tr><td><strong>Связи</strong></td><td>Группы статусов, организованные по <code>listing_id</code> (ссылки <code>status_listings</code>); используется в <code>status_history</code></td></tr><tr><td><strong>Особые примечания</strong></td><td><code>order_sort</code> задает порядок отображения; цвет обеспечивает визуальное различение в отчетах</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>status_listings</code></strong></summary>

**Описание**: Определения набора статусов, которые управляют тем, какие значения статуса доступны для устройств или сотрудников, а флаги разрешений (is\_supervisor\_controlled, is\_employee\_controlled) определяют, могут ли руководители, сотрудники или и те и другие изменять значения статуса

<table><thead><tr><th width="144">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>status_listing_id</code> - Идентификатор сущности списка статусов<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>status_listing_label</code> - Значение статуса атрибута status_listing_label<br>- <code>is_supervisor_controlled</code> - Если true, руководители могут изменять рабочий статус, например с помощью мобильного приложения мониторинга<br>- <code>is_employee_controlled</code> - Если true сотрудники могут менять свой собственный рабочий статус, например используя мобильное приложение для Мониторинг<br>- <code>is_deleted</code> - Атрибут is_deleted таблицы status_listings</td></tr><tr><td><strong>Связи</strong></td><td>Используется в <code>devices.status_listing_id</code> и <code>statuses.listing_id</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Флаги управления определяют, кто может менять статусы: только руководитель, самостоятельное изменение сотрудником или оба варианта</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>status_history</code></strong></summary>

**Описание**: Журнал аудита всех переходов статуса работы устройств с временными метками (changed\_datetime на устройстве, server\_datetime на сервере), указанием пользователя (updated\_by) и фиксацией местоположения (latitude, longitude, address), что позволяет проводить географический анализ изменений статуса и формировать отчеты о месте начала/окончания рабочего дня

<table><thead><tr><th width="143">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>status_history_id</code> - Идентификатор сущности истории статусов<br>- <code>device_id</code> - Идентификатор сущности устройства<br>- <code>old_status_id</code> - Идентификатор старого статуса сущности<br>- <code>new_status_id</code> - Идентификатор нового статуса сущности<br>- <code>updated_by</code> - Дата и время, связанные с атрибутом updated_by<br>- <code>changed_datetime</code> - Дата и время присвоения нового статуса на устройстве<br>- <code>server_datetime</code> - Дата и время присвоения нового серверного статуса<br>- <code>широта</code> - Определение местоположения устройств при смене статусов<br>- <code>долгота</code> - Определение местоположения устройств при смене статусов<br>- <code>address</code> - Поиск устройств во время смены статуса</td></tr><tr><td><strong>Связи</strong></td><td>Ссылки на <code>устройства</code>, <code>статусы</code> (старые и новые), <code>description_parameters</code> (для <code>updated_by</code> Роль)</td></tr><tr><td><strong>Особые примечания</strong></td><td>Сбор местоположения позволяет выполнять географический анализ переходов статусов; полезно для отчетности по местоположению начала и окончания рабочего дня</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>Теги</code></strong></summary>

**Описание**Пользовательские метки категоризации с цветовым кодированием, которые позволяют быстро фильтровать и искать по нескольким типам сущностей (Места, геозоны, сотрудники, Задания, трекеры, Транспорт) для гибкой организации

<table><thead><tr><th width="149">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>tag_id</code> - Тег ID сущности<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>Тег_label</code> - Атрибут tag_label таблицы tags<br>- <code>color</code> - Атрибут color таблицы Теги</td></tr><tr><td><strong>Связи</strong></td><td>Применяется к объектам через <code>tag_links</code>; область, заданная пользователем</td></tr><tr><td><strong>Особые примечания</strong></td><td>Гибкая система категоризации с поддержкой нескольких Теги для каждой сущности</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>tag_links</code></strong></summary>

**Описание**: Таблица полиморфной связи, ассоциирующая теги с любым типом сущности через entity\_type и entity\_id, с полем ordinal для управления порядком отображения, обеспечивающая гибкую маркировку нескольких сущностей

<table><thead><tr><th width="127">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>tag_id</code> - Тег ID сущности<br>- <code>entity_type</code> - Атрибут entity_type таблицы tag_links<br>- <code>entity_id</code> - Идентификатор сущности<br>- <code>порядковый</code> - Порядковый атрибут таблицы tag_links</td></tr><tr><td><strong>Содержимое</strong></td><td><code>entity_type</code> идентифицирует таблицу (vehicle, employee, Задание и т.д.); <code>порядковый</code> определяет порядок отображения</td></tr><tr><td><strong>Особые примечания</strong></td><td>Полиморфная связь позволяет назначать теги различным типам сущностей</td></tr></tbody></table>

</details>

Группы и иерархия

<details>

<summary><strong><code>группы</code></strong></summary>

**Описание**: Структура организационной группировки трекеров, обеспечивающая визуальную организацию в пользовательском интерфейсе с настраиваемыми цветами (group\_color) и иерархическим управлением в виде папок, в настоящее время выполняющая исключительно визуальную функцию

<table><thead><tr><th width="148">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>group_id</code> - Группа Трекер (связана через objects.group_id). Разделение на группы можно увидеть, например, в списке трекеров<br>- <code>client_id</code> - Идентификатор сущности клиента<br>- <code>group_label</code> - Название Группа, заданное пользователем, от 1 до 60 печатных символов, например "Employees"<br>- <code>group_color</code> - Цвет Группа в веб-формате (без #), например "FF6DDC". Определяет цвет маркеров Трекер на карте</td></tr><tr><td><strong>Связи</strong></td><td>Используется в <code>objects.group_id</code>; владение клиентом через <code>client_id</code> (ссылки <code>пользователи</code>)</td></tr><tr><td><strong>Особые примечания</strong></td><td>Позволяет организовывать объекты мониторинга по типу папок для отчетности и прав доступа</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>groups_objects</code></strong></summary>

**Описание**: Связь многие-ко-многим между группами и объектами с использованием составного первичного ключа (groups\_client\_id, objects\_client\_id), позволяющая объектам одновременно принадлежать нескольким группам для гибких организационных структур

<table><thead><tr><th width="135">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>groups_client_id</code> - Идентификатор сущности клиента для групп<br>- <code>objects_client_id</code> - Идентификатор сущности клиента для объектов</td></tr><tr><td><strong>Особые примечания</strong></td><td>Позволяет объектам одновременно принадлежать нескольким группам; запрос с обоими <code>client_id</code> значения для членства в Группа</td></tr></tbody></table>

</details>

Настраиваемые поля и сущности

<details>

<summary><strong><code>сущности</code></strong></summary>

**Описание**: реестр типов сущностей, определяющий, какие бизнес-сущности поддерживают настраиваемые поля и структуру их расположения полей (sections, field\_order), хранящуюся в entity\_label (JSONB), обеспечивая динамическое расширение схемы для Места, Задания и других сущностей без изменений в базе данных

<table><thead><tr><th width="141">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>entity_id</code> - Идентификатор сущности<br>- <code>user_id</code> - Идентификатор сущности пользователя<br>- <code>entity_label</code> - id - int. Идентификатор сущности. type - enum. В настоящее время поддерживается только "place". layout - object описывает структуру полей сущности. sections - array of objects. Каждый раздел может содержать одно или несколько полей. В структуре должен быть как минимум один раздел. label - string. Название раздела. field_order - string array. Встроенные поля и идентификаторы Настраиваемые поля (в виде строк)<br>- <code>builtin_type</code> - Атрибут builtin_type таблицы entities</td></tr><tr><td><strong>Связи</strong></td><td>Используется в <code>custom_fields</code> чтобы определить, какие Настраиваемые поля применяются к каким типам сущностей</td></tr><tr><td><strong>Особые примечания</strong></td><td><code>builtin_type</code> ссылается на <code>description_parameters</code> для системных классификаций сущностей</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>custom_fields</code></strong></summary>

**Описание**: Определения пользовательских полей, обеспечивающие динамическое расширение схемы для типов сущностей, с настраиваемыми типами полей (custom\_field\_type), правилами проверки и параметрами в parameters (JSONB), а также флагами обязательности (is\_required) для гибкого сбора данных, включая Места, Задания и другие сущности

<table><thead><tr><th width="146">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>custom_field_id</code> - Идентификатор сущности настраиваемых полей<br>- <code>entity_id</code> - Идентификатор сущности<br>- <code>custom_field_label</code> - Имя поля<br>- <code>custom_field_type</code> - Тип данных в поле<br>- <code>описание</code> - Описание поля<br>- <code>is_required</code> - Обязательное это поле или нет?<br>- <code>параметры</code> - Параметры поля</td></tr><tr><td><strong>Содержимое</strong></td><td><code>параметры</code> (JSONB) хранит конфигурацию, специфичную для типа поля (правила валидации, варианты выпадающего списка и т. д.)</td></tr><tr><td><strong>Связи</strong></td><td>Определяет доступные пользовательские атрибуты для объектов; тип поля связан с <code>description_parameters</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Позволяет динамически расширять схему без изменений базы данных; широко используется в <code>Места</code> и <code>Задания</code></td></tr></tbody></table>

</details>

Исторический мониторинг

<details>

<summary><strong><code>история_водителя</code></strong></summary>

**Описание**: Полный журнал аудита назначений сотрудников на транспортные средства с течением времени, отслеживающий переходы old\_employee\_id в new\_employee\_id с временными метками (changed\_datetime, server\_datetime), данными о местоположении (latitude, longitude, address), сведениями об аппаратном ключе и атрибуцией пользователя (updated\_by), что позволяет выполнять аналитику, специфичную для водителей, когда водители переключаются между транспортными средствами

<table><thead><tr><th width="146">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>driver_history_id</code> - Идентификатор сущности истории Водитель<br>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>old_employee_id</code> - Старый идентификатор сущности сотрудника<br>- <code>new_employee_id</code> - Идентификатор новой сущности сотрудника<br>- <code>hardware_key</code> - Атрибут hardware_key таблицы driver_history<br>- <code>changed_datetime</code> - Дата и время на устройстве были изменены<br>- <code>server_datetime</code> - Дата и время изменений, внесенных на сервере<br>- <code>updated_by</code> - Дата и время, связанные с атрибутом updated_by<br>- <code>широта</code> - Атрибут широты таблицы driver_history<br>- <code>долгота</code> - Атрибут долготы таблицы driver_history<br>- <code>address</code> - Атрибут address таблицы driver_history</td></tr><tr><td><strong>Связи</strong></td><td>Отслеживает назначения Водитель на Транспорт со временем; ссылки на <code>сотрудники</code> и <code>объекты</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Необходимо для отчетности, специфичной для Водителя, когда Водители меняют Транспорт; сбор местоположения позволяет анализировать смену назначения по местоположению</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>vehicle_trackers_history</code></strong></summary>

**Описание**: Журнал аудита с мониторингом того, какие GPS-устройства (object\_id) устанавливались в каких записях раздела Транспорт (vehicle\_id) с течением времени, с указанием временных меток изменений (changed\_datetime). Это позволяет точно соотносить исторические данные и рассчитывать пробег при перемещении трекеров между транспортными средствами

<table><thead><tr><th width="144">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>vehicle_tracker_history_id</code> - Идентификатор сущности истории Трекер транспортного средства<br>- <code>vehicle_id</code> - Идентификатор сущности транспортного средства<br>- <code>object_id</code> - Объект идентификатора сущности<br>- <code>changed_datetime</code> - Дата и время, связанные с атрибутом changed_datetime</td></tr><tr><td><strong>Связи</strong></td><td>Отслеживает, какое GPS-устройство было установлено в каком транспортном средстве с течением времени</td></tr><tr><td><strong>Особые примечания</strong></td><td>Критично для анализа исторических данных при перемещении трекеров между Транспорт; обеспечивает точное распределение Пробег и использования</td></tr></tbody></table>

</details>

Справочные и поисковые данные

<details>

<summary><strong><code>description_parameters</code></strong></summary>

**Описание**: Справочные данные на уровне всей системы, содержащие понятные человеку обозначения (description) для перечисляемых целочисленных значений (key), используемых в базе данных и сгруппированных по полю типа (например, task\_status, fuel\_type, counter\_type, entity\_classification) для согласованного преобразования значений в отчетах и интерфейсе

<table><thead><tr><th width="146">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>ключ</code> - Возможное значение в атрибуте<br>- <code>тип</code> - Составной атрибут, состоящий из имени таблицы, за которым следует символ подчеркивания, и имени атрибута в таблице<br>- <code>описание</code> - Неявное значение атрибута</td></tr><tr><td><strong>Содержимое</strong></td><td>Предоставляет понятные для человека метки для закодированных значений по всей базе данных (статус задания, типы топлива, типы счетчиков и т. д.)</td></tr><tr><td><strong>Связи</strong></td><td>На него ссылаются через внешние ключи из нескольких таблиц для стандартизированной категоризации</td></tr><tr><td><strong>Особые примечания</strong></td><td>Необходимо для преобразования целочисленных кодов в читаемые значения в отчетности; <code>тип</code> связанные с группами полей перечисления</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>счетчики</code></strong></summary>

**Описание**: конфигурации Одометра и счетчика моточасов, связывающие показания датчика устройства (sensor\_id) с измерениями расстояния или времени с коэффициентами умножения для преобразования единиц (km, miles, hours) и counter\_type из description\_parameters, определяющим тип измерения

<table><thead><tr><th width="140">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>counter_id</code> - Внутренний ID<br>- <code>device_id</code> - Идентификатор сущности устройства<br>- <code>counter_type</code> - Тип счетчика<br>- <code>sensor_id</code> - Идентификатор сущности датчика<br>- <code>multiplier</code> - Коэффициент для преобразования значений в одну из метрик (km, l и т. д.)</td></tr><tr><td><strong>Связи</strong></td><td>Связывает устройства с показаниями датчиков, которые представляют счетчики расстояния или времени</td></tr><tr><td><strong>Особые примечания</strong></td><td><code>multiplier</code> преобразует импульсы датчика в фактические единицы (km, miles, hours); <code>counter_type</code> из <code>description_parameters</code> определяет тип измерения</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>device_output_name</code></strong></summary>

**Описание**: Пользовательские метки для каналов вывода устройства, сопоставляющие числовые идентификаторы выходов (number) с заданными пользователем именами (label), такими как "Замок двери" или "Блокировка двигателя", для удобочитаемой отчетности и анализа Команды и состояний вывода устройства

<table><thead><tr><th width="140">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>device_id</code> - Идентификатор сущности устройства<br>- <code>число</code> - Атрибут number таблицы device_output_name<br>- <code>label</code> - Атрибут label таблицы device_output_name</td></tr><tr><td><strong>Содержимое</strong></td><td>Сопоставляет номера каналов вывода с заданными пользователем именами (например, "Замок двери", "Блокировка двигателя")</td></tr><tr><td><strong>Особые примечания</strong></td><td>Обеспечивает удобочитаемую отчетность при анализе Команды и состояний вывода устройства</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>device_settings</code></strong></summary>

**Описание**: пары ключ-значение конфигурации устройства, синхронизированные с исходной платформы. В каждой строке хранится одна настройка конфигурации для конкретного устройства.

<table><thead><tr><th width="140">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>device_id</code> - Идентификатор сущности устройства<br>- <code>ключ</code> - Название настройки<br>- <code>value</code> - Значение настройки</td></tr><tr><td><strong>Первичный ключ</strong></td><td>Составной: <code>(device_id, key)</code></td></tr><tr><td><strong>Особые примечания</strong></td><td>Заполняется во время полной синхронизации клиента. Используйте эту таблицу, чтобы читать значения конфигурации на уровне устройства вместе с телематическими или бизнес-данными.</td></tr></tbody></table>

</details>

<details>

<summary><strong><code>event_description</code></strong></summary>

**Описание**Справочная таблица кодов событий Трекер с человекочитаемыми описаниями. Содержит 134 записи, охватывающие распространенные события Трекер, такие как SOS, Режим сна, Зажигание и изменения цифровых входов/выходов.

<table><thead><tr><th width="140">Атрибут</th><th>Описание</th></tr></thead><tbody><tr><td><strong>Ключевые поля</strong></td><td>- <code>event_id</code> - Код события (первичный ключ)<br>- <code>описание</code> - Читаемое человеком название события</td></tr><tr><td><strong>Особые примечания</strong></td><td>Присоединиться к <code>raw_telematics_data.tracking_data_core</code> включено <code>event_id</code> для отображения названий событий в Отчетах и на панелях мониторинга вместо числовых кодов.</td></tr></tbody></table>

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://navixy.com/docs/analytics/ru/iot-query/schema-overview/bronze-layer/raw-business-data.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
