Домен ЭНТС
Обзор домена ЭНТС: транспортные средства, расчёт нормативного расхода топлива, организационная структура и справочники.
1. Назначение
Домен модуля ЭНТС: Транспортное средство (данные АИС ОИА ПЭО и характеристики, вводимые в модуле), Расчёт ТС — расчёт нормативного расхода топлива, организационная структура и справочники.
Организационная структура — своя локальная копия ЭНТС (Организационный объект и уровни компания → МЭС → ПМЭС), а не общая общая структура ОПЭС. Общий ключ орг. объекта и зимней надбавки — справочник субъектов РФ Субъект РФ.
2. Границы
Транспортное средство — данные АИС и данные модуля. Импорт обновляет у Транспортное средство только атрибуты, для которых есть карта АИС; марка, модель, модификация, условия эксплуатации, параметры методики и статус обработки импортом не затрагиваются. ТС, которого нет в выгрузке, не удаляется — у него выставляется признак отсутствия в АИС. Результаты, статус расчёта и журнал — собственность модуля, поэтому вынесены в отдельную сущность Расчёт ТС.
Нормы и методика — в справочнике и бэкенде. Базовая норма берётся из справочника
Марка, модель и модификация ТС; порядок расчёта описан в методике
(разделы fuel.*) и в домене не дублируется.
3. Состав
3.1. Транспортное средство и расчёт
- Транспортное средство — данные АИС и характеристики, вводимые в модуле;
- Расчёт ТС — расчёт ТС: результаты, статус и журнал;
- Отобранные модификации ТС — отобранные для расчёта модификации ТС (связь «расчёт → модификация»).
3.2. Организационная структура и субъекты
- Организационный объект, Тип организационного объекта, Компания, МЭС, ПМЭС — организационная структура (локальная копия ЭНТС);
- Субъект РФ — субъект РФ;
- Предельные значения зимних надбавок — предельные значения зимних надбавок по субъекту.
3.3. Импорт данных из АИС
- Запуск импорта из АИС — история запусков приёма данных: пакетных и по одному ТС;
- Статус запуска импорта — статусы запусков.
3.4. Справочники
- Марка ТС, Алиас марки ТС, Модель ТС, Марка, модель и модификация ТС — марки, алиасы марок, модели и модификации ТС (нормы);
- Вид ТС, Вид автомобильного топлива, Назначение ТС — виды ТС, виды топлива и назначения ТС (заимствованы из АИС);
- Статус расчёта — статусы расчёта;
- Статус обработки ТС — итоговые статусы обработки ТС;
- Статус загрузки — достаточность данных из АИС для расчёта;
- Статус подбора модификации — статусы подбора модификации;
- Способ подбора — способы подбора.
Диаграмма модели данных
classDiagram
direction LR
class NavCompany {
+Guid id
+Guid ais_id
+String name
}
class NavEntity {
+Guid id
+Guid ais_id
+String name
+Guid parent_id
+NavType nav_type_id
+String nav_type_eid
+NavCompany company_id
+NavMes mes_id
+NavPmes pmes_id
+String region
+String city
+Subject subject_id
}
class NavMes {
+Guid id
+Guid ais_id
+String name
+NavCompany company_id
}
class NavPmes {
+Guid id
+Guid ais_id
+String name
+NavMes mes_id
}
class NavType {
+Guid id
+String code
+String ais_alias
+String name
}
class NtsImportRun {
+Guid id
+String source
+NavEntity nav_id
+Vehicle vehicle_id
+NtsImportRunStatus status_id
+String result_json
+String errors_json
+DateTime finished_date
}
class NtsAisLoadStatus {
+Guid id
+String name
+String code
}
class CalculationStatus {
+Guid id
+String name
+String code
}
class FuelKind {
+Guid id
+Guid ais_id
+String name
+String code
}
class NtsImportRunStatus {
+Guid id
+String name
+String code
}
class NtsModificationSelectionStatus {
+Guid id
+String name
+String code
}
class ProcessingStatus {
+Guid id
+String name
+String code
}
class NtsSelectionMethod {
+Guid id
+String name
+String code
}
class Subject {
+Guid id
+String code
+String name
}
class VehicleFunction {
+Guid id
+Guid ais_id
+String name
+String code
}
class VehicleKind {
+Guid id
+Guid ais_id
+String name
+String code
}
class VehicleMark {
+Guid id
+String name
}
class VehicleMarkAlias {
+Guid id
+String alias
+VehicleMark vehicle_mark_id
}
class VehicleModel {
+Guid id
+String code
+String name
+VehicleMark vehicle_mark_id
}
class VehicleModification {
+Guid id
+String full_modification
+VehicleModel vehicle_model_id
+String modifications
+VehicleKind vehicle_kind_id
+FuelKind fuel_kind_id
+Decimal norm_per_mileage_l_100km
+Decimal transport_norm_l_100km
+Decimal norm_equipment_l_h
+Decimal norm_special_units_l_min
+Decimal norm_stationary_no_load_l_min
+Decimal norm_bitumen_pump_l_h
+Decimal norm_cistern_heater_l_h
+Decimal norm_tar_gun_l_h
+Decimal norm_container_load_unload_l
+Decimal norm_cistern_fill_drain_l
+Decimal norm_cistern_load_blow_l
}
class WinterAllowance {
+Guid id
+Subject subject_id
+Decimal months
+String period
+Decimal limit_percent
}
class SelectedModifications {
+Guid id
+VehicleCalc vehicle_calc_id
+VehicleModification vehicle_modification_id
}
class Vehicle {
+Guid id
+Guid ais_id
+Boolean is_absent_in_ais
+NavEntity org_object_id
+String name
+String license_plate
+String model_name
+String model_name_special
+Int32 manufacture_year
+VehicleKind vehicle_kind_id
+VehicleMark vehicle_mark_id
+VehicleModel vehicle_model_id
+VehicleModification vehicle_modification_id
+String passport_type_name
+VehicleFunction vehicle_function_id
+FuelKind fuel_kind_primary_id
+FuelKind fuel_kind_secondary_id
+Decimal norm_per_mileage_summer_l_per_100km
+Decimal norm_per_mileage_winter_l_per_100km
+Decimal norm_per_hour_summer_l_per_h
+Decimal norm_per_hour_winter_l_per_h
+Decimal cargo_capacity
+Int32 passenger_capacity
+Decimal trailer_mass
+DateTime start_date
+DateTime finish_date
+Decimal consumption_rate_when_using_heater
+Decimal time_when_using_heater
+Decimal dump_truck_transport_work_consumption_rate
+Int32 trips_with_cargo_per_shift
+Decimal population_allowance
+Decimal tech_stop_allowance
+Decimal low_speed_allowance
+Decimal special_vehicle_allowance
+Decimal emergency_allowance
+Decimal forced_idle_allowance
}
class VehicleCalc {
+Guid id
+Vehicle vehicle_id
+Decimal base_consumption_rate
+Decimal min_base_consumption_rate
+Decimal max_base_consumption_rate
+Decimal reference_norm_consumption
+Decimal reference_consumption_rate
+Decimal mileage
+Decimal correction_factor_winter
+Decimal correction_factor_summer
+Decimal suburb_coefficient
+Decimal norm_consumption_winter
+Decimal norm_consumption_summer
+Decimal norm_consumption_urban
+Decimal norm_consumption_suburban
+Decimal norm_consumption
+Decimal norm_consumption_by_using_heater
+Decimal norm_consumption_mileage
+Decimal cargo_mass
+Decimal cargo_mileage
+Decimal transport_work
+Decimal transport_work_consumption_rate
+Decimal trailer_mass_consumption_rate
+Decimal norm_consumption_by_transport_work
+Decimal norm_consumption_by_trailer_mass
+Decimal dump_truck_consumption_rate
+Decimal norm_consumption_by_trips
+Decimal consumption_rate_for_special_equipment
+Decimal special_vehicle_consumption_rate
+Decimal special_work_consumption_rate
+Decimal special_mileage_to_work
+Decimal special_mileage_on_work
+Decimal special_equipment_time
+Decimal norm_consumption_move_winter
+Decimal norm_consumption_move_summer
+Decimal norm_consumption_move_urban
+Decimal norm_consumption_move_suburban
+Decimal norm_consumption_move
+Decimal norm_consumption_stop_winter
+Decimal norm_consumption_stop_summer
+Decimal norm_consumption_stop_urban
+Decimal norm_consumption_stop_suburban
+Decimal norm_consumption_stop
+CalculationStatus calculation_status_id
+NtsModificationSelectionStatus modification_selection_status_id
+NtsSelectionMethod selection_method_id
+String calc_log_json
+String calc_errors_json
+DateTime calc_date
+NtsAisLoadStatus ais_load_status_id
+ProcessingStatus processing_status_id
}
class VehicleSummaryStatistics {
+NavEntity org_object_id
+Int32 total_count
}
class VehicleProcessingStatusCount {
+ProcessingStatus processing_status_id
+Int32 count
}
class VehicleFuelConsumptionSummary {
+FuelKind fuel_kind_id
+Int32 vehicle_count
+Decimal norm_consumption_sum
+Decimal norm_consumption_max
+Decimal norm_consumption_min
+Decimal norm_consumption_avg
+Decimal actual_consumption
}
NavEntity "1" --> "1" NavType : nav_type_id
NavEntity "0..1" --> "1" NavCompany : company_id
NavEntity "0..1" --> "1" NavMes : mes_id
NavEntity "0..1" --> "1" NavPmes : pmes_id
NavEntity "0..1" --> "1" Subject : subject_id
NavMes "1" --> "1" NavCompany : company_id
NavPmes "1" --> "1" NavMes : mes_id
NtsImportRun "1" --> "1" NavEntity : nav_id
NtsImportRun "0..1" --> "1" Vehicle : vehicle_id
NtsImportRun "1" --> "1" NtsImportRunStatus : status_id
VehicleMarkAlias "1" --> "1" VehicleMark : vehicle_mark_id
VehicleModel "1" --> "1" VehicleMark : vehicle_mark_id
VehicleModification "1" --> "1" VehicleModel : vehicle_model_id
VehicleModification "1" --> "1" VehicleKind : vehicle_kind_id
VehicleModification "0..1" --> "1" FuelKind : fuel_kind_id
WinterAllowance "1" --> "1" Subject : subject_id
SelectedModifications "1" --> "1" VehicleCalc : vehicle_calc_id
SelectedModifications "1" --> "1" VehicleModification : vehicle_modification_id
Vehicle "1" --> "1" NavEntity : org_object_id
Vehicle "0..1" --> "1" VehicleKind : vehicle_kind_id
Vehicle "0..1" --> "1" VehicleMark : vehicle_mark_id
Vehicle "0..1" --> "1" VehicleModel : vehicle_model_id
Vehicle "0..1" --> "1" VehicleModification : vehicle_modification_id
Vehicle "0..1" --> "1" VehicleFunction : vehicle_function_id
Vehicle "0..1" --> "1" FuelKind : fuel_kind_primary_id
Vehicle "0..1" --> "1" FuelKind : fuel_kind_secondary_id
VehicleCalc "1" --> "1" Vehicle : vehicle_id
VehicleCalc "1" --> "1" CalculationStatus : calculation_status_id
VehicleCalc "1" --> "1" NtsModificationSelectionStatus : modification_selection_status_id
VehicleCalc "1" --> "1" NtsSelectionMethod : selection_method_id
VehicleCalc "1" --> "1" NtsAisLoadStatus : ais_load_status_id
VehicleCalc "1" --> "1" ProcessingStatus : processing_status_id
VehicleSummaryStatistics "0..1" --> "1" NavEntity : org_object_id
VehicleProcessingStatusCount "1" --> "1" ProcessingStatus : processing_status_id
VehicleFuelConsumptionSummary "1" --> "1" FuelKind : fuel_kind_id
Документы контекста
Доменные артефакты
| сущность | Статус | Версия |
|---|---|---|
| Алиас марки ТС | draft | 0.1 |
| Вид автомобильного топлива | draft | 0.1 |
| Вид ТС | draft | 0.1 |
| Запуск импорта из АИС | draft | 0.1 |
| Количество ТС по статусу обработки | draft | 0.1 |
| Компания | draft | 0.1 |
| Марка ТС | draft | 0.1 |
| Марка, модель и модификация ТС | draft | 0.1 |
| Модель ТС | draft | 0.1 |
| МЭС | draft | 0.1 |
| Назначение ТС | draft | 0.1 |
| Организационный объект | draft | 0.1 |
| Отобранные модификации ТС | draft | 0.1 |
| ПМЭС | draft | 0.1 |
| Потребление топлива по виду топлива | draft | 0.1 |
| Предельные значения зимних надбавок | draft | 0.2 |
| Расчёт ТС | draft | 0.1 |
| Сводная статистика ТС | draft | 0.1 |
| Способ подбора | draft | 0.2 |
| Статус загрузки | draft | 0.1 |
| Статус запуска импорта | draft | 0.1 |
| Статус обработки ТС | draft | 0.1 |
| Статус подбора модификации | draft | 0.1 |
| Статус расчёта | draft | 0.2 |
| Субъект РФ | draft | 0.1 |
| Тип организационного объекта | draft | 0.1 |
| Транспортное средство | draft | 0.2 |
Структурные связи
Использует
- Доменная сущность Алиас марки ТС
- Доменная сущность Запуск импорта из АИС
- Доменная сущность Организационный объект
- Доменная сущность Отобранные модификации ТС
- Доменная сущность Расчёт ТС
- Доменная сущность Способ подбора
- Доменная сущность Статус загрузки
- Доменная сущность Статус запуска импорта
- Доменная сущность Статус обработки ТС
- Доменная сущность Статус подбора модификации
- Доменная сущность Статус расчёта
- Доменная сущность Субъект РФ
- Доменная сущность Транспортное средство
Используется
Связанные артефакты
Документы
- Доменная сущность Алиас марки ТС
- Доменная сущность Вид автомобильного топлива
- Доменная сущность Вид ТС
- Доменная сущность Запуск импорта из АИС
- Доменная сущность Компания
- Доменная сущность Марка ТС
- Доменная сущность Марка, модель и модификация ТС
- Доменная сущность Модель ТС
- Доменная сущность МЭС
- Доменная сущность Назначение ТС
- Доменная сущность Организационный объект
- Доменная сущность Отобранные модификации ТС
- Доменная сущность ПМЭС
- Доменная сущность Предельные значения зимних надбавок
- Доменная сущность Расчёт ТС
- Доменная сущность Способ подбора
- Доменная сущность Статус загрузки
- Доменная сущность Статус запуска импорта
- Доменная сущность Статус обработки ТС
- Доменная сущность Статус подбора модификации
- Доменная сущность Статус расчёта
- Доменная сущность Субъект РФ
- Доменная сущность Тип организационного объекта
- Доменная сущность Транспортное средство