Диплом: Автоматизация документооборота организации на примере ООО "Технопарк-центр"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
76
Рисунок 21. Архитектура ИС (Model-view-controller)
Список разработанных программных модулей и их назначений представлен в
таблице 21.
Таблица 21
Программные модули
Номер
Название
Описание
1
routing.yml
Файл с настройками маршрутов для маршрутизатора
Symfony 2
2
DefaultContoller.php
Класс контроллера, обрабатывающий маршрут
главной страницы информационной системы
3
DepartmentController.php
Класс контроллера, содержащий методы для
отображения данных и форм об отделах компании,
обработки отправленных форм
4
DocController.php
Класс контроллера, содержащий методы для
отображения данных и форм работы с документами,
комментариями и файлами к ним, обработки
отправленных форм
5
StaffController
Класс контроллера, содержащий методы для
отображения данных и форм о должностях
компании, обработки отправленных форм
77
6
TypeDocController.php
Класс контроллера, содержащий методы для
отображения данных и форм о типах документов,
обработки отправленных форм
7
SecurityController.php
Класс контроллера, содержащий методы и функции,
необходимые для реализации функций авторизации,
выхода из сайта, управления профилем пользователя
8
UsersController.php
Класс контроллера, содержащий методы для
отображения данных и форм о пользователях,
обработки отправленных форм
9
User.php
Класс модели, содержащий атрибуты и методы для
работы с объектом пользователя
10
Department.php
Класс модели, содержащий атрибуты и методы для
работы с объектом отдела
11
Doc.php
Класс модели, содержащий атрибуты и методы для
работы с документом
12
Comment.php
Класс модели, содержащий атрибуты и методы для
работы с объектом комментария к документу
13
Status.php
Класс модели, содержащий атрибуты и методы для
работы с объектом статуса документа
14
Role.php
Класс модели, содержащий атрибуты и методы для
работы с объектом роли пользователя
15
TypeDoc.php
Класс модели, содержащий атрибуты и методы для
работы с типом документа
16
Staff.php
Класс модели, содержащий атрибуты и методы для
работы с должностью
17
DepartmentFormType.php
Класс формы управления данными отдела
18
LoginFormType.php
Класс формы авторизации
19
DocFormType.php
Класс формы управления данными документа
20
CommentFormType
Класс формы отправки комментария
21
DocFilterFormType.php
Класс формы для реализации фильтра в списке
документов
22
StatusFormType.php
Класс формы управления данными статусов
документов
23
StaffFormType.php
Класс формы управления данными должности
24
TypeDocFormType.php
Класс формы для управления данными типа
документа
25
ProfileFormType.php
Класс формы для реализации работы с профилем
пользователя
26
UserFormType.php
Класс формы для реализации работы с данными
пользователя
27
UserFilterType.php
Класс формы для реализации фильтра в списке
пользователей
На рисунке 22 приведено дерево вызова программных модулей.
78
Рисунок 22. Дерево вызова программных модулей
2.3.4. Описание программных модулей
Каждый контролер обрабатывает запросы, отправляемые по
соответствующему маршруту. Описание того, какой контроллер должен обрабатывать
тот или иной маршрут оформляется в виде отдельного файла:
routing.yml.
Пример записи (главная страница ИС):
79
index:
path: /
defaults: { _controller: "AppBundle:DefaultController:Index" }
Такая запись означает следующее:
- первая строка – название маршрута (index);
- вторая строка – путь, или URL-адрес маршрута (/);
- третья строка – имя класса контроллера, который должен обрабатывать
маршрут, а также метод этого контроллера, ответственный именно за этот маршрут;
Обработка маршрута выполняется в контроллере DefaultController.php. При
переходе по маршруту (отправке запроса на url /) начинает свою работу метод
IndexAction. Данный метод проверяет наличие у пользователя открытой сессии
авторизации, и если такой нет, то перенаправляет пользователя на форму авторизации
(маршрут /login, Контроллер SecurityController.php).
Для обработки шаблонов и формирования на их основе html-страниц,
отображаемых пользователю, используется распространенный шаблонизатор twig.
Twig компилирующий обработчик шаблонов с открытым исходным кодом,
написанный на языке программирования PHP. Синтаксис, поддерживаемый
шаблонизатором позволяет использовать в шаблонах ветвления, циклы, а удобная
структура кода позволяет значительно сократить итоговый объем программного кода.
Также стоит отметить, что шаблонизатор генерирует на основе своих шаблонов чистый
php-код, который обрабатывается значительно быстрее.
При переадресации на маршрут открытия формы (/login), срабатывает метод
loginAction контроллера SecurityController.php. Он создает экземпляр формы
LoginFormType.php и обрабатывает её отправку. На рисунке 23 приведен алгоритм
работы данного метода.
80
Рисунок 23. Алгоритм работы метода loginAction
После успешного прохождения авторизации, пользователю отображается
страница со списком документов. Данную страницу формирует метод indexAction
контроллера DocController.php на основании шаблона Documents:index.html.twig.
Методы остальных контроллеров работают аналогичным образом. Исходный код
программных модулей приведен в приложении 1.
2.4 Контрольный пример реализации проекта и его описание
При открытии страницы сайта открывается форма авторизации (Рисунок 24).
81
Рисунок 24. Форма авторизации
После прохождения авторизации открывается раздел работы с документами. В
данном разделе отображаются все документы, к которым имеет отношение
пользователь. Над списком документом отображается форма для поиска и фильтрации
документов (Рисунок 25).
Рисунок 25. Раздел работы с документами
При нажатии на кнопку создания нового документа отображается
соответствующая форма (Рисунок 26).
82
Рисунок 26. Форма создания документа
Поле заполнения формы и отправки данных созданный документ отображается
в списке всех документов. При клике на название или номер данного документа в
списке открывается страница работы с документом: в верхней части страницы
отображаются данные по документу, либо список файлов (на отдельных вкладках), а
ниже – комментарии к данному документу в виде чата. Под чатом находятся кнопки
для управления документом. (Рисунок 27).
83
Рисунок 27. Страница работы с документом
Для управления справочниками необходимо перейти в соответствующий
раздел с помощью панели навигации. Работа со всеми справочниками построена по
следующей схема: при переходе в раздел открывается страница со списком записей
соответствующего справочника. Для добавления новой записи нужно нажать на
соответствующую кнопку, для редактирования добавленной ранее – щелкнуть на эту
запись в списке.
Например, на рисунке 28 приведен скриншот страницы со списком записей
справочника «Пользователи системы».
84
Рисунок 28. Страница со списком пользователей систем
Для добавления нового пользователя необходимо нажать кнопку «Добавить
пользователя», для редактирования данных какого-либо пользователя необходимо
щелкнуть на его имя в списке. Откроется форма работы с данными пользователя
(Рисунок 29).
Рисунок 29. Форма работы с данными пользователя
85
Аналогично строится работа и с другими справочниками системы. Для работы
с каждым справочником отведен отдельный раздел. Перемещение между разделами
осуществляется с помощью навигационной панели, расположенной в левой части
экрана.
Также каждый пользователь может отредактировать данные своего
пользователя, нажав на кнопку «Профиль», которая находится в верхней панели
навигации по разделам сайта. Откроется форма работы с профилем, с помощью
которой пользователь может сменить любые свои регистрационные данные, кроме
логина (Рисунок 30).
Рисунок 30. Форма работы с данными профиля

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)