Перейти к содержанию

👨‍💼 Руководство администратора

🎯 Обзор

Руководство администратора системы охраны труда содержит подробные инструкции по управлению системой, пользователями, организациями и мониторингу работы платформы.

🔐 Аутентификация администратора

Вход в систему

Администраторы системы имеют специальные права доступа ко всем функциям платформы.

URL: /api/admin/auth/login

Метод: POST

Параметры:

{
  "username": "admin",
  "password": "your_password"
}

Ответ:

{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...",
  "token_type": "bearer"
}

Использование токена

Все последующие запросы должны содержать заголовок авторизации:

Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...

📊 Административная панель

Дашборд администратора

Главная страница администратора предоставляет обзор состояния системы.

URL: /api/admin/dashboard

Метод: GET

Ответ:

{
  "user_stats": {
    "total": 1250,
    "active": 1180,
    "new_this_month": 45,
    "inactive": 70
  },
  "document_stats": {
    "total": 3400,
    "templates": 150,
    "active": 3200,
    "new_this_month": 120
  },
  "form_stats": {
    "total": 5600,
    "pending": 45,
    "approved": 5200,
    "drafts": 355
  },
  "recent_activities": [
    {
      "type": "form",
      "action": "submitted",
      "user": "Иванов И.И.",
      "item": "Форма #1234",
      "timestamp": "2024-01-15T10:30:00Z"
    }
  ]
}

Общая статистика системы

Детальная статистика по всем аспектам работы системы.

URL: /api/admin/statistics

Метод: GET

Ответ:

{
  "total_users": 1250,
  "total_documents": 3400,
  "total_forms": 5600,
  "pending_forms": 45,
  "expired_trainings": 12,
  "total_organizations": 85,
  "total_organization_members": 1250,
  "total_document_downloads": 15600,
  "total_support_tickets": 234
}

👥 Управление пользователями

Просмотр пользователей

Получение списка всех пользователей системы с возможностью фильтрации.

URL: /api/users/

Метод: GET

Параметры запроса: - skip (int): количество записей для пропуска (по умолчанию: 0) - limit (int): максимальное количество записей (по умолчанию: 100) - department (string): фильтр по отделу - role (string): фильтр по роли - is_active (boolean): фильтр по активности

Пример запроса:

GET /api/users/?role=admin&is_active=true&limit=50

Ответ:

[
  {
    "id": 1,
    "username": "admin",
    "email": "admin@example.com",
    "full_name": "Администратор Системы",
    "role": "admin",
    "department": "IT",
    "is_active": true,
    "created_at": "2024-01-01T00:00:00Z"
  }
]

Получение информации о пользователе

Детальная информация о конкретном пользователе.

URL: /api/users/{user_id}

Метод: GET

Ответ:

{
  "id": 1,
  "username": "admin",
  "email": "admin@example.com",
  "full_name": "Администратор Системы",
  "employee_number": "EMP001",
  "position": "Системный администратор",
  "department": "IT",
  "role": "admin",
  "is_active": true,
  "hire_date": "2024-01-01T00:00:00Z",
  "password_set": true,
  "first_login_completed": true,
  "created_at": "2024-01-01T00:00:00Z",
  "updated_at": "2024-01-15T10:30:00Z"
}

🏢 Управление организациями

Просмотр организаций

Получение списка всех зарегистрированных организаций.

URL: /api/organizations/

Метод: GET

Ответ:

[
  {
    "id": 1,
    "type": "ЮЛ",
    "inn": "7736207543",
    "ogrn": "1027739850962",
    "full_name": "ООО \"Компания\"",
    "short_name": "Компания",
    "status": "Действующее",
    "registration_date": "2020-01-15T00:00:00Z",
    "full_address": "г. Москва, ул. Примерная, д. 1",
    "main_activity_text": "Разработка ПО",
    "created_at": "2024-01-01T00:00:00Z"
  }
]

Импорт организации из ФНС

Автоматическое получение и обновление данных организации из API ФНС.

URL: /api/organizations/fns/import/{inn}

Метод: POST

Параметры: - inn (string): ИНН организации (10 цифр для ЮЛ, 12 для ИП) - force_update (boolean): принудительное обновление существующих данных

Пример запроса:

POST /api/organizations/fns/import/7736207543?force_update=true

Ответ:

{
  "id": 1,
  "type": "ЮЛ",
  "inn": "7736207543",
  "ogrn": "1027739850962",
  "full_name": "ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ \"КОМПАНИЯ\"",
  "status": "Действующее",
  "registration_date": "2002-12-26T00:00:00Z",
  "full_address": "г. Москва, ул. Примерная, д. 1",
  "main_activity_text": "Разработка компьютерного программного обеспечения",
  "created_at": "2024-01-01T00:00:00Z",
  "updated_at": "2024-01-15T10:30:00Z"
}

📈 Отчеты и аналитика

Отчет об активности пользователей

Анализ активности пользователей за указанный период.

URL: /api/admin/reports/user-activity

Метод: GET

Параметры: - days (int): период в днях (по умолчанию: 30)

Ответ:

{
  "period_days": 30,
  "user_activity": [
    {
      "user_id": 1,
      "full_name": "Иванов И.И.",
      "department": "Безопасность",
      "forms_created": 15
    },
    {
      "user_id": 2,
      "full_name": "Петров П.П.",
      "department": "HR",
      "forms_created": 8
    }
  ]
}

Отчет об использовании документов

Статистика использования документов в системе.

URL: /api/admin/reports/document-usage

Метод: GET

Ответ:

{
  "document_usage": [
    {
      "document_id": 1,
      "name": "Инструкция по охране труда",
      "type": "instruction",
      "category": "general_safety",
      "usage_count": 156
    },
    {
      "document_id": 2,
      "name": "Форма допуска к работе",
      "type": "form",
      "category": "work_permit",
      "usage_count": 89
    }
  ]
}

Статистика по отделам

Анализ активности по отделам организации.

URL: /api/admin/reports/department-stats

Метод: GET

Ответ:

{
  "department_stats": [
    {
      "department": "Безопасность",
      "user_count": 15,
      "form_count": 234
    },
    {
      "department": "HR",
      "user_count": 8,
      "form_count": 156
    }
  ]
}

🧹 Системное администрирование

Очистка старых черновиков

Удаление устаревших черновиков форм для освобождения места.

URL: /api/admin/cleanup/old-drafts

Метод: POST

Параметры: - days_old (int): возраст черновиков в днях (по умолчанию: 30)

Ответ:

{
  "message": "Удалено 45 старых черновиков",
  "deleted_count": 45
}

Массовая отправка уведомлений

Отправка уведомлений группе пользователей или всем пользователям.

URL: /api/admin/notifications/send-bulk

Метод: POST

Параметры: - title (string): заголовок уведомления - message (string): текст уведомления - user_ids (array): список ID пользователей (опционально) - department (string): отдел для отправки (опционально)

Пример запроса:

{
  "title": "Обновление системы",
  "message": "Система будет обновлена завтра с 02:00 до 04:00",
  "department": "IT"
}

Ответ:

{
  "message": "Отправлено 25 уведомлений",
  "sent_count": 25
}

Информация о системе

Получение информации о состоянии системы и ресурсах.

URL: /api/admin/system-info

Метод: GET

Ответ:

{
  "disk": {
    "total": 1073741824000,
    "used": 536870912000,
    "free": 536870912000,
    "percent": 50.0
  },
  "memory": {
    "total": 8589934592,
    "used": 4294967296,
    "free": 4294967296,
    "percent": 50.0
  },
  "uploads_size": 1048576000,
  "database_tables": {
    "users": 1250,
    "documents": 3400,
    "forms": 5600,
    "access_permissions": 8900
  }
}

🔧 Управление доступом

Система ролей

Система использует иерархическую модель ролей:

  1. admin - администратор системы (полный доступ)
  2. owner - владелец организации (полный доступ к организации)
  3. manager - менеджер организации (управление процессами)
  4. specialist - специалист (базовый доступ)

Права доступа

Каждая роль имеет определенный набор прав:

graph TD
    A[admin] --> B[Все права системы]
    C[owner] --> D[Управление организацией]
    C --> E[Управление пользователями]
    C --> F[Управление документами]
    G[manager] --> H[Управление процессами]
    G --> I[Просмотр отчетов]
    J[specialist] --> K[Заполнение форм]
    J --> L[Просмотр документов]

📊 Мониторинг и логирование

Логи системы

Все действия администратора логируются для аудита:

  • Вход в систему
  • Управление пользователями
  • Изменение настроек
  • Массовые операции

Метрики производительности

Система отслеживает ключевые метрики:

  • Время отклика API
  • Использование ресурсов
  • Количество активных пользователей
  • Ошибки и исключения

🚨 Устранение неполадок

Частые проблемы

Проблема: Пользователь не может войти в систему

Решение: 1. Проверить статус пользователя (активен/неактивен) 2. Проверить правильность пароля 3. Проверить срок действия токена 4. Проверить логи системы на наличие ошибок

Проблема: Организация не импортируется из ФНС

Решение: 1. Проверить корректность ИНН 2. Проверить доступность API ФНС 3. Проверить настройки интеграции 4. Проверить логи API запросов

Проблема: Медленная работа системы

Решение: 1. Проверить использование ресурсов сервера 2. Проверить производительность базы данных 3. Проверить сетевые соединения 4. Оптимизировать запросы к БД

Контакты поддержки

При возникновении критических проблем: - Email: admin-support@example.com - Телефон: +7 (495) 123-45-67 - Система поддержки: /api/support/


Руководство администратора регулярно обновляется в соответствии с изменениями в системе.