Диплом: Автоматизация документооборота организации на примере Дирекции информационных систем АО «Казахтелеком»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
78
пользователя
Пароль
пользователя (в
зашифрованном
виде)
Password
Varchar
120
Email
пользователя
Email
Varchar
120
Таблица 10
Таблица user_roles
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код
пользователя
Id
Integer
4
Код роли
Roleid
Integer
4
Таблица 11
Таблица role
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код роли
Roleid
Integer
4
AI
Наименование
роли
Caption
Varchar
120
Таблица 12
Таблица department
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код отдела
Id
Integer
4
AI
Наименование
Caption
Varchar
120
79
отдела
Таблица 13
Таблица staff
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код
должности
Id
Integer
4
AI
Наименование
должности
Caption
Varchar
120
Таблица 14
Таблица status
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код статуса
Id
Integer
4
AI
Наименование
статуса
Caption
Varchar
120
Таблица 15
Таблица typedoc
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код тип
документа
Id
Integer
4
AI
Наименование
типа
документа
Caption
Varchar
120
80
Таблица 16
Таблица department_types
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код типа
Typeid
Integer
4
Код отдела
departmentid
Integer
4
Таблица 17
Таблица staff_types
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код типа
Typeid
Integer
4
Код
должности
Staffid
Integer
4
Таблица 18
Таблица document
Наименование поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код документа
Id
Integer
4
AI
Наименование
документа
Caption
Varchar
225
Описание
документа
Description
Longtext
225
NULL
Код
пользователяавтора
документа
Authorid
Integer
4
Код пользователя,
принявшего
документа
Recipientid
Integer
4
Код статуса
statusid
Integer
4
81
Дата создания
createdat
datetime
10
Срок
deadline
datetime
10
Код типа
typeid
Integer
4
Таблица 19
Таблица uploadfile
Наименование поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код файла
id
Integer
4
AI
Дата загрузки
createdat
datetime
10
Путь к файлу
pathfile
Varchar
225
Код документа
docid
Integer
4
Код
пользователяавтора
Authorid
Integer
4
Таблица 20
Таблица comment
Наименование поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код комментария
id
Integer
4
AI
Текст комментария
commenttext
Longtext
65655
Дата отправки
комментария
createdat
datetime
10
Код
пользователяавтора
Authorid
Integer
4
Код документа
documentid
Integer
4
2.3.3 Структурная схема пакета (дерево вызова программных модулей)
Для написания информационной системы автоматизации
документооборота использовался фреймворк языка php Symfony 2. Данный
фреймворк работает с подходом к программированию, называемый Model-
82
viewcontroller (MVC, «модель-представление-контроллер», «модель-
видконтроллер»).
Основная идея данного подхода заключается в разделении данных, их
представлений и обработку действий пользователей на три больших группы:
- Модель (англ. Model). Модель предоставляет знания: данные и методы
работы с этими данными, реагирует на запросы, изменяя своё состояние. Объекты
данной группы не содержат информации, как эти знания можно визуализировать.
- Представление, вид (англ. View). Отвечает за отображение информации
(визуализацию). Часто в качестве представления выступает форма (окно) с
графическими элементами. Главная задача – представить информацию, хранимой в
модели в виде, воспринимаемым пользователем.
- Контроллер (англ. Controller). Обеспечивает связь между пользователем и
системой: контролирует ввод данных пользователем и использует модель и
представление для реализации необходимой реакции.
Важно отметить, что как представление, так и контроллер зависят от
модели. Однако модель не зависит ни от представления, ни от контроллера. Тем
самым достигается назначение такого разделения: оно позволяет строить модель
независимо от визуального представления, а также создавать несколько различных
представлений для одной модели.
Общая схема архитектуры информационной системы согласно данной
парадигмы изображена на рисунке 17.
83
Рисунок 17. Архитектура ИС (Model-view-controller)
Список разработанных программных модулей и их назначений представлен
в таблице 21.
Таблица 21
Программные модули
Номер
Название
Описание
1
routing.yml
Файл с настройками маршрутов для
маршрутизатора Symfony 2
2
DefaultContoller.php
Класс контроллера, обрабатывающий
маршрут главной страницы
информационной системы
3
DepartmentController.php
Класс контроллера, содержащий методы
для отображения данных и форм об
отделах компании, обработки
отправленных форм
84
4
DocController.php
Класс контроллера, содержащий методы
для отображения данных и форм работы с
документами, комментариями и файлами к
ним, обработки отправленных форм
5
StaffController
Класс контроллера, содержащий методы
для отображения данных и форм о
должностях компании, обработки
отправленных форм
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
Класс модели, содержащий атрибуты и
методы для работы с объектом роли
пользователя
85
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
Класс формы для реализации фильтра в
списке пользователей
На рисунке 18 приведено дерево вызова программных модулей.
86
Рисунок 18. Дерево вызова программных модулей.
2.3.4. Описание программных модулей
Каждый контролер обрабатывает запросы, отправляемые по
соответствующему маршруту. Описание того, какой контроллер должен
обрабатывать тот или иной маршрут оформляется в виде отдельного файла:
87
routing.yml.
Пример записи (главная страница ИС):
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 и обрабатывает её отправку. На рисунке 19 приведен алгоритм
работы данного метода.

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

«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран
Work-life balance подход в управлении рабочим временем молодых сотрудников (на примере ООО «МГТ-сервис»)
Автоматизация и обеспечение информационной безопасности документооборота организации ООО "СтройИнвест"
Автоматизация и обеспечение информационной безопасности приёма и обработки заявок отделом техподдержки в "Росагро"
Автоматизация и обеспечение информационной безопасности управления сервисного обслуживания клиентов в ООО Сигма-трейд
Автоматизация межбанковских операций на примере ООО КБ «РОСАВТОБАНК»