Giter VIP home page Giter VIP logo

redmine_inbg's Issues

Изменение отображения страницы документа

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

Также на странице можно кликнуть на кнопку добавления новой ревизии (если документ не заблокирован и есть доступ на добавление новых ревизий), которое выглядит следующим образом
image

Необходимо изменить отображения списка ревизий к документу:

  • Отображать информацию о ревизиях в виде слайд карточек, по умолчанию открывать карточку с последней ревизией
  • На странице с ревизией реализовать модуль примечания/история по аналогии как у задач в redmine
    image
  • Отображать в таблице история информацию о редактировании ревизии, комментариях, запуске/отмене/отказе/утверждении процесса утверждения к соответствующей ревизии
  • В верхней части страницы реализовать список опций, доступных пользователю к данному документу (удалить, утвердить документ, блокировать документ, разблокировать документ, редактировать документ, отправить по email)
  • В верхней части страницы добавить кнопку добавления новой ревизии
  • В верхней части страницы добавить кнопку удаления ревизии
  • В верхней части страницы добавить кнопку редактирования ревизии
  • Удалить излишнюю информацию о следующих параметрах:
    • Mime
    • Контрольная сумма
    • комментарий

Реализовать Страницу отображения документа

Необходимо реализовать страницу отображения документа redmine в соответствие с окном Страница отображения документа по ссылке https://www.figma.com/file/Sa3pKfBoZ5sBkThW2252cr/Untitled?type=design&node-id=8-52&mode=design&t=nVnvY98y3jFoyhfj-0

Детали реализации:

Выпадающий список в верхней части экрана позволяет выбрать определенную версию документа из доступных

Кнопка новая версия позволяет добавить новую версию документа,прикрепив новый файл, а также добавив описание к данной версии. При нажатии Всплывает модальное окно, которое представляет собой #12 без выбора согласователей и наблюдателей

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

Кнопка Редактировать открывает модальное окно #12 без выбора согласователей и наблюдателей; позволяет редактировать параметры версии документа

При нажатии на кнопку ... открывается выпадающий список с дополнительными возможностями, относящимися ко всему документу в целом:

  • Разблокировать/заблокировать документ
  • Копировать документ
  • Удалить документ

В правой части экрана расположен функционал для управления согласователями и наблюдателями.

В левой части экрана собрана метаинформация о текущей ревизии

Снизу в левой части экрана расположена история изменений, согласований, а также возможность добавить примечание для текущей версии документа

Доработка списка отображения документов

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

Необходимо переработать отображение списка документов:

  • Отображать документы для пользователей, к которым у них есть доступ на просмотр
  • Добавить фильтры по документам, которые находятся на утверждении (ожидают согласования пользователем)
  • Сортировку по статусу документа: Not Approved, In Approval, Rejected,Approved
  • Починить выбор возможных опций к документу в соответствие с правами через многоточие

Доработка плагина redmine_extended_watchers

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

  • возможность оставлять комментарии в примечании, а также добавлять файлы и документы к задачам, в которых пользователь становится наблюдателем
  • возможность поставить пользователя в подзадаче в качестве исполнителя. В данной подзадаче пользователь может оставлять примечания, переводить задачу в статусы, а также изменять поля в подзадаче (по умолчанию наблюдателю недоступны изменения полей), заданные в настройках плагина
  • реализовать настройку плагина, которая будет включать в себя возможности перевода подзадачи в статусы, а также возможности изменения полей в подзадаче (реализация будет похожа на настройки в системе redmine Администрирование->Последовательность действий)

Реализация преобразований статусов для трекера Ошибка для роли Директор в системе redmine
image

Реализация настроек на изменение полей для трекера Ошибка для роли Директор в системе redmine
image

Добавить новые категории пользователей для доступа к документам

Необходимо реализовать 2 новые категории пользователей, которые будут иметь определенный набор прав на доступ к документам во всей системе redmine:

  • Наблюдатели
  • Согласователи

Наблюдатель

Наблюдателей к документу можно будет прикрепить при создании нового документа с помощью #12 или с помощью #13 в левой части экрана. Пользователь в качесте наблюдателя будет получать уведомления на почту при изменениях документа
Набор доступных прав:

  • Просмотр версий документа
  • Возможность оставлять примечания к версии документа

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

Согласователь

Согласователей к документу можно будет прикрепить при создании нового документа с помощью #12 или с помощью #13 в левой части экрана. Согласователи учавствуют в процессе утверждения версии документа, а также имеют следующие права в рамках модуля документов:

  • Просмотр версий документа
  • Возможность оставлять примечания к версии документа
  • Отменять/отказывать/согласовывать документ в процессе согласования
  • Изменять список согласователей
  • Изменять список наблюдателей
  • Оставлять примечания
  • Редактировать/Удалять те версии документа, авторами которых они являются
  • Добавлять новые версии документа

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

Доработка процесса утверждения документа

На данный момент в системе есть глобальная настройка Approwal workflows в разделе Администрирование, в котором можно создать конфигурацию, в которую добавляют людей для Согласования документов, при запуске процесса Согласования для документа предлагается выбрать существующую конфигурацию.
image
При нажатии на кнопку Start approval запускается процесс Согласования документа, который содержит в себе текстовое поле, а также кнопки reject и approve. Если в конфигурации выбрано, что при согласовании возможно Согласование одного из списка утвердителей(логическиая функция OR), то для Согласования документа необходим один approve, если же необходимо Согласование от нескольких пользователей, то approve должен нажать каждый из них. При нажатии на кнопку reject одним из утвердителей процесс согласования отменяется
image

Данную конфигурацию необходимо переместить в меню создания документа (#12) при нажатии на кнопку добавить согласователей. Список пользователей при выборе для согласования документа будет включать в себя всех пользователей системы.

Необходимо доработать процесс Согласования:

  • Добавить статус cancelled (отмена), который отменяет процесс Согласования. Опция отмены согласования будет доступна в соответствие с настройкой роли, которую занимает пользователь в проекте или же тому, кто запустил процесс Согласования
  • Возможность возобновления процесса Согласования после отмены (статус cancelled)
  • При начале процесса Согласования документ блокируется, тем самым не позволяя пользователям удалять/редактировать ревизии, добавлять новые ревизии. Блокировку можно снять несколькими способами:
    • При отмене процесса согласования
    • При успешном согласовании новой версии документа
    • При отказе в согласовании новой версии документа
  • Ввести понятие статусов для документа:
    - Not Approved (не согласован)
    Данный статус будет отображаться при добавлении новой ревизии или при отмене(cancelled) процесса Согласования
    - In Approval (на согласовании)
    Статус будет возникать при запуске процесса Согласования новой версии
    - Rejected (отказан в согласовании)
    Статус отображается при отказе в Согласовании новой версии. Статус изменяется на Not Approved при добавлении новой ревизии или редактировании файла, прикрепленного к текущей версии документа
    - Approved (согласован)
    Статус отображается при успешном Согласовании новой версии. Статус изменяется на Not Approved при добавлении новой черновой версии.
  • Ввести систему учета версий документа следующим образом:
    • По умолчанию при создании документа версия выбирается как 0.1
    • При Согласовании документа (Approved) мажорная версия увеличивется на 1, при том минорная версия отбрасывается. Пример: 0.1 -> 1, 2.1 -> 3
    • При создании новой ревизии минорная версия увеличивается на 1. Пример: 0.1 -> 0.2, 1-> 1.1
    • При отмене (Cancelled) или отказе (Rejected) в Согласовании версия документа остается прежней
    • Версию ревизии нельзя выбрать при создании, она задается автоматически
  • Процесс Согласования должен быть закреплен к конкретной версии документа.
  • Необходимо реализовать отображение согласований, на странице отображения документа #12 . Формат записи: Согласование 1.1(Согласование, относящееся к версии ревизии 1.1), Согласование 2.1.1, Согласование 2.1.2 (Эти два Согласования относятся к версии ревизии 2.1).
  • При изменении состояния Согласования (отмена Согласования, запуска стадии Согласования, отказе в Согласовании) должно отправляться email оповещение всем людям, у которых есть доступ к документу

Изменения настроек прав доступа к документам для ролей

Текущее поведение

На данный момент настройка прав настраивается в соответствие с ролью пользователя в проекте и выглядит вот так
image

Доработки

Данную ситему необходимо упростить, сделав некоторые манипуляции:

  1. Display system folders и View documents объединить настройки, предоставляя доступ на просмотр документов в проекте. Те документы, которые прикреплени к задачам с ограничением видимости для роли не отобрааются в списке документов независимо от данной настройки.

  2. add/delete document's watcher объединить в одну настройку

  3. add/delete folder watchers объединить в одну настройку. При добавлении наблюдателя к папке наблюдатель прикрепляется ко всем документам в папке

  4. add/view/delete project watchers удалить за ненадобностью

  5. User preferences удалить за ненадобностью

  6. File approval доработать в соответствие с #10

  7. Manage workflows удалить

  8. View downloads in activity stream удалить

  9. View revisions in activity stream удалить, так как доступ к версиям документа будет предоставляться через единую настройку View documents

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.