Разработка:workflows/invitems — различия между версиями

Материал из DOF
Перейти к: навигация, поиск
(Возможные статусы:)
(Маршруты статусов)
 
(не показано 8 промежуточных версий 3 участников)
Строка 1: Строка 1:
====Возможные статусы:====
+
{{Infobox_Plugin
*доступно (active)
+
| name = invitems
*не доступно (notavailable)
+
| type = workflows
*списано (scrapped)
+
}}
*в ремонте (repairing)
 
*удалено(только для ошибочно-заведенных)(deleted)
 
  
*доступно
+
==Возможные статусы:==
** не доступно
+
* Доступно (active) - доступно для заказа
** списано
+
* Не доступно (notavailable) - не доступно для заказа(формальная причина, на дальнем складе или ещё что-то)
** в ремонте
+
* Списано (scrapped) - списано по какойто причине(не починили)
** удалено
+
* В ремонте (repairing) - оборудование находится в ремонта
 +
* Удалено (deleted) только для ошибочно-заведенных
  
* не доступно
+
== Метастатусы ==
** доступно
+
* Активный: active
** списано
+
* Актуальный: active, notavailable, repairing
** в ремонте
+
* Реальный: active, notavailable, repairing, scrapped
 +
* Мусорный: deleted
  
 +
== Маршруты статусов==
 +
Правила описания маршрутов: описания возможностей перехода в новый статус на основании текущего статуса и условия, действительные только при переходе в новый статус из текущего статуса. При инициализации статус объекта равен доступный(active)
  
* списано конечный
+
==== Доступный(active) ====
 +
Возможные переходы ИЗ этого статуса:
 +
* Не доступно (notavailable)
 +
* Списано (scrapped)
 +
* В ремонте (repairing)
 +
* Удалено (deleted)
  
* в ремонте
+
==== Не доступен (notavailable)  ====
** списано
+
Возможные переходы ИЗ этого статуса:
** доступно
+
* Доступно (active)
 +
* Списано (scrapped)
 +
* В ремонте (repairing)
  
* удалено - конечный
+
==== В ремонте (repairing) ====
 +
Возможные переходы ИЗ этого статуса:
 +
* Списано (scrapped)
 +
* Доступно (active)
 +
 
 +
==== Списано (scrapped) ====
 +
Это конечный статус.
 +
 
 +
==== Удалено (deleted) ====
 +
Это конечный статус.
 +
 
 +
== API ==
 +
 
 +
==== get_list() ====
 +
Получить список всех возможных статусов
 +
 
 +
''Аргументы:''
 +
* (нет)
 +
''Возвращаемые значения:''
 +
* Массив, со списком всех возможных статусов в формате "обозначение" => "Перевод"
 +
 
 +
==== get_name() ====
 +
Получить название статуса по его обозначению в базе данных
 +
 
 +
''Аргументы:''
 +
* (string) $status - обозначение статуса латинскими буквами
 +
''Возвращаемые значения:''
 +
* (string|bool) - перевод для этого статуса, либо false, если он не обнаружен в списке допустимых
 +
 
 +
==== get_available() ====
 +
Получить список статусов, в которые может перейти указанное оборудование.
 +
 
 +
''Аргументы:''
 +
* $id - id единицы оборудования в таблице [[Разработка:storages/invitems|invitems]]
 +
''Возвращаемые значения:''
 +
* (array|bool) - массив возможных состояний в формате ('обозначение' => 'первод') или false в случае когда запись не найдена. В случае, когда переход из этого статуса невозможен - возвращается пустой массив.
 +
 
 +
==== change() ====
 +
Сменить статус оборудования на указанный.
 +
 
 +
''Аргументы:''
 +
* (int) $id - id оборудования в таблице [[Разработка:storages/invitems|invitems]]
 +
* (string) $status - обозначение статуса латинскими буквами
 +
* (array) $opt - Массив, где содержатся дополнительные параметры для смены статуса. По умолчанию null.
 +
''Возвращаемые значения:''
 +
* (bool) true - если статус удалось изменить, или false в случае ошибки
 +
 
 +
При обращении к функции change() выполняются дополнительные действия, указанные выше, в разделе "Маршруты статусов". При каждом изменении статуса данные записываются в таблицу [[Разработка:storages/statushistory|statushistory]].
 +
 
 +
==== init() ====
 +
Запускается при вставке в таблицу [[Разработка:storages/invitems|invitems]] новой записи. Автоматически назначает созданному оборудованию статус "доступен" (active).
 +
 
 +
''Аргументы:''
 +
* $id - id только что созданного единицы оборудования в таблице [[Разработка:storages/invitems|invitems]]
 +
''Возвращаемые значения:''
 +
* (bool) true если статус успешно назначен или false в случае ошибки
 +
 
 +
==Перехватываемые события==
 +
{| border="1"
 +
|+ Таблица событий, которые перхватывает этот плагин
 +
! Тип плагина
 +
! Код плагина
 +
! Код события
 +
! Пояснение
 +
|-
 +
|
 +
|
 +
|
 +
|
 +
|}
 +
 
 +
[[Категория:Оборудование]]

Текущая версия на 10:37, 18 февраля 2014

Плагин
Название invitems
Тип workflows


Возможные статусы:

  • Доступно (active) - доступно для заказа
  • Не доступно (notavailable) - не доступно для заказа(формальная причина, на дальнем складе или ещё что-то)
  • Списано (scrapped) - списано по какойто причине(не починили)
  • В ремонте (repairing) - оборудование находится в ремонта
  • Удалено (deleted) только для ошибочно-заведенных

Метастатусы

  • Активный: active
  • Актуальный: active, notavailable, repairing
  • Реальный: active, notavailable, repairing, scrapped
  • Мусорный: deleted

Маршруты статусов

Правила описания маршрутов: описания возможностей перехода в новый статус на основании текущего статуса и условия, действительные только при переходе в новый статус из текущего статуса. При инициализации статус объекта равен доступный(active)

Доступный(active)

Возможные переходы ИЗ этого статуса:

  • Не доступно (notavailable)
  • Списано (scrapped)
  • В ремонте (repairing)
  • Удалено (deleted)

Не доступен (notavailable)

Возможные переходы ИЗ этого статуса:

  • Доступно (active)
  • Списано (scrapped)
  • В ремонте (repairing)

В ремонте (repairing)

Возможные переходы ИЗ этого статуса:

  • Списано (scrapped)
  • Доступно (active)

Списано (scrapped)

Это конечный статус.

Удалено (deleted)

Это конечный статус.

API

get_list()

Получить список всех возможных статусов

Аргументы:

  • (нет)

Возвращаемые значения:

  • Массив, со списком всех возможных статусов в формате "обозначение" => "Перевод"

get_name()

Получить название статуса по его обозначению в базе данных

Аргументы:

  • (string) $status - обозначение статуса латинскими буквами

Возвращаемые значения:

  • (string|bool) - перевод для этого статуса, либо false, если он не обнаружен в списке допустимых

get_available()

Получить список статусов, в которые может перейти указанное оборудование.

Аргументы:

  • $id - id единицы оборудования в таблице invitems

Возвращаемые значения:

  • (array|bool) - массив возможных состояний в формате ('обозначение' => 'первод') или false в случае когда запись не найдена. В случае, когда переход из этого статуса невозможен - возвращается пустой массив.

change()

Сменить статус оборудования на указанный.

Аргументы:

  • (int) $id - id оборудования в таблице invitems
  • (string) $status - обозначение статуса латинскими буквами
  • (array) $opt - Массив, где содержатся дополнительные параметры для смены статуса. По умолчанию null.

Возвращаемые значения:

  • (bool) true - если статус удалось изменить, или false в случае ошибки

При обращении к функции change() выполняются дополнительные действия, указанные выше, в разделе "Маршруты статусов". При каждом изменении статуса данные записываются в таблицу statushistory.

init()

Запускается при вставке в таблицу invitems новой записи. Автоматически назначает созданному оборудованию статус "доступен" (active).

Аргументы:

  • $id - id только что созданного единицы оборудования в таблице invitems

Возвращаемые значения:

  • (bool) true если статус успешно назначен или false в случае ошибки

Перехватываемые события

Таблица событий, которые перхватывает этот плагин
Тип плагина Код плагина Код события Пояснение