Введение
Система электронного документооборота «СЭД 36» предназначена для автоматизации процессов документационного обеспечения управления организации. В настоящий момент автоматизированы следующие процессы:
- полный цикл обработки входящих документов организации (регистрация, рассмотрение, исполнение, списание в дело);
- полный цикл обработки исходящих документов организации (создание, согласование, подписание, регистрация);
- полный цикл обработки служебных записок между подразделениями организации (создание, подписание, рассмотрение, исполнение);
- полный цикл создания, исполнения и контроль исполнения цепочек поручений;
- ведение организационно-распорядительных документов организации (распоряжения, постановления, приказы, протоколы совещаний);
- полный цикл обработки обращений граждан (регистрация, рассмотрение, исполнение и ответ заявителю);
- ведение договорной деятельности организации.
Авторизованная работа пользователей в системе осуществляется через простой и удобный WEB интерфейс. О всех событиях пользователю приходит уведомление по электронной почте. Ведется журналирование всех событий в системе.
«СЭД 36» разработана на языке программирования Python, используется СУБД PostgreSQL.
Система электронного документооборота «СЭД 36» включает следующие модули: - Поручения
- Документы
- Справочники
Модуль «Поручения»
Модуль поручений состоит из следующих моделей:
- Assignment
- AssignmentWithResponsible
- DraftAssignment
- AssignmentHistory
- AssignmentView
Assignment
Основная модель в модуле, от которой наследуются остальные типовые модели. В процессе изменения статусов объект модели Assignment остается неизменным.
AssignmentHistory
Модель, сохраняющая состояние поручения в момент перехода из одного статуса в другой. Именно по объекту AssignmentHistory определяется текущее состояние Assignment. В процессе перехода статусов сохраняются следующие данные: изменивший поручение пользователь, ответ (или комментарий) на поручение и статус.
DraftAssignment
Модель для сохранения черновика поручения с неединственным исполнителем. Данная возможность реализована через вспомогательную модель CoimplementersOfDraftAssignment. В случае отправки объекта поручения такого типа (перевода из состояния черновика в состояние «на исполнении») с помощью внутреннего метода создаются объекты Assignment для каждого из исполнителей.
AssignmentWithResponsible
Модель создана для определения поручения с ответственным исполнителем (в случае нескольких исполнителей выделяется объект, указывающий на ответственного исполнителя). В данном типе поручений некоторые процессы перехода статусов происходят иначе, для этого данный клас был выделен и используется в процессе создания поручений.
AssignmentView
Объекты данной модели создаются для выделения новых (не просмотренных пользователем) поручений, относящихся к пользователю. После просмотра поручения (перехода в карточку) объект удаляется.
Модуль «Документы»
Модуль состоит из следующих моделей:
- Document
- InputDocument
- InternalDocument
- OutputDocument
- ExecutiveDocument
- Contract
- DocumentView
Document
Основная (родительская) модель для всех видов документов. В ней описаны поля, повторяющиеся во всех вариациях документов
InputDocument
Модель, предназначенная для сохранения входящих документов.
InternalDocument
Модель, предназначенная для сохранения внутренних документов.
OutputDocument
Модель, предназначенная для сохранения исходящих документов.
ExecutiveDocument
Модель, предназначенная для сохранения организационно-распорядительных документов.
Contract
Модель, предназначенная для сохранения договоров.
DocumentView
Объекты данной модели создаются для выделения новых (не просмотренных пользователем) документов, относящихся к пользователю. После просмотра документа (перехода в карточку) объект удаляется.
Модуль «Справочники»
Модуль состоит из следующих моделей:
- Customer
- ContactPerson
- Organization
- CompanyStructure
- Numerator
- NomenclatureOfDeal *
- InputDocumentType
- ExecutiveDocumentType
- ContractType
- ProjectCipher
Customer
Модель описывает объект контрагента с соответствующими полями.
ContactPerson
Описывает лицо в структуре контрагента, существует в связке с моделью Customer.
Organization
Описывает место регистрации документов ¬– текущую организацию или ее подотдел.
CompanyStructure
Описывает структурное подразделение текущей организации (Organization), необходимо для разделения пользователей по отделам.
Numerator
Описывает счетчик для порядкового номера документа. Выделен для возможности добавлять единый номер для нескольких номенклатур либо же разделять счетчики номенклатур.
NomenclatureOfDeal
Описывает номенклатуру дел. Имеет счетчик (Numerator), собственный объект Permission (для ограничения регистрации по номенклатуре), закрепляется за отдельной организацией.
- созданы классы InputDocumentNomenclatureOfDeal, InternalDocumentNomenclatureOfDeal, OutputDocumentNomenclatureOfDeal, ExecutiveDocumentNomenclatureOfDeal, ContractNomenclatureOfDeal.
InputDocumentType, ExecutiveDocumentType, ContractType
Модели обладают схожим строением и описывают тип документа.
ProjectCipher
Модель описывает шифр проекта (документа), может быть использован в документах.
Модуль «Пользователи»
Модуль состоит из следующих моделей:
- EdmsUser
- Delegation
EdmsUser
Модель описывает объект пользователя системы.
Delegation
Модель описывает делегирование прав от одного пользователя другому. Имеет два типа – делегат и исполняющий обязанности. В зависимости от типа и пользователя, делегирующего права, подчиненный получает дополнительные возможности работы с Документами и Поручениями, переключившись в режим делега