Главная страница

Курсовая. Курсовая_Шрайбер. Курсовой проект по дисциплине корпоративные информационные системы на тему Автоматиз


Скачать 1.34 Mb.
НазваниеКурсовой проект по дисциплине корпоративные информационные системы на тему Автоматиз
АнкорКурсовая
Дата12.03.2023
Размер1.34 Mb.
Формат файлаdocx
Имя файлаКурсовая_Шрайбер.docx
ТипКурсовой проект
#982314
страница10 из 10
1   2   3   4   5   6   7   8   9   10

qry.bindValue(":gender",gender);
qry.bindValue(":phone",phone);
qry.bindValue(":email",email);
qry.bindValue(":password",password);
if(!qry.exec()){
qDebug()«"Добавление записи не удалось"«qry.lastError();sucess=false;}else{
qDebug()«"Успешное добавление записи";sucess=true;}return sucess;}
bool Dbase_admin::modifyLaboratorianDetails(const QString &uname){boolsucess=false;QSqlQuery qry;
qry.prepare("SELECT * FROM Laboratory WHERE UserName=:uname");
if(!qry.exec()){sucess=false;}else{sucess=true;}return sucess;}
void Dbase_admin::removeLaboratorian(const QString &uname,const QString &email){QSqlQuery qry;
qry.prepare("DELETE FROM Laboratorian WHERE UserName=:uname OR Email=:email");
qry.bindValue(":uname",uname);
qry.bindValue(":email",email);
qry.exec();
}bool Dbase_admin::removeLaboratorianTable(){QSqlQuery qry;
qry.prepare("DROP TABLE Laboratorian");qry.exec();return true;}
bool Dbase_admin::validLaboratorian(const QString &uname, const QString &email){QSqlQuery qry;qry.prepare("SELECT * FROM Laboratorian WHERE UserName=:uname OR Email=:email");
qry.bindValue(":uname",uname);
qry.bindValue(":email",email);if(qry.exec()){if(qry.next()){qDebug()«"Лаборант найден";return true;}else{return false;}}else{
qDebug()«"Лаборант не был найден";
return false;}}bool Dbase_admin::laboratorian_unameExists(const QString &uname){QSqlQuery qry;qry.prepare("SELECT * FROM Laboratorian WHERE UserName=:uname");qry.bindValue(":uname",uname);if(qry.exec()){if(qry.next()){return true;}else{return false;}}else{return false;}}bool Dbase_admin::laboratorian_emailExists(const QString &email){QSqlQuery qry;
qry.prepare("SELECT * FROM Laboratorian WHERE Email=:email");qry.bindValue(":email",email);if(qry.exec()){if(qry.next()){return true;}else{return false;}}else{return false;}}void Dbase_admin::viewLaboratorian(){
QSqlQueryModel *model= new QSqlQueryModel();
QSqlQuery *qry=new QSqlQuery(db);
qry->prepare("SELECT * FROM Laboratorian");qry->exec();model->setQuery(*qry);
}void Dbase_admin::deleteAdmin_Login(){QSqlQuery qry;
qry.prepare("DROP TABLE Admin_Login");if(qry.exec()){
qDebug()«"Таблица Admin_Login удалена";}else{qDebug()«"Не удалось удалить таблицу";}}QList Dbase_admin::getAdmin_LoginDetails(){QList admindetails;QSqlQueryqry;
qry.prepare(QString("SELECT * FROM Admin_Login"));if(!qry.exec()){qDebug()«"Ошибка получения данных"«qry.lastError();}else{if(qry.next()){
QString fname=qry.value(0).toString();
QString lname=qry.value(1).toString();
QString username=qry.value(2).toString();
QString mobileno=qry.value(3).toString();
QString email=qry.value(4).toString();
QString passwd=qry.value(5).toString();
admindetails.push_front(fname);
admindetails.push_front(lname);
admindetails.push_front(username);
admindetails.push_front(mobileno);
admindetails.push_front(email);
admindetails.push_front(passwd);}else{qDebug()«"не выполняется запрос";}}
return admindetails;
}bool Dbase_admin::uNameExists(const QString &uname){QSqlQuery qry;
qry.prepare("SELECT * FROM Admin_Login WHERE UserName=:uname");
qry.bindValue(":uname",uname);
if(qry.exec()){if(qry.next()){qDebug()«"Имя пользователя существует";return true;}else{return false;}}else{qDebug()«"Имя пользователя не существует";return false;}}bool Dbase_admin::passwordValid(const QString &passwd){QSqlQuery checkQuery;checkQuery.prepare("SELECT * FROM Admin_Login WHERE Password=:passwd");checkQuery.bindValue(":passwd",passwd);
if(checkQuery.exec()){if(checkQuery.next()){
qDebug()«"пароль действителен";return true;}else{return false;}}else{qDebug()«"пароль недействителен";return false;}}void Dbase_admin::changeAdminPassword(const QString& uname,const QString& npasswd){public partial class Main : System.Windows.Controls.UserControl{

public Main(){InitializeComponent();}

private void comboBox_Copy_TextInput(object sender, TextCompositionEventArgs e){

comboBox_Copy.IsDropDownOpen = true;

var tb = (System.Windows.Controls.TextBox)e.OriginalSource;

tb.Select(tb.SelectionStart + tb.SelectionLength, 0);

CollectionView cv = (CollectionView)CollectionViewSource.GetDefaultView(comboBox_Copy.ItemsSource);

cv.Filter = s =>

((string)s).IndexOf(comboBox_Copy.Text, StringComparison.CurrentCultureIgnoreCase) >= 0;}

private void comboBox_TextInput(object sender, TextCompositionEventArgs e){

comboBox.IsDropDownOpen = true;

var tb = (System.Windows.Controls.TextBox)e.OriginalSource;

tb.Select(tb.SelectionStart + tb.SelectionLength, 0);

CollectionView cv = (CollectionView)CollectionViewSource.GetDefaultView(comboBox.ItemsSource);

cv.Filter = s =>

((string)s).IndexOf(comboBox.Text, StringComparison.CurrentCultureIgnoreCase) >= 0;}

Программный модуль qbase_laboratorian:

QSqlQuery qry;
qry.prepare("UPDATE Admin SET Password=:npasswd WHERE UserName=:uname");qry.bindValue(":npasswd",npasswd);
qry.bindValue(":uname",uname);if(qry.exec()){qDebug()«"пароль изменён(Admin)";}else{qDebug()«"пароль не был изменен(Admin)"«qry.lastError();}}void Dbase_admin::changeAdmin_LoginPassword(const QString& uname,const QString& npasswd){QSqlQuery qry;
qry.prepare("UPDATE Admin_Login SET Password=:npasswd WHERE UserName=:uname");
qry.bindValue(":npasswd",npasswd);
qry.bindValue(":uname",uname);if(qry.exec()){
qDebug()«"Пароль изменен(Admin_Login)";}else{
qDebug()«"пароль не был изменен(Admin_Login)"«qry.lastError();}}void Dbase_admin::createBacteryTable(){QSqlQuery qry;
qry.prepare("CREATE TABLE Bactery(ID TEXT,Name TEXT,Category TEXT,Shape TEXT ,Size REAl, CellMembrane TEXT)");if (!qry.exec()){
qDebug() «"Не удалось создать таблицу, возможно, она имя пользователя уже используется";}else{qDebug()«"Создание таблицы";}}bool Dbase_admin::addBactery(const QString &id, const QString &name, const QString &category, const QString &shape, const QString &size, const QString &cellMembrane){bool sucess=false;QSqlQuery qry;
qry.prepare("INSERT INTO Bactery(ID,Name,Category,Shape,Size,CellMembrane) VALUES (:id,:name,:category,:shape,:size,:cellMembrane)");qry.bindValue(":id",id);
qry.bindValue(":name",name);
qry.bindValue(":category",category);
qry.bindValue(":shape",shape);
qry.bindValue(":size",size);
qry.bindValue(":cellMembrane",cellMembrane);if(!qry.exec()){
qDebug()«"Добавить детали не удалось"«qry.lastError();sucess=false;}else{
qDebug()«"Данные добавлены успешно";sucess=true;}return sucess;}bool Dbase_admin::bactery_IdExists(const QString &id){QSqlQuery qry;
qry.prepare("SELECT * FROM Bactery WHERE ID=:id");qry.bindValue(":id",id);if(qry.exec()){if(qry.next()){qDebug()«"ID существует";return true;}else{return false;}else{qDebug()«"ID не существует";return false;}}bool Dbase_admin::bactery_NameExists(const QString &name){QSqlQuery qry;qry.prepare("SELECT * FROM Bactery WHERE Name=:name");qry.bindValue(":name",name);if(qry.exec()){if(qry.next()){qDebug()«"имя существует";return true;}else{return false;}}else{qDebug()«"имени не существует";return false;}}void Dbase_admin::deleteBacterys(const QString &id, const QString &category){QSqlQuery qry;qry.prepare("DELETE FROM Bactery WHERE ID=:id OR Category=:category");qry.bindValue(":id",id);qry.bindValue(":category",category);qry.exec();}bool Dbase_admin::validBactery(const QString &id, const QString &category){QSqlQuery qry;
qry.prepare("SELECT * FROM Bactery WHERE ID=:id OR Category=:category");
qry.bindValue(":id",id);qry.bindValue(":category",category);if(qry.exec()){if(qry.next()){qDebug()«"бактерия найдена";return true;}else{return false;}}else{qDebug()«"бактерия не была найдена";return false;}
}#include "dbase_laboratorian.h" #include  #include 
#include  #include  Dbase_Laboratorian::Dbase_Laboratorian(const QString &path)
{ db=QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName(path); if(!db.open()) { qDebug()«"Ошибка: подключение к базе данных"; } else { qDebug()«"Успех: подключение к базе данных";
} } Dbase_Laboratorian::

Dbase_Laboratorian()
{if(db.open()) {db.close();}} bool Dbase_Laboratorian::isOpen() const
{return db.isOpen();}bool Dbase_Laboratorian::laboratorianAuth(const QString &uname, const QString &pass) const{bool exists = false;QSqlQuery checkQuery;
checkQuery.prepare("SELECT UserName FROM Laborant WHERE UserName=:uname AND Password=:pass");checkQuery.bindValue(":uname", uname);checkQuery.bindValue(":pass", pass);if (checkQuery.exec()){
if (checkQuery.next()){qDebug()«"лаборант уже существует";
exists = true;}}else{qDebug()«"лаборант не существует: " « checkQuery.lastError();
}return exists;}void Dbase_Laboratorian::deleteLaboratorian_Login(){QSqlQuery qry;
qry.prepare("DROP TABLE Laborant_Login");if(qry.exec())
{qDebug()«"laborant_Login таблица удалена";}else{qDebug()«"Не удалось удалить таблицу";}}
QList Dbase_Laboratorian::getLaboratorian_loginDetails(){
QList laboratoriandetails;QSqlQuery qry;
qry.prepare(QString("SELECT * FROM Laborant_Login"));
if(!qry.exec()){qDebug()«"Ошибка получения данных"«qry.lastError();
}else{if(qry.next()){QString name=qry.value(0).toString();
QString username=qry.value(1).toString();
QString gender=qry.value(2).toString();
QString mobileno=qry.value(3).toString();
QString email=qry.value(4).toString();
QString passwd=qry.value(5).toString();
laboratoriandetails.push_front(name);
laboratoriandetails.push_front(username);
laboratoriandetails.push_front(gender);
laboratoriandetails.push_front(mobileno);
laboratoriandetails.push_front(email);
laboratoriandetails.push_front(passwd);
}else{qDebug()«"не выполняется запрос";}}return laboratoriandetails;}
QList Dbase_Laboratorian::getComDetails()
{QList laboratorydetails;QSqlQuery qry;qry.prepare(QString("SELECT * FROM Laboratory"));if(!qry.exec()){
qDebug()«"Ошибка получения данных"«qry.lastError();
}else{if(qry.next()){QString name=qry.value(0).toString();
QString vat=qry.value(1).toString();
QString phone=qry.value(2).toString();
QString address=qry.value(3).toString();
QString email=qry.value(4).toString();
QString website=qry.value(5).toString();
laboratorydetails.push_front(name);
laboratorydetails.push_front(vat);
laboratorydetails.push_front(phone);
laboratorydetails.push_front(address);
laboratorydetails.push_front(email);
laboratorydetails.push_front(website);
}else{qDebug()«"не выполняется запрос";
}}return laboratorydetails;}bool Dbase_Laboratorian::validBactery(QString &id)
{QSqlQuery qry;
qry.prepare("SELECT * FROM Bactery WHERE ID=:id");
qry.bindValue(":id",id);
if(qry.exec()){if(qry.next()){return true;}else{return false;}}else{return false;
}}bool Dbase_Laboratorian::validLaboratorian(QString &username,QString &opassword){QSqlQuery qry; qry.prepare("SELECT * FROM Laborant_Login WHERE UserName=:uname AND Password=:password");
qry.bindValue(":uname",username);
qry.bindValue(":password",opassword);
if(qry.exec()){return true;}else{return false;}}
void Dbase_Laboratorian::updateLaboratorian(QString &username,QString &opassword){
QSqlQuery qry;
qry.prepare("UPDATE Laborant SET Password=:password WHERE UserName=:uname");
qry.bindValue(":password",opassword);qry.bindValue(":uname",username);qry.exec();}void Dbase_Laboratorian::createReportTable()
{QSqlQuery qry;qry.prepare("CREATE TABLE Report(ID TEXT,Name TEXT,LocationInSpace TEXT, Gram TEXT, Quantity INT, Kf REAL)");
if (!qry.exec()){qDebug() «"Не удалось создать таблицу, возможно, она уже существует";}else{qDebug()«"Создание таблицы";
}QList Dbase_Laboratorian::getBacteryDetails(const QString &id)
{QList bacterydetails;
QSqlQuery qry;
qry.prepare(QString("SELECT * FROM Bactery WHERE ID=:id"));
qry.bindValue(":id",id);if(!qry.exec()){qDebug()«"Ошибка получения данных"«qry.lastError();
}else{
if(qry.next())
{QString id=qry.value(0).toString();QString name=qry.value(1).toString();
QString category=qry.value(2).toString();
QString shape=qry.value(3).toString();
QString size=qry.value(4).toString();
QString cellmembrane=qry.value(5).toString();
bacterydetails.push_front(id);
bacterydetails.push_front(name);
bacterydetails.push_front(category);
bacterydetails.push_front(shape);
bacterydetails.push_front(size);
bacterydetails.push_front(cellmembrane);}else{qDebug()«"не выполняется запрос";}}return bacterydetails;}bool Dbase_Laboratorian::addBactery(const QString &id, const QString &name, const QString &locationinspace, const QString &gram, const int &quantity, const double &kf){
bool sucess=false;
QSqlQuery qry;
qry.prepare("INSERT INTO Report(ID,Name,LocationInSpace,Gram,Quantity) VALUES (:id,:name,:locationinspace,:gram,:quantity,:kf)");
qry.bindValue(":id",id);
qry.bindValue(":name",name);
qry.bindValue(":locationinspace",locationinspace);
qry.bindValue(":gram",gram);
qry.bindValue(":quantity",quantity);
qry.bindValue(":kf",kf);if(!qry.exec()){
qDebug()«"Добавить детали не удалось"«qry.lastError();
sucess=false;}else{qDebug()«"Данные добавлены успешно";sucess=true;}
return sucess;}bool Dbase_Laboratorian::bactery_IdExists(const QString &id)
{QSqlQuery qry;
qry.prepare("SELECT * FROM Report WHERE ID=:id");
qry.bindValue(":id",id);if(qry.exec()){if(qry.next()){qDebug()«"ID существует";
return true;}else{return false;}}else{
qDebug()«"ID не существует";return false;}}void Dbase_Laboratorian::deleteReportTable()
{QSqlQuery qry;qry.prepare("DROP TABLE Report");
qry.exec();}QList Dbase_Laboratorian::getKf()
{QList amountdetails;QSqlQuery qry;
qry.prepare(QString("SELECT Kf FROM Report"));
if(!qry.exec()){qDebug()«"Ошибка получения данных"«qry.lastError();
}else{while(qry.next()){QString a=qry.value(0).toString();
amountdetails.push_front(a);}}qDebug()«amountdetails.count();
return amountdetails;}void Dbase_Laboratorian::createHistoryTable(){
QSqlQuery qry;qry.prepare("CREATE TABLE `History` ( `Report` INTEGER NOT NULL , `Date` TEXT, `Kf` REAL, `Laboratorian` TEXT, PRIMARY KEY(`Report`) )");if (!qry.exec()){
qDebug() «"Не удалось создать таблицу, возможно, она уже существует";
}else{qDebug()«"Создание таблицы";
}}bool Dbase_Laboratorian::addHistory( const QString &date, const double &reportkf, const QString &laboratorian)
{bool sucess=false;QSqlQuery qry;
qry.prepare("INSERT INTO History(Date,Kf,Laboratorian) VALUES (:date,:reportkf,:laboratorian)");
qry.bindValue(":date",date);qry.bindValue(":reportkf",reportkf);
qry.bindValue(":laboratorian",laboratorian);
if(!qry.exec()){qDebug()«"Добавить детали не удалось"«qry.lastError();
sucess=false;}else
{qDebug()«"Данные добавлены успешно";
sucess=true;}return sucess;}int Dbase_Laboratorian::getReportNo()
{int reportno;QSqlQuery qry;qry.prepare("SELECT * FROM History");
if(qry.exec()){if(qry.last()){reportno=qry.value(0).toInt();
}else{return 0;}}else{return 0;}return reportno+1;}
1   2   3   4   5   6   7   8   9   10


написать администратору сайта