Public release from ruodoo-project: 19.0 - 2026-07-26 21:17:35 UTC
This commit is contained in:
145
directive_layer/README.md
Normal file
145
directive_layer/README.md
Normal file
@ -0,0 +1,145 @@
|
||||
# Слой директив (Directive Layer)
|
||||
**name:** `directive_layer`
|
||||
**version:** 19.0.1.0.0
|
||||
**author:** Mk.Lab
|
||||
|
||||
---
|
||||
|
||||
## 1. Общее описание
|
||||
|
||||
**Директива** — это структурированное задание, которое система Odoo автоматически создаёт и назначает исполнителю при наступлении бизнес-события. Директива несёт в себе информацию о типе работ, ответственных ролях, дедлайне, трудоёмкости и ожидаемом результате.
|
||||
|
||||
---
|
||||
|
||||
## 2. Установка
|
||||
|
||||
1. Убедитесь, что установлен модуль `base_user_role`
|
||||
2. Скопируйте папку `directive_layer` в директорию `addons`
|
||||
3. Перезапустите сервер Odoo
|
||||
4. Перейдите в **Настройки → Приложения → Обновить список**
|
||||
5. Найдите **«Directive Layer»** и нажмите **Установить**
|
||||
|
||||
После установки автоматически создаются 7 стадий заданий.
|
||||
|
||||
## 3. Функциональность
|
||||
|
||||
- Автоматическое создание заданий при наступлении событий в системе
|
||||
- Три типа исполнителей: человек, программный агент, оборудование
|
||||
- Статусная машина с контролируемыми переходами между стадиями
|
||||
- Визуальные светофоры для контроля состояния исполнителя и ресурсов
|
||||
- Шаблоны и группы шаблонов для быстрого создания пакетов заданий
|
||||
- Настройка правил автоматической генерации без программирования
|
||||
- Рабочий стол исполнителя — полноэкранный дашборд для работы с заданиями
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
## 4. Роли пользователей
|
||||
|
||||
| Роль | Что может делать |
|
||||
|---|---|
|
||||
| Исполнитель | Видит свои задания, берёт в работу, завершает |
|
||||
| Заявитель | Создаёт и отслеживает задания |
|
||||
| Диспетчер | Назначает исполнителей, управляет очередью |
|
||||
|
||||
При назначении роли **Исполнителя** система автоматически устанавливает «Рабочий стол исполнителя» домашней страницей пользователя.
|
||||
|
||||
---
|
||||
|
||||
## 5. Жизненный цикл директивы
|
||||
|
||||
```
|
||||
Черновик
|
||||
↓ подтверждение
|
||||
Подтверждена
|
||||
↓ планирование
|
||||
Запланирована
|
||||
↓ старт
|
||||
В работе ←→ На паузе
|
||||
↓ завершение
|
||||
Выполнена
|
||||
```
|
||||
|
||||
При завершении задания система автоматически уведомляет объект-источник (задачу, заказ и т.д.) о результате.
|
||||
|
||||
---
|
||||
|
||||
## Как это выглядит в интерфейсе
|
||||
|
||||
### На форме объекта (задача, заказ, счёт...)
|
||||
|
||||
После подключения к объекту на его форме появляются три элемента:
|
||||
|
||||
**Кнопка «Выбрать тип»** в шапке формы — позволяет выбрать группу шаблонов заданий для данного объекта.
|
||||
|
||||
**Кнопка «Директивы»** — показывает количество заданий, связанных с записью. Нажмите, чтобы открыть список.
|
||||
|
||||
**Поле «Текущий статус исполнения»** — автоматически вычисляемый текст с наиболее приоритетным активным заданием, ближайшим дедлайном и ожидаемой датой завершения.
|
||||
|
||||

|
||||
---
|
||||
|
||||
### Рабочий стол исполнителя по задачам
|
||||
|
||||
Полноэкранный канбан-дашборд для пользователей с ролью «Исполнитель». Показывает только задания, назначенные текущему пользователю, сгруппированные по стадиям.
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
### Меню «Директивы»
|
||||
|
||||
В главном меню появляется раздел **Директивы** с двумя пунктами:
|
||||
|
||||
- **Все директивы** — список всех заданий в системе (канбан и список)
|
||||
- **Политики** — правила автоматического создания заданий без программирования
|
||||
|
||||
В подразделе **Директивы → Настройки** доступны справочники:
|
||||
|
||||
- **Шаблоны директив** — словарь шаблонов с типом работ, трудоёмкостью и ролями
|
||||
- **Группы шаблонов директив** — наборы шаблонов для пакетного создания заданий
|
||||
- **Виды работ** — справочник видов работ
|
||||
- **Статусы директив** — справочник стадий заданий
|
||||
- **Источники директив** — список объектов, к которым подключены задания
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
## Как создавать задания: три способа
|
||||
|
||||
### 1. Вручную
|
||||
|
||||
Откройте нужный объект → кнопка **«Выбрать тип»** → выберите группу шаблонов → задания создаются немедленно.
|
||||
|
||||

|
||||
|
||||
### 2. Автоматически через политику (без кода)
|
||||
|
||||
Перейдите в **Директивы → Политики** и создайте правило:
|
||||
- Выберите объект (задача, заказ и т.д.)
|
||||
- Укажите событие: при изменении поля, при создании записи или при вызове действия
|
||||
- Задайте условие срабатывания
|
||||
- Выберите группу шаблонов
|
||||
|
||||

|
||||
|
||||
После сохранения задания будут создаваться автоматически при наступлении события.
|
||||
|
||||
### 3. Через код (для разработчиков)
|
||||
|
||||
Разработчик подключает модуль к нужной модели через `directive.mixin`. Подробнее — в технической документации и модулю.
|
||||
|
||||
---
|
||||
|
||||
## Зависимости
|
||||
|
||||
| Модуль | Назначение |
|
||||
|---|---|
|
||||
| `base` | Базовый Odoo |
|
||||
| `web` | Фронтенд |
|
||||
| `base_user_role` | Управление ролями пользователей |
|
||||
| `project` | Модуль проектов |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user