Создание защищенного приложения для ведения учета продаж и закупок, ориентированного на малый бизнес - Дипломная работа

бесплатно 0
4.5 187
Проектирование модели базы данных в соответствии с предметной областью "Торговля". Разработка архитектуры системы безопасности приложения по ведению базы данных. Реализация приложения, обеспечивающего учет продаж и закупок предприятия. Способы его защиты.


Аннотация к работе
1. Моделирование предметной области 1.1 Анализ предметной области 1.2 Проектирование базы данных 2. Программная реализация и тестирование приложения Заключение Список использованных источников Приложения ОПРЕДЕЛЕНИЯ, ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ БД база данных СУБД система управления базами данных РРД ролевое разграничение доступа ИНН идентификационный номер налогоплательщика ИП индивидуальный предприниматель КПП код причины постановки MD5 message digest 5-алгоритм хэширования SHA-1 secure hash algorithm 1-алгоритмхэширования MAC message authentication code- кодпроверкисообщения HMAC hashed message authentication code - хэшированныйкодпроверкисообщения SSL secure sockets layer-криптографический протокол #includelogin.h #include #include #include #include #include namespaceUi { classW_Nomenklatura; } classW_Nomenklatura : public QDialog { Q_OBJECT public: explicitW_Nomenklatura(QWidget *parent = 0); ~W_Nomenklatura(); private slots: voidcloseEvent(QCloseEvent *event); voidon_pushButton_update_clicked(); void on_pushButton_update_2_clicked(); voidon_pushButton_create_clicked(); voidon_tableView_clicked(constQModelIndex&index); voidon_pushButton_delete_clicked(); private: QSqlDatabasemydb; QSqlTableModel *model_nomenkl; Ui::W_Nomenklatura *ui; }; #endif // W_NOMENKLATURA_H А.2 СОДЕРЖАНИЕ ФАЙЛА w_nomenklatura.cpp #include w_nomenklatura.h #include ui_w_nomenklatura.h W_Nomenklatura::W_Nomenklatura(QWidget *parent) : QDialog(parent), ui(new Ui::W_Nomenklatura) { ui->setupUi(this); this->setWindowTitle(Номенклатура); model_nomenkl = new QSqlTableModel(this); model_nomenkl->setTable(Nomenklatura); if(model_nomenkl->select()) { // передаем данные из модели в tableView ui->tableView->setModel(model_nomenkl); // устанавливаем высоту строки по тексту ui->tableView->resizeRowsToContents(); // шапка для первой колонки model_nomenkl->setHeaderData(0, Qt::Horizontal, tr(Наименование)); model_nomenkl->setHeaderData(1, Qt::Horizontal, tr(Единицаизм.)); model_nomenkl->setHeaderData(2, Qt::Horizontal, tr(Страна)); model_nomenkl->setHeaderData(3, Qt::Horizontal, tr(Штрихкод)); model_nomenkl->setHeaderData(4, Qt::Horizontal, tr(Поставщик)); model_nomenkl->setHeaderData(5, Qt::Horizontal, tr(НДС)); model_nomenkl->setHeaderData(6, Qt::Horizontal, tr(Производитель)); // передачауправленияэлементуtableView ui->tableView->setFocus(); } //ЗаполненийQComboBox QSqlQueryModel *postavshik; postavshik = new QSqlQueryModel; // созданиемодели postavshik->setQuery(tr(SELECT * FROM Postavshiki;));// созданиезапроса ui->postavshik->setModel(postavshik);// отображениетаблицыпозапросу QSqlQueryModel *stavka; stavka = new QSqlQueryModel; // созданиемодели stavka->setQuery(tr(SELECT * FROM StavkaNDS;));// созданиезапроса ui->stavka_nds->setModel(stavka);// отображение таблицы по запросу QSqlQueryModel *proizv; proizv = newQSqlQueryModel; // создание модели proizv->setQuery(tr(SELECT * FROM Proizvoditeli;));// созданиезапроса } W_Nomenklatura::~W_Nomenklatura() { deleteui; } voidW_Nomenklatura::on_pushButton_update_clicked() { model_nomenkl->submitAll(); ui->label_Change->setText(); } voidW_Nomenklatura::on_pushButton_update_2_clicked()// отменаинтерактивныхизмененийв table view { model_nomenkl->revertAll(); ui->label_Change->setText(); } voidW_Nomenklatura::on_pushButton_create_clicked() { // Добавить // Если одна из ячеек для ввода данных пуста if (ui->name->text() == ) { // предупреждение QMessageBox::warning(this, Ошибка, Не заполнено наименование, перепроверьте информацию); // остановка дальнейшего выполнения return; } // если значения указаны пользователем else { QSqlRecord rec = model_nomenkl->record(); rec.setValue(Name, ui->name->text()); rec.setValue(EdinitsaIzmereniya, ui->ed_izm->text()); rec.setValue(Country, ui->strana->text()); rec.setValue(Shtrihkod, ui->shtrihkod->text()); rec.setValue(Postavshiki_Name, ui->postavshik->currentText()); rec.setValue(StavkaNDS_RazmerStavki, ui->stavka_nds->currentText().toInt()); rec.setValue(Proizvoditeli_Name, ui->proizv->currentText()); model_nomenkl->insertRecord(-1, rec); // обнуляемполяввода ui->name->setText(); ui->ed_izm->setText(); ui->strana->setText(); ui->shtrihkod->setText(); // выравниваем высоту строк по тексту ui->tableView->resizeRowsToContents(); model_nomenkl->select(); } // добавление нового родителя } voidW_Nomenklatura::on_tableView_clicked(constQModelIndex&index) { //ui->label_Change->setText(Данныебылиизменены); } voidW_Nomenklatura::closeEvent(QCloseEvent *event) { if (ui->label_Change->text()!= ) { event->ignore(); QMessageBoxms; QAbstractButton *yes = ms.addButton(Да,QMessageBox::YesRole); QAbstractButton *no = ms.addButton(Нет,QMessageBox::NoRole); ms.setText(Данные были изменены.Закрыть, не сохраняя данные?); ms.exec(); if(ms.clickedButton() == yes) event->accept(); } } voidW_N
Заказать написание новой работы



Дисциплины научных работ



Хотите, перезвоним вам?