2
Описание проекта v.1
dtorov edited this page 2026-09-24 10:37:05 +00:00

ТЕХНИЧЕСКОЕ ЗАДАНИЕ: Система управления юридическими процессами (на примере процедур банкротства)

1. Общий скелет приложения (Базовая архитектура и сущности)

Цель: Создать фундамент системы, обеспечивающий многопользовательскую работу, изоляцию данных и масштабируемость.

1.1. Основные сущности (Модель данных):

  • Пользователь (User): Физическое лицо (Администратор, Юрист/Арбитражный управляющий, Помощник).
  • Должник (Debtor): Физическое или юридическое лицо, в отношении которого ведется процедура. Включает реквизиты, паспортные данные, имущество, счета, сведения о сделках.
  • Процесс/Процедура (Process/Case): Юридическая процедура (например, банкротство). Привязывается к одному Должнику. Включает номер судебного дела, статус, дату начала, назначенного Юриста.
  • Задача (Task): Единица работы. Привязана к Процессу, Этапу, Исполнителю и имеет дедлайн.
  • Документ (Document): Файл или сгенерированный шаблон. Привязан к Процессу и Типу документа.

1.2. Архитектура и технологии:

  • Клиент-серверная архитектура:
    • Backend: REST API (или GraphQL) для взаимодействия с фронтендом и внешними сервисами.
    • Frontend: SPA (Single Page Application) + реализация PWA (Progressive Web App) для возможности установки на десктоп и мобильные устройства (как в исходном документе).
  • База данных: Реляционная СУБД (PostgreSQL) для строгой связи сущностей (Процессы -> Должники -> Задачи).

1.3. Ролевая модель и права доступа (RBAC):

  • Суперадминистратор: Доступ к настройке системы, интеграциям, глобальным справочникам.
  • Администратор организации (Партнер/Руководитель): Управление сотрудниками, распределение прав, просмотр всех процессов.
  • Юрист (Пользователь): Доступ только к назначенным ему Процедуррам. Возможность создавать задачи, загружать документы, генерировать отчеты.
  • Правило: Данные по Процедуррам и Должникам жестко изолированы. Юрист не видит процессы, которые ему не назначены.

2. Функционал работы с задачами (Task & Project Management)

Цель: Предоставить администраторам гибкий конструктор процессов, а пользователям — удобные интерфейсы для ежедневной работы.

2.1. Админ-панель (Конструктор процессов):

  • Управление Этапами (Блоками): Администратор создает этапы (например, «Анализ финансового состояния», «Подготовка к торгам», «Завершение процедуры»).
  • Управление Типами задач: Создание справочника задач с дефолтными настройками (название, описание, стандартный срок выполнения в днях от начала этапа, ответственный по умолчанию).
  • Настройка Автоматизации (Триггеры и Связи):
    • Триггер создания: При создании Процесса -> автоматически создать Набор задач (Чек-лист).
    • Зависимости (Связи): Если Задача А переведена в статус «Выполнена» -> автоматически создать Задачу Б.
    • Внешние триггеры: При получении данных из гос. реестров (КАД, ЕФРСБ) -> создать специфическую задачу (например, «Подготовить отзыв на требование кредитора»).

2.2. Пользовательские интерфейсы (3 вида отображения):

  • Проджект-менеджер (Внутри карточки Процеса): Задачи сгруппированы по Этапам. Отображается прогресс-бар этапа. Просроченные задачи и этапы подсвечиваются красным. Рядом с задачей счетчик дней до/после дедлайна.
  • Таск-менеджер (Глобальный список): Агрегация всех задач по всем Процедуррам юриста. Фильтры: Тип задачи, Статус (Активные, Просроченные, Выполненные), Должник.
  • Календарь: Визуализация задач по дням/неделям/месяцам на основе дедлайнов.

2.3. Жизненный цикл задачи:

  • Статусы: Ожидает, В работе, Выполнена, Просрочена.
  • При отметке «Выполнена» система обязывает (или предлагает) заполнить краткий отчет/комментарий и прикрепить файл-подтверждение.

3. Загрузка и хранение документов (Document Management)

Цель: Организовать централизованное хранилище с привязкой к контексту и автоматической реакцией на загруженные файлы.

3.1. Механика загрузки:

  • Пользователь выбирает Процесс -> выбирает Тип документа (например, «Банковская выписка», «Договор купли-продажи», «Судебный акт») -> загружает файл.
  • Поддерживаемые форматы: PDF, DOCX, XLSX, CSV (для выписок), изображения.

3.2. Хранение и синхронизация:

  • Локальное хранение на сервере.
  • Автоматическая структура папок в облаке: root / [Название Процеса] / [Тип документа] /.

3.3. Автоматизация на основе загруженных документов (Event-driven):

  • Парсинг CSV: При загрузке банковской выписки (CSV) система парсит файл, создает записи в таблице «Движение денежных средств» и автоматически ставит задачу Юристу «Провести анализ подозрительных операций». На 2-ю и 3-ю очередь.
  • Парсинг судебных актов: При загрузке PDF с определением суда, система (с помощью базового NLP или ручного маппинга админа) создает задачу «Включить требование в реестр» или «Подготовить жалобу».
  • Контроль сроков: Если загружен документ с исходящей датой (например, уведомление о собрании кредиторов), система автоматически ставит задачу-дедлайн на дату из документа.

4. Шаблонизатор создания документов (Document Generator)

Цель: Исключить рутину по составлению типовых процессуальных документов, обеспечив их единообразие и скорость генерации.

4.1. Админ-панель (Настройка шаблонов):

  • Загрузка базовых файлов в формате .docx.
  • Разметка переменных: Администратор выделяет в тексте места для подстановки данных, используя теги (например, {{Должник.ФИО}}, {{Процесс.НомерДела}}, {{Должник.Адрес}}, {{ТекущаяДата}}).
  • Настройка пакетной генерации (возможность сгенерировать сразу 5-10 документов для одного этапа процедуры).

4.2. Пользовательский интерфейс (Генерация):

  • Пользователь находится в карточке Процеса -> открывает «Генератор документов».
  • Выбирает нужные шаблоны из списка (список фильтруется по текущему Этапу Процедуры).
  • Система автоматически подставляет данные из карточки Должника и Процеса в теги шаблона.
  • Пользователь нажимает «Скачать» (получает DOCX или PDF) или «Скачать архивом».

4.3. Продвинутые функции (Опционально, но желательно):

  • Факсимиле: Автоматическая вставка изображения подписи Arbitration Manager в нужные места документа.
  • Интеграция с ЭЦП (CryptoPro): Возможность скачать документ сразу с присоединенной электронной подписью (.sig) для отправки контрагентам или в суд.

Дополнительные требования (Скрытые в исходном документе)

При разработке необходимо заложить архитектурные возможности для следующих интеграций (указать в бэклоге на 2-ю и 3-ю очередь):

  1. Интеграция с гос. реестрами (API): КАД (kad.arbitr.ru), ЕГРЮЛ и ФИАС (DaData.ru) для автозаполнения карточек.
  2. Система уведомлений: Внутренняя панель (колокольчик) + Email-рассылка по Cron (раз в сутки) + PUSH-уведомления в PWA.
  3. Мониторинг дедлайнов: Фоновый скрипт, который ежедневно проверяет задачи и меняет их статус на «Просрочена», а также формирует отчет для рассылки.