Задача [0157]: Отображение файлов работы по проекту в виртуальной папке мероприятия

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

Используется:

Связанные задачи: Виртуальная структура папок проекта.

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

Таким образом, для утвержденного проекта внутри виртуальной папки мероприятия, у которого задан(-ы) ответственный(-ые), необходимо автоматически создавать папку Файлы работ. Соответственно, для неутвержденного проекта этой папки быть не должно. Эта папка должна быть неизменяемой, неперемещаемой и неудаляемой. Содержимое папки «Файлы работ»:

Файлы работ должны быть отсортированны в том же порядке, как и в самой работе. Основной файл должен быть выделен полужирным начертанием.

Возможные действия в папке «Файлы работ»

Внутри папки «Файлы работ» из любого ее уровня вложенности должна быть возможность возврата "домой", а также "на уровень выше", с соответствующим поведением, кнопка "+" недоступна.

Внутри папки ответственного должна быть возможность добавления нового файла (кнопка "+"):

Возможные действия над файлами из работ аналогичен:

При перемещении файла из произвольной папки проекта в диалоговом окне выбора папки должна быть доступна папка «Файлы работ», её инициализированные дочерние псевдо-папки ответственных и папка "Прочие" внутри виртуальной папки мероприятия. Таким образом, возможно добавление файлов к работе по мероприятию непосредственно из файлов проекта. Для добавления файла в "Прочие" необходимо выбрать папку "Прочие", в "Приложения":

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

Результаты действий добавления файла, "Сделать основным", "Новая версия" и "Удалить" должны синхронизироваться как в рассматриваемой виртуальной папке, так и непосредственно в документе работы.

Над папками «Файлы работ», «Прочие» и папками ответственных действия (и, соответственно, контекстное меню) отсутствуют.

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

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

Действия при обновлении системы

При обновлении системы во всех существующих проектах во всех виртуальных папках должна создасться папка "Файлы работ", содержимое которой будет соответствовать всему описанию выше. Других видимых изменений произойти не должно.

Примеры использования

Условия: наличие утвержденного проекта, в котором Пользователь1 — владелец проекта. Пользователи 2, 3 и 4 — произвольные сотрудники.

  1. Пользователь1 создает Мероприятие1 в проекте.

  2. Пользователь1 добавляет в качестве ответственных за Мероприятие1 Пользователя2 (форма завершения «Файл») и Пользователя3 (форма завершения «форма»).

  3. Пользователь2 добавляет во вложения работы Файл1, в прочие Файл2.

  4. Структура виртуальной папки Мероприятие1:

    • Мероприятие1

      • Файлы работ

        • Пользователь2

          • Файл1

          • Прочие

            • Файл2

        • Пользователь3

          • Прочие

  5. Пользователь2 отправляет работу на согласование Пользователю4.

  6. Пользователь4 добавляет во вложения работы Файл3, в прочие Файл4.

  7. Структура виртуальной папки Мероприятие1:

    • Мероприятие1

      • Файлы работ

        • Пользователь2

          • Файл1

          • Файл3

          • Прочие

            • Файл2

            • Файл4

        • Пользователь3

          • Прочие

  8. Пользователь2 завершает работу по Мероприятию1, указывает в качестве формы завершения Файл5.

  9. Структура виртуальной папки Мероприятие1:

    • Мероприятие1

      • Файлы работ

        • Пользователь2

          • Файл1

          • Файл3

          • Прочие

            • Файл2

            • Файл4

            • Файл5

        • Пользователь3

          • Прочие

  10. Пользователь3 завершает работу по Мероприятию1, заполняя форму завершения «форму» (Файл6 в прочих).

  11. Структура виртуальной папки Мероприятие1:

    • Мероприятие1

      • Файлы работ

        • Пользователь2

          • Файл1

          • Файл3

          • Прочие

            • Файл2

            • Файл4

            • Файл5

        • Пользователь3

          • Прочие

            • Файл6