Skip to content

Модуль company_structure

Путь: app/company_structure/
Django app: app.company_structure

Назначение

Управляет организационной структурой компании: отделами, должностями, сотрудниками и HR-процессами.

Модели

Department

python
class Department(MPTTModel):
    """Отдел / подразделение (иерархия)"""
    name = CharField()
    parent = TreeForeignKey('self', null=True)
    head = FK(User, null=True)       # руководитель
    organization = FK(Organization)
    is_active = BooleanField()

Position

python
class Position(Model):
    """Должность"""
    name = CharField()
    department = FK(Department)
    salary_grade = IntegerField()    # грейд
    is_active = BooleanField()

Сервисный слой

app/company_structure/services/:

СервисНазначение
financial_service.pyРасчёт зарплат, финансовые показатели
employee_service.pyОперации с сотрудниками
department_service.pyРабота с отделами и иерархией
analytics_service.pyHR-аналитика (текучесть, штатное расписание)

API

EndpointОписание
GET /api/v2/company-structure/departments/Дерево отделов
GET /api/v2/company-structure/positions/Должности
GET /api/v2/company-structure/employees/Сотрудники

Тесты

Один из наиболее покрытых тестами модулей:

  • tests/test_views.py — тесты API
  • tests/test_services.py — тесты сервисного слоя
  • tests/test_models.py — тесты моделей

Связи

  • app.users — пользователи системы
  • app.manufacture — производственные смены
  • app.tasks — задачи по отделам
  • app.lms — обучение сотрудников
  • app.ats — подбор персонала