Диплом: Разработка информационной системы для ООО "Авто Взгляд" на базе 1С: Предприятие

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
48
ка в
записях
ации
ии, %
1
Автомобили
Логист
15
1 раз в
месяц
10
2
Типы
автомобилей
Логист
10
1 раз в год
10
3
Водители
Логист
25
1 раз в
месяц
10
4
Интервалы
времени
доставок
Логист
2
1 раз в год
100
Справочники автомобилей и водителей актуализируются приблизительно
раз в месяц. Покупаются новые автомобили, списываются старые. Иногда
бывают изменения в типе автомобилей. Также время от времени меняется
штатный состав водителей автомобилей, приходят новые сотрудники, уходят
старые, эти данные необходимо поддерживать в актуальном состоянии.
Остальные справочники носят нормативный характер и актуализируются
раз в год.
Реквизитный состав каждого справочника представлен в виде таблицы 3.
Таблица 4
Реквизитный состав справочников информационной системы
п/п
Наименование
справочника
Перечень реквизитов
1
Автомобили
Наименование
Регистрационный номер
Тип автомобиля
Грузоподъемность
Размеры кузова
Расход топлива
Комментарий
2
Типы автомобилей
Наименование
3
Водители
ФИО
Телефон
4
Интервалы времени доставок
Интервал
Редактирование и ввод новых записей во все справочники
осуществляется с помощью специальных форм.
В качестве входных данных для информационной системы автоматизации
транспортной доставки товаров выступает список доставок на заданную дату.
49
Этот список загружается в ИС в виде файла в формате Excel с помощью формы,
макет которой приведен на рисунке 10.
Рисунок 10 - Макет формы для загрузки файла со списком доставок
Файл электронной таблицы формируется текущей информационной
системой, используемой в компании: ПО «Парус» и имеет структуру,
приведенную на рисунке 11. Если структура отличается от приведенной, то
загрузки данных о доставках не происходит, выводится соответствующее
сообщение.
Рисунок 11 - Структура файла со списком доставок
Данные, введенные в формы, которые приведены выше, сохраняются в
базе данных и используются для формирования выходных данных.
2.2.2. Характеристика нормативно-справочной, входной и
оперативной информации
В качестве результатной информации работы информационной системы
выступают сформированные маршрутные листы и акты приема-передачи,
которые выгружены в программу Microsoft Word.
50
Базовый набор функций разработанной информационной системы можно
изобразить в виде дерева, изображенного на рисунке 12.
Функции
информационной
системы
Управление
справочниками
Управление список
доставок
Формирование
маршрутных листов и
актов
Автомобили
Типы автомобилей
Водители
Интервалы доставок
Загрузка файла
Рисунок 12 - Дерево функций
Выполнение функций разработанной информационной системы
осуществляется с помощью ведения диалога с пользователем. То есть
Пользователь информационной системы выполняет какие-то действия, а
программа соответствующим образом на них реагирует. Сценарий диалога с
пользователем представлен на рисунке 13.
51
Авторизация
Работа со
справочниками
Выбор справочника
Работа с доставками
Формирование
маршрутного листа
Добавление
записи
Изменение
записи
Удаление
записи
Загрузка файла
Корректировка
результатов загрузки
файла
Выбор даты
Выбор свободных
автомобилей
Корректировка
сформированных
маршрутов
Выгрузка маршрутных
листов и актов
Рисунок 13 - Сценарий диалога
Началом диалога является запрос логина и пароля пользователя для
доступа в систему. Затем пользователю предлагается выбрать задачу, которую
он собирается решить. В зависимости от выбора пользователя ему открываются
различные формы пользовательского интерфейса, предназначенные для
решения выбранной задачи.
2.3. Программное обеспечение задачи
2.3.1. Общие положения (дерево функций и сценарий диалога)
В качестве системы управления базой данный для разрабатываемой
информационной системы была выбрана СУБД Mysql.
Для хранения всех данных, необходимых для деятельности ИС, была
создана база данных, состоящая из семи таблиц:
автомобили (car);
типы автомобилей (cartype);
доставки (delivery);
52
интервалы времени (interval);
водители (driver);
водители автомобилей (cardriver);
маршрутные листы (list);
ER-модель базы данных приведена на рисунке 14.
Рисунок 14 - ER-модель базы данных
2.3.2. Характеристика базы данных
Описание всех таблиц базы данных представлено в таблицах 5-10.
Таблица 5
Таблица car
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код автомобиля
id
int
4
AI
Наименование
caption
varchar
120
Регистрационный
номер
regnumber
varchar
120
Грузоподъемность
capacity
decimal
120
Размеры кузова
bodysizes
varchar
120
Расход топлива
fuelcons
decimal
4
Комментарий
comment
varchar
255
Тип автомобиля
cartypeid
int
4
Дата создания
записи
createdat
datetime
10
Дата последнего
изменения записи
modifiedat
datetime
10
car
id
caption
regnumber
capacity
bodysizes
fuelcons
comment
cartypeid (FK)
createdat
modifiedat
driver
id
caption
phone
createdat
modifiedat
delivery
id
delivarydate
address
phone
typegruz
ordernum
weight
comment
intervalid (FK)
listid (FK)
cartype
Id
caption
createdat
modifiedat
interval
id
caption
list
id
carid (FK)
alllength
begintime
endtime
deliverydate
createdat
modifiedat
driverid (FK)
comment
allweight
cardriver
id
driverid (FK)
carid (FK)
53
Таблица 6
Таблица driver
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код водителя
id
int
4
AI
ФИО
caption
varchar
255
Телефон
phone
varchar
120
Дата создания
записи
createdat
datetime
10
Дата последнего
изменения
записи
modifiedat
datetime
10
Таблица 7
Таблица cardrivers
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код записи
id
int
4
AI
Код автомобиля
carid
int
4
Код водителя
driverid
int
4
Дата создания
записи
createdat
datetime
10
Дата последнего
изменения
записи
modifiedat
datetime
10
Таблица 8
Таблица cartype
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код типа
id
int
4
AI
Наименование
caption
varchar
120
Дата создания
записи
createdat
datetime
10
Дата последнего
изменения
записи
modifiedat
datetime
10
Таблица 9
Таблица delivery
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Код доставки
id
int
4
AI
Дата доставки
deliverydate
date
10
Маршрутный
лист, в котором
отражена
доставка
listid
int
4
Адрес доставки
address
varchar
255
54
Контактный
телефон
phone
varchar
255
Типы грузов
typegruz
varchar
255
Номер заказа
клиента
ordernum
varchar
10
Общий вес груза
weight
decimal
4
Комментарий
менеджера по
работе с
клиентами
comment
varchar
255
Дата создания
записи
createdat
datetime
10
Дата последнего
изменения
записи
modifiedat
datetime
10
Таблица 10
Таблица list
Наименование
поля
Идентификатор
поля
Тип поля
Длина поля
Прочее
Номер
маршрутного
листа
id
int
4
AI
Код автомобиля
carid
int
10
Протяженность
маршрута
alllength
decimal
255
Общий вес всех
грузов
allweight
decimal
4
Начало движения
по маршруту
begintime
datetime
10
Окончания
движения по
маршруту
endtime
datetime
10
Дата доставки
deliverydate
datetime
10
Комментарий
логиста
comment
varchar
255
Код водителя
driverid
int
4
Дата создания
записи
createdat
datetime
10
Дата последнего
изменения записи
modifiedat
datetime
10
2.3.3. Структурная схема пакета (дерево вызова программных
модулей)
Для написания программного использовался язык php. Для ускорения
разработки было решено использовать фреймворк Symfony 2. Данный
фреймворк работает с подходом к программированию, называемый Model-
55
view-controller (MVC, «модель-представление-контроллер», «модель-вид-
контроллер»).
Основная идея данного подхода заключается в разделении данных, их
представлениях и обработку действий пользователей на три больших группы:
Модель (англ. Model). Модель предоставляет знания: данные и
методы работы с этими данными, реагирует на запросы, изменяя своё
состояние. Объекты данной группы не содержит информации, как эти знания
можно визуализировать.
Представление, вид (англ. View). Отвечает за отображение
информации (визуализацию). Часто в качестве представления выступает форма
(окно) с графическими элементами. Главная задача – представить информацию,
хранимой в модели в виде, воспринимаемым пользователем.
Контроллер (англ. Controller). Обеспечивает связь между
пользователем и системой: контролирует ввод данных пользователем и
использует модель и представление для реализации необходимой реакции.
Каждый контролер обрабатывает запросы, отправляемые по
соответствующему маршруту, общая схема всех маршрутов информационной
системы (дерево вызова программных модулей) и обрабатывающих их
контроллеров приведена на рисунке 15.
56
SecurityController
GeneralController
/
/login
/login-check
/logout
/sprav/cars
/sprav
/sprav/cars/add
/sprav/cars/{car}/edit
/sprav/cars/{car}/delete
/sprav/drivers
/sprav/drivers/add
/sprav/drivers/{driver}/edit
/sprav/drivers/{driver}/delete
/sprav/cartypes
/sprav/cartypes/add
/sprav/cartypes/{cartype}/edit
/sprav/cartypes/{cartype}/delete
/sprav/intervals
/sprav/intervals/add
/sprav/intervals/{interval}/edit
/sprav/intervals/{interval}/delete
/delivery
/delivery/add
/delivery/{delivery}/delete
/lists
lists/new
lists/new/correct
/lists/{list}/download
Рисунок 15 - Общая схема маршрутов и контроллеров
То есть при переходе по определенному адресу, принадлежащему
информационной системе, вызывается соответствующая функция-обработчик
вызванного маршрута, которая прописана в соответствующем программном
модуле. Если такого маршрута не существует, или пользователю запрещен к
нему доступ, то вызывается обработчик исключения, который показывает
пользователю сообщение об ошибке. Большинство функций-обработчиков
маршрутов выполняют действия по запросу информации из базы данных (а
точнее у объектов модели данных), производят над ними необходимые
действия и отображают результат выполнения этих действий в виде страниц
сайта.
2.3.4. Описание программных модулей
Для разработки информационной системы автоматизации бизнес-
процесса транспортной доставки заказов использован объектно-
ориентированный подход. Его основной являются классы и объекты, которые
создаются на их основе.
Классы, созданные в программном коде информационной системы,
можно разделить на две группы:
57
Классы, относящиеся к модели данных (Model);
Классы, относящиеся к контроллерам обработки запросов
пользователей (Controller);
Для реализации представлений (View) классы не создавались, а
использовались шаблоны html-страниц, в которые контроллер подставляет
результаты обработки информации, полученной от модели данных.
Все объекты в разработанной информационной системе, созданные на
основе классов первой группы, связаны с таблицами базы данных. Каждое поле
таблицы стало атрибутом соответствующего класса. И для каждого такого
атрибута было добавлено два метода: метод set и метод get. Первый
устанавливает значение соответствующего атрибута класса, а второй, наоборот,
считывает.
Перечень классов первой группы:
Car;
Driver;
Delivery;
CarType;
Interval;
List;
Ко второй группе относятся контроллеры:
GeneralController – содержит методы для выполнения основных
функций информационной системы;
SecurityController – содержит методы для обеспечения
безопасности: авторизация и выход пользователя.
Рассмотрим более подробно процедуру авторизации пользователя в
системе. Данный маршрут (/login) обрабатывает метод loginAction контроллера
SecurityController.php. Он создает экземпляр формы LoginFormType.php и
обрабатывает её отправку. На рисунке 16 приведен алгоритм работы данного
метода.

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

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