Разработка информационной системы для ООО "СервисКом"

Разработка информационной системы для автоматизации сбора, хранения, обработки и предоставления информации в удобной для пользователя форме о работе компании. Применение Qt-Creator и DB Browser, проектирование базы данных и клиентского приложения.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 07.08.2018
Размер файла 552,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

QtSql -- содержит классы для работы с различными базами данных с использованием языка SQL.

QtSvg -- содержит классы, позволяющие работать с данными Scalable Vector Graphics (SVG)

QtXml -- классы для работы с XML

QtScript -- классы для работы с Qt Scripts

Имеются и другие модули.

В данный момент Qt распрастраняется по 3-м лицензиям: Qt Commercial(собственическая), GNU GPL, GNU LGPL.

3.2 Проектирование клиентского приложения

Требуется разработать пользовательское приложение. Приложение должно иметь функции, сопровождения по всем этапам предоставления услуг, вывод, редактирование, удаление, предоставление в удобном для пользователя виде и поиск по данным.

Главное окно, в нем будет три вкладки (Рис. 3.1):

* Текущие заказы

* Клиенты

* Сотрудники

рис 3.1 -- Главное окно

Текущие заказы. На ней отображены, таблица с заказами, с которыми сейчас работаем и кнопки взаимодействия с ней. При нажатие нового заказа, появится новое окно (Рис. 3.2).

Рис. 3.2 -- Окно поиска заказчика

В котором пользователь сможет выбрать из списка уже тех, кто запрашивали у них услуги. Если нужный клиент найден, нажимаем, да и вся информация о клиенте перейдет в форму новой заявки. Если такового нет нажимаем нет и заполнять информацию о клиенте нужно будет заново.

После того как мы определились с тем есть ли тут нужный нам клиент откроется форма заявки (рис 3.3).

Рис. 3.3-- Форма заявки

В которой нужно будет заполнить форму заказчика, добавить файл заявки, который прислала клиент, выбрать сметчика, он будет оценивать стоимость запрошенных услуг, выбрать услуги, которые требуется заказчику. Так же при наведении на имя сметчика, отобразится его загруженность по работе, что бы можно было проще распределить работу. При нажатии отмены, мы вернемся в главное меню, а при нажатии на добавить, если заказчика нет в базе добавит его, заведет новый объект работы, закрепит над работой выбранные услуги, назначит на него сметчика и выставит ей статус ожидание оценщика, если же заказчик уже есть в базе повторит все те же действия кроме добавления заказчика в базу.

Следующий этап, сметчик пришел со сметой, мы нажимает следующий этап, появится форма, в которой нужно заполнить окончательную стоимость оказываемых услуг и добавить файл сметы (рис 3.4).

Рис. 3.4 -- Окно заполнения сметы

информационная система клиентское приложение

При выборе отмены, мы также, как и в предыдущей форме перейдем в главное окно, а при принять, в базе к этой работе добавиться стоимость услуг, файл сметы, выставится статус заключение договора и закончится работа сметчика.

Следующий этап, договор был оформлен, мы нажимаем на следующий этап, отобразится форма, в которой нужно будет добавить файл договора, назначит сотрудников на эту работу, заполнить сроки сдачи работы, так же, как и при создании нового заказа, наведя на сотрудников можно посмотреть на сколько кто загружен работой (Рис. 3.5).

Рис. 3.5 -- Окно заполнения договора

Так же, как и ранее при выборе отмены, мы попадем в главное меню, при принять, за работой назначаются выбранные сотрудники, добавляется файл договора, сроки сдачи работы заказчику и сменяется ее статус на выполнение работы.

Следующий этап, договор был выполнен. В нем не появляется дополнительного окна, только сменяется статус на выполнено и закрывает работу сотрудников.

При нажатии кнопки зарыть заказ, так же не появляется дополнительное окно, только сменяется статус на, заказчик отказался от услуг.

При нажатии приостановить/продолжить сменяется статус на работа приостановлена/статус который был до приостановки работы.

Во вкладке клиенты отображается список клиентов, которые к нам обращались с полной информацией о них и две кнопки (Рис. 3.6).

Рис. 3.6 -- Вкладка клиенты

Во вкладке сотрудники отображается список сотрудников и две кнопки, редактирование и удаление информации о сотруднике (Рис. 3.7).

Рис. 3.7 -- Вкладка сотрудники

3.4 Написание исходного кода клиентского приложения

Создаем основной файл main. Из которого и будет запускаться пользовательское приложение. В нем создаем объект главного окна и запускаем[8].

Далее создаем файлы mainwindow, в которых будет описан класс главного окна.

MainWindow::MainWindow(QWidget *parent):QMainWindow(parent)

Метод инициализирующий этот класс. В нем подключаемся к базе данных с помощью

db_ = QSqlDatabase::addDatabase("QSQLITE");

db_.setDatabaseName("D:\\qwe\\dip\\database.db");

И еще создаются три объекта классов, которые будут наполнением вкладок и объект самих вкладок.

Создаем файлы jobstatus, в которых будет описана вкладка текущие заказы.

JobStatus::JobStatus(QSqlDatabase db, QWidget *parent):QWidget(parent)

Метод инициализирующий этот класс. В нем создаем таблицу, кнопки.

db - база данных переданная из основного окна.

void JobStatus::stopStage()

Метод приостанавливающий работу или возращающая ее в обратное состояние.

void JobStatus::closeOrder()

Метод закрывающий работу.

updataButtonSuspendContinueOrder(QModelIndex i)

Метод нужный для того чтобы изменялась кнопка, в зависимости от того какой статус стоит.

void JobStatus::nextStage()

Метод с помощью которого мы проходимся по всем этапам предоставления услуг.

void JobStatus::handleButtonNewOrder()

Метод в котором вызываются окна заполнения нового заказа.

void JobStatus::updateTable()

Метод который обновляет таблицу после изменения базы данных.

Создаем файлы newordercustomers, который будет окном, в котором можно будет посмотреть если ли уже заказчик с такими данными или нет.

NewOrderCustomers::NewOrderCustomers(QSqlDatabase db, QWidget *parent):QWidget(parent)

Метод инициализирующий этот класс. В нем создаем список клиентов, форму отображающую информацию о выбранном клиенте и две кнопки, да и нет.

void NewOrderCustomers::acceptedJobAdded()

Метод в котором отправляем сигнал главному окну что мы закончили и после закрываем окно.

void NewOrderCustomers::handleButtonNo()

Метод который срабатывает при нажатии кнопки нет. Он создает окно заполнения нового заказа и ожидает сигнала от него что он закончил свою работу.

void NewOrderCustomers::handleButtonYes()

Метод срабатывающий при нажатии кнопки да. Он создает окно заполнения нового заказа, но при это еще и отправляет информацию о заказчике из базы, которого мы выбрали. И так же ожидает сигнала об окончании работы этого окна.

void NewOrderCustomers::updateLineEdit(QModelIndex i)

Метод заполняющий поля о заказчике, которого мы выбрали из списка.

void NewOrderCustomers::updateList()

Метод обновляющий список о всех наших заказчиках.

Создаем файлы neworderother, который будет окном в котором будем отображать форму заказа.

NewOrderOther::NewOrderOther(QSqlDatabase db, QStringList arr, QWidget *parent):QWidget(parent)

Метод инициализирующий его. В нем мы создаем форму заполнения информации о заказчике, выпадающий список в котором выбираем сметчика, список услуг, мы их помечаем галочками если заказчик указал из в заявке и две кнопки, принять или отмена.

void NewOrderOther::saveEstimatorName(int i)

Метод который сохраняет уникальный идентификатор сметчика в списке.

void NewOrderOther::handleButtonAdd()

Метод выполняющийся при нажатии кнопки принять, добавляющий нового заказчика если его еще нет, а после добавляет новую работу базу данных.

void NewOrderOther::openApplicationFile()

Метод с помощью которого мы открываем файл заявки и сохраняем в переменную.

void NewOrderOther::updateRowCheck(QModelIndex i)

Метод который ставит или убирает галочки на элементах списка услуг.

void NewOrderOther::updateList()

Метод заполняющий список услуг.

void NewOrderOther::updateComboBoxEstimator()

Метод заполняющий выпадающий список сметчиков и устанавливает на каждый элемент выпадающую подсказку со всеми текущими работами.

Создаем файлы addestimate в который будет формой для заполнения цен на услуги и добавления файла сметы в базу данных.

AddEstimate::AddEstimate(QSqlDatabase db, QString id, QWidget *parent):QWidget(parent)

Метод инициализирующий этот класс. В нем мы создаем поле где будет название файла который мы открыли, кнопка для открытия дочернего окна в котором мы и будем выбирать файл, набор полей для ввода цены и две кнопки принять и отмена.

void AddEstimate::openEstimateFile()

Метод с помощью которого открываем файл заявки и сохраняем в переменную.

void AddEstimate::handleButtonAccept()

Метод выполняющийся при нажатии кнопки принять, в котором мы записываем в базу цены на услуги и устанавливаем дату окончания работы сметчика.

Создаем файлы addcontract, который будет формой, где будем добавлять файл договора, назначать людей, и установим дату, когда должны закончить работу.

AddContract::AddContract(QSqlDatabase db, QString id, QWidget *parent):QWidget(parent)

Метод инициализирующий этот класс, в котором будет строка где будет отображен открытый файл, кнопка при нажатии которой и будем открывать этот файл, два списка, один с еще не выбранными сотрудниками, другой с теми которых мы уже выбрали, плюс с всплывающими подсказками для каждого кто чем сейчас занят и две кнопки, принять и отмена.

void AddContract::openContractFile()

Метод в котором открывается окно для выбора файла и сохраняется в переменную.

void AddContract::handleButtonAccept()

Метод который срабатывает при нажатии на кнопку. В нем добавляем в базу данных файл договора и дату когда должны закончить работу, и назначаем сотрудников на работу.

void AddContract::handleButtonLeft()

Метод переносящий выбранного сотрудника из списка уже выбранных в список оставихся.

void AddContract::handleButtonRight()

Метод переносящий выбранного сотрудника из списка оставшихся в список уже выбранных.

void AddContract::saveAllId(QModelIndex i)

Метод сохраняющий ид выбранного сотрудника в списке оставшихся.

void AddContract::saveSelectedId(QModelIndex i)

Метод сохраняющий ид выбранного сотрудника в списке уже выбранных.

Создаем файлы customers который будет содержимым вкладки заказчики.

Customers::Customers(QSqlDatabase db, QWidget *parent):QWidget(parent)

Метод инициализирующий класс, в котором будет таблица со всеми заказчиками и две кнопки, первая удалить, вторая редактировать.

void Customers::updateTable()

Метод который обновляет содержимое таблицы после изменения информации в базе данных.

Создаем файлы workers который будет содержимым вкладки сотрудников.

Workers::Workers(QSqlDatabase db, QWidget *parent):QWidget(parent)

Метод инициализирующий класс, в котором будет таблица со всеми заказчиками и две кнопки, первая удалить, вторая редактировать.

void Workers::updateTable()

Метод который обновляет содержимое таблицы после изменения информации в базе данных.

Заключение

В рамках данной дипломной работы были решены следующие задачи. Были изучены основные моменты по предметной области по таким темам как, информационная система, базы данных, системы управления базами данных, язык SQL, СУБД SQLite, C++ и Qt. Было установленно программное обеспечение, Qt-Creator и DB Browser for SQLite. Поэтапно спроектированна и разработана база данных начиная с экземпляров, их связей, атрибутов и закагчивая созданием самой базой данных, нужность ее обосновывается тем что она нужна для хранения всей информации о работе компании в электронном виде, тоесть уменьшаются затраты на сопутствующие затраты и уменьшается время при работе с документо оборотом компании. А так же спроектированно и разработанно клиентское приложение, которое предоставляет возможность коректной и простой работы. Все это было сделано для достижения следующей цели, автоматизация сбора, хранения, обработки и предоставления информации в удобном для пользователя виде, о работе компании, ООО “СервисКом” и обеспечения возможности коректой и простой работы.

Размещено на Allbest.ru

...

Подобные документы

  • Анализ входной информации и процессов, уровня автоматизации на предприятии. Выявление объекта и задачи автоматизации. Разработка концепции построения информационной модели информационной системы. Разработка структуры базы данных и клиентского приложения.

    дипломная работа [2,0 M], добавлен 22.11.2015

  • Разработка базы данных для информационной системы "Библиотека". Системный анализ, инфологическое, даталогическое и физическое проектирование. Программирование бизнес-логики, разработка клиентского приложения. Создание web-приложения, web-доступ.

    курсовая работа [3,3 M], добавлен 15.09.2014

  • Технические средства обеспечения функционирования информационной системы. Проектирование базы данных информационной системы. Разработка веб-приложения – справочно-информационной системы для предприятия. Организация записи информации в базу данных.

    дипломная работа [4,4 M], добавлен 16.05.2022

  • Выявление информационных объектов баз данных и требований целостности к данным. Построение результирующей ER диаграммы. Даталогическое проектирование и разработка сценариев работы информационной системы. Выбор средства реализации клиентского приложения.

    курсовая работа [2,7 M], добавлен 28.08.2012

  • Технико-экономическая характеристика объекта автоматизации. Концептуальное, логическое и физическое проектирование базы данных, требования к системе. Разработка внешних приложений. Руководство пользователя автоматической информационной системы "Учёт".

    курсовая работа [3,1 M], добавлен 17.08.2015

  • Структура учреждения, выявление его основных задач и функций. Анализ входной информации и процессов. Разработка структуры базы данных и клиентского приложения для учета оборудования. Описание атрибутов таблиц. Расчет надежности информационной системы.

    дипломная работа [2,3 M], добавлен 12.10.2015

  • Проектирование базы данных "Деканат" в среде MySQL и разработка многопользовательского приложения с целью хранения информации о студентах и учета их успеваемости. Построение графиков оценок по предметам в спроектированной информационной системе.

    курсовая работа [507,2 K], добавлен 16.01.2015

  • Разработка программного обеспечения для автоматизации деятельности работников книжного магазина. Проектирование информационной системы с использованием базы данных Access. Методы хранения данных. Средства защиты данных от несанкционированного доступа.

    контрольная работа [664,9 K], добавлен 13.06.2014

  • Разработка информационной системы ресторана, определение ее границ для реализации базы данных. Перечень запросов, отчетов и операций по вводу информации в информационной системе "Ресторан". Проектирование базы данных, выбор средств ее реализации.

    курсовая работа [7,6 M], добавлен 27.04.2011

  • Цели проектирования базы данных "Аэропорт": обработка информации о рейсах, расписании самолетов и билетах. Анализ предметной области. Принцип работы модели. Особенности реализации информационной системы. Среда программирования клиентского приложения.

    лабораторная работа [2,4 M], добавлен 07.01.2014

  • Автоматизация системы снятия показаний счетчиков энергии. Разработка базы данных и клиентского приложения для структур жилищно-коммунального хозяйства, занимающихся составлением квитанций. Описание предметной области. Тестирование клиентского приложения.

    курсовая работа [953,3 K], добавлен 01.09.2016

  • Разработка информационно-логической модели проектируемой информационной системы. Алгоритм функционирования информационной системы. Описание базы данных. Описание входной, промежуточной и выходной информации. Техническое и программное обеспечение.

    реферат [28,1 K], добавлен 09.01.2009

  • Общие требования к информационной системе, основные этапы ее разработки и оценка практической эффективности. Проектирование базы данных и технология доступа к ним. Разработка клиентского программного обеспечения, средства, защита и сохранность данных.

    курсовая работа [720,7 K], добавлен 09.04.2013

  • Разработка прикладного программного обеспечения деятельности гимназии, предназначенного для решения задачи автоматизации учета учащихся. Проектирование процессов, структуры информационной системы и структуры базы данных. Расчет экономических показателей.

    курсовая работа [2,0 M], добавлен 06.04.2013

  • Проектирование системы управления базой данных "Почтовые отделения" для создания единой информационной системы: создание таблиц для хранения данных, ввод данных, разработка элементов базы, предназначенных для просмотра, редактирования и вывода информации.

    курсовая работа [1,4 M], добавлен 31.03.2010

  • Выбор методологии проектирования и разработка информационной системы "Расчёт зарплаты" для предприятия ОАО РТП "Авторемонтник". Архитектурное проектирование базы данных информационной системы и разработка её интерфейса. Тестирование программного модуля.

    дипломная работа [2,3 M], добавлен 25.05.2014

  • Понятие автоматизированной информационной системы. Построение функционально-ориентированных моделей "как есть" (as-is) и "как должно быть" (to-be). Описание базы данных, разработка приложения, руководство пользователя. Счет-фактура, платежное поручение.

    дипломная работа [3,5 M], добавлен 23.04.2013

  • Сокращение постоянных и переменных издержек путем автоматизации документооборота в компании "IT-Сервис". Разработка информационной системы и прототипа клиент-серверного трехзвенного приложения в среде Borland Delphi 7.0. Оценка экономического эффекта.

    реферат [226,3 K], добавлен 25.09.2014

  • Разработка приложения, позволяющего автоматизировать документооборот предприятия по списанию основных средств. Мероприятия по защите и обеспечению целостности базы данных. Разработка клиентского приложения. Запросы к базе данных, руководство пользователя.

    курсовая работа [700,0 K], добавлен 14.01.2015

  • Проектирование физической и логической моделей удаленной базы данных для АЗС. Разработка базы данных в СУБД Firebird с помощью утилиты IBExpert. Создание клиентского приложения для Windows с использованием клиент-серверной технологии в среде C++ Builder.

    курсовая работа [3,9 M], добавлен 18.01.2017

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.