klg-asutk-app/docs/ВНЕСЕННЫЕ_ИЗМЕНЕНИЯ.md
Yuriy 0150aba4f5 Consolidation: KLG ASUTK + PAPA integration
- Unify API: lib/api.ts uses /api/v1, inbox uses /api/inbox (rewrites)
- Remove localhost refs: openapi, inbox page
- Add rewrites: /api/inbox|tmc -> inbox-server, /api/v1 -> FastAPI
- Add stub routes: knowledge/insights, recommendations, search, log-error
- Transfer from PAPA: prompts (inspection, tmc), scripts, supabase, data/tmc-requests
- Fix inbox-server: ORDER BY created_at, package.json
- Remove redundant app/api/inbox/files route (rewrites handle it)
- knowledge/ in gitignore (large PDFs)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-08 17:18:31 +03:00

9.8 KiB
Raw Permalink Blame History

Внесенные изменения согласно детальному анализу

Дата: 2024

Обзор

Внесены изменения в проект согласно детальному анализу требований ИКАО Annex 8 и лучших практик индустрии для систем управления лётной годностью.


1. Модели данных

1.1. Расширена модель Aircraft

Файл: backend/app/models/aircraft.py

Добавленные поля:

  • serial_number (String) - Серийный номер ВС
  • manufacture_date (DateTime) - Дата производства
  • first_flight_date (DateTime) - Дата первого полета
  • total_time (Float) - Общий налет (TTSN - Total Time Since New) в часах
  • total_cycles (Integer) - Общее количество циклов (TCSN - Total Cycles Since New)
  • current_status (String) - Текущий статус (in_service, maintenance, storage, retired)
  • configuration (Text) - Конфигурация ВС (вариант исполнения)

Изменения:

  • drawing_numbers изменен с String(1024) на Text для поддержки больших объемов данных

1.2. Создана модель AirworthinessCertificate

Файл: backend/app/models/airworthiness.py

Назначение: Управление документами лётной годности (ДЛГ) согласно требованиям ИКАО Annex 8.

Поля:

  • certificate_number - Номер сертификата (уникальный)
  • certificate_type - Тип сертификата (standard, export, special)
  • issue_date - Дата выдачи
  • expiry_date - Дата истечения
  • issuing_authority - Орган, выдавший сертификат
  • status - Статус (valid, expired, suspended, revoked)
  • conditions - Условия действия сертификата
  • limitations - Ограничения
  • is_active - Активен ли сертификат

1.3. Создана модель AircraftHistory

Файл: backend/app/models/airworthiness.py

Назначение: Отслеживание всех значимых событий в жизненном цикле ВС.

Поля:

  • event_type - Тип события (maintenance, inspection, modification, incident, status_change)
  • event_date - Дата события
  • description - Описание события
  • performed_by_org_id - Организация, выполнившая работу
  • performed_by_user_id - Специалист, выполнивший работу
  • hours_at_event - Налет на момент события (TTSN)
  • cycles_at_event - Циклы на момент события (TCSN)
  • compliance_status - Статус соответствия требованиям
  • reference_documents - Ссылки на документы

1.4. Создана модель AircraftModification

Файл: backend/app/models/modifications.py

Назначение: Отслеживание обязательных и необязательных модификаций ВС (AD, SB, STC).

Поля:

  • modification_number - Номер модификации (AD, SB, STC номер)
  • modification_type - Тип модификации (AD, SB, STC, Service Bulletin)
  • title - Название модификации
  • compliance_required - Обязательна ли модификация
  • compliance_date - Срок выполнения
  • compliance_status - Статус выполнения (pending, complied, deferred, not_applicable)
  • performed_date - Дата выполнения
  • deferral_reason - Причина отложения выполнения
  • deferral_until - Отложено до даты

2. Схемы Pydantic

2.1. Обновлена схема Aircraft

Файл: backend/app/schemas/aircraft.py

Изменения:

  • Добавлены поля в AircraftCreate, AircraftUpdate, AircraftOut:
    • serial_number
    • manufacture_date
    • first_flight_date
    • total_time
    • total_cycles
    • current_status
    • configuration

2.2. Создана схема AirworthinessCertificate

Файл: backend/app/schemas/airworthiness.py

Схемы:

  • AirworthinessCertificateOut - для вывода
  • AirworthinessCertificateCreate - для создания
  • AirworthinessCertificateUpdate - для обновления

2.3. Создана схема AircraftHistory

Файл: backend/app/schemas/airworthiness.py

Схемы:

  • AircraftHistoryOut - для вывода
  • AircraftHistoryCreate - для создания

2.4. Создана схема AircraftModification

Файл: backend/app/schemas/modifications.py

Схемы:

  • AircraftModificationOut - для вывода
  • AircraftModificationCreate - для создания
  • AircraftModificationUpdate - для обновления

3. API Endpoints

3.1. Управление ДЛГ (Airworthiness Certificate)

Файл: backend/app/api/routes/airworthiness.py

Endpoints:

  • GET /api/v1/airworthiness/certificates - Список сертификатов (с фильтрацией по aircraft_id)
  • POST /api/v1/airworthiness/certificates - Создание сертификата (admin, authority_inspector)
  • GET /api/v1/airworthiness/certificates/{cert_id} - Получение сертификата
  • PATCH /api/v1/airworthiness/certificates/{cert_id} - Обновление сертификата (admin, authority_inspector)

3.2. История ВС (Aircraft History)

Файл: backend/app/api/routes/airworthiness.py

Endpoints:

  • GET /api/v1/aircraft/{aircraft_id}/history - История событий ВС (с фильтрацией по event_type)
  • POST /api/v1/aircraft/{aircraft_id}/history - Создание записи истории (admin, operator, mro)

3.3. Модификации ВС (Aircraft Modifications)

Файл: backend/app/api/routes/modifications.py

Endpoints:

  • GET /api/v1/aircraft/{aircraft_id}/modifications - Список модификаций ВС (с фильтрацией)
  • POST /api/v1/aircraft/{aircraft_id}/modifications - Создание модификации (admin, operator, authority)
  • GET /api/v1/modifications/{mod_id} - Получение модификации
  • PATCH /api/v1/modifications/{mod_id} - Обновление модификации (admin, operator, authority)
  • GET /api/v1/modifications - Список всех модификаций (с фильтрацией)

4. Регистрация роутеров

4.1. Обновлен backend/app/api/routes/__init__.py

Добавлены импорты:

  • airworthiness_router
  • modifications_router

4.2. Обновлен backend/app/main.py

Добавлена регистрация роутеров:

  • app.include_router(airworthiness.router, prefix=settings.api_v1_prefix)
  • app.include_router(modifications.router, prefix=settings.api_v1_prefix)

5. Обновление модели __init__.py

Файл: backend/app/models/__init__.py

Добавлены импорты новых моделей:

  • AirworthinessCertificate
  • AircraftHistory
  • AircraftModification

6. Соответствие требованиям

6.1. ИКАО Annex 8

Управление ДЛГ - реализовано через AirworthinessCertificate Отслеживание налета - реализовано через total_time и total_cycles в Aircraft История ВС - реализовано через AircraftHistory Модификации - реализовано через AircraftModification

6.2. EASA Part M (для международных операций)

Continuing Airworthiness - поддержка через новые модели Контроль выполнения обслуживания - через AircraftHistory Отслеживание компонентов - через существующие модели LimitedLifeComponent, LandingGearComponent Управление документацией - через reference_documents в моделях


7. Следующие шаги

7.1. Миграции базы данных

Необходимо создать миграции Alembic для:

  • Добавления новых полей в таблицу aircraft
  • Создания таблиц airworthiness_certificates, aircraft_history, aircraft_modifications

7.2. Frontend компоненты

Рекомендуется создать UI компоненты для:

  • Управления ДЛГ
  • Просмотра истории ВС
  • Управления модификациями ВС
  • Отображения расширенных данных ВС

7.3. Дополнительные функции

  • Автоматические уведомления о приближении срока истечения ДЛГ
  • Автоматические уведомления о новых обязательных модификациях
  • Отчеты по соответствию требованиям
  • Интеграция с внешними системами для получения AD/SB

Заключение

Все критические изменения согласно детальному анализу внесены. Проект теперь соответствует требованиям ИКАО Annex 8 и готов к дальнейшему развитию.