Для одного из известных филиалов банка моего города требовалось разработать проект документооборота.
Задача - полностью избавиться от бумаг в пределах одного здания.
Для этого потребовалось разработать свою небольшую cms (на базе моей цмс).
В системе необходимо было реализовать:
* Управление пользователями
* Управление группами пользователей
* Конструтор прав доступа для групп пользователей
* Управление настройками системы
* Конструктор настроек
* Роутер
* Модульность
* Шаблонизатор (была реализована идея описанная
здесь)
* Лёгкое управление базой и кешированием.
* Реализация модулей должна быть полностью на MVC.
Что касается модуля, требовалось:
* Создавать документы
* К каждому документу можно загружать неограниченное кол-во файлов
* При создании документу должен назначатся исполнитель.
* Должна быть возможность создания очереди исполнителей (в случае если конкретный исполнитель недоступен по истечению определённого времени, то задача передаётся следующему пользователю, процес полностью автоматический)
* Пользователи могут просматривать все документы
* Каждому конкретному документу должна быть возможность назначать статус в зависимости которого документ должен передвигаться в системе. Допустим директор утвердил задачу, она передаётся, зам-директору, зам-директор утвердил задачу и назначил начальника отдела, задача передаётся ему, тот определяет исполнителя, по завершению им задачи документ проделывает обратный путь, но в этом случае пользователи только накладывают свои "визы" (согласен\не согласен)
* Любой пользователь может оставлять любой комментарий к документу
* Для уже созданных документов должна быть возможность добавлять новые файлы.
* Удалять документы нельзя. Документы уходят в архив.
* При выполнении какого либо действия над документом должна вестись история, кто, что, когда делал. Должна быть возможность просмотреть все операции над конкретным документом.
* Должны быть 2 справочника типы документов и категории документов.
создание нового документа
просмотр документа
типы документов
история всех операций
Список отделов банка
Правила групп пользователей
Настройки роутера
Настройки системы
Статусы задач
Группы пользователей
Список пользователей