Руководство программиста доски WorkflowView


НАЧАЛО >> WorkflowView >> Руководство программиста доски WorkflowView📄 Скачать в DOCX


1. Границы ответственности

Подсистема досок WorkflowView владеет конфигурацией и renderer-контрактом доски. Она строит модель из уже отобранных карточек, объясняет размещение карточек по колонкам и выполняет dry-run перемещения.

Подсистема досок WorkflowView не выполняет поиск записей, не исполняет переходы, не хранит пользовательские preference, не доставляет события и не управляет очередью. Эти операции принадлежат WorkflowFilter, WorkflowTransition, ProfileManager, EventBus и Queue.

2. Основные функции

Для viewType=timebox BuildBoardModel может распределять карточки без доменной логики по временным bucket-ам колонок: overdue, today, this_week, next_week, later, no_due. Значение даты берется из policy.sprintFieldKey, а если оно пустое - из cardProfile.dueDateFieldKey. Доменный модуль должен только положить соответствующее значение в card.data.

3. Карточка

Runtime-слой передает в BuildBoardModel уже подготовленные карточки с ключами key, title, statusKey, apiStatus, columnKey, swimlaneKey и data. Проверка прав на поля и маскирование выполняются внешними контрактами.

Доменный модуль, поставивший доску через workflow JSON, может предоставить BuildWorkflowViewBoardCards(records, project, board, options). Например, Tasks преобразует записи TASK в карточки с URL Workflow/Show и pageKey, указанным в detailViewKey доски.

Drag-and-drop UI не меняет запись напрямую. Клиент вызывает WIrbis action WorkflowView/Board/Kanban/MoveCard, а сервер заново строит текущую доску, проверяет, что карточка действительно входит в доступную пользователю выборку, выполняет Board_Kanban_DryRunMoveCard и только после этого применяет найденный переход Workflow.