Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "pacjenci_window.h"
- #include "ui_pacjenci_window.h"
- pacjenci_window::pacjenci_window(QWidget *parent) :
- QMainWindow(parent),
- ui(new Ui::pacjenci_window)
- {
- ui->setupUi(this);
- //ustawienie polaczenia
- db = QSqlDatabase::addDatabase("QODBC");
- db.setDatabaseName("informix");
- if(!db.open()){
- qDebug() << "Polaczono z baza danych";
- }
- //lista wszystkich query
- sQuery = QSqlQuery(db);
- //uQuery = QSqlQuery(db);
- dQuery = QSqlQuery(db);
- modelQuery = new QSqlQueryModel();
- sQuery.prepare("SELECT * FROM pacjent");
- if(sQuery.exec()){
- sQuery.first();
- qDebug() << "Zapytanie przyjete - konstruktor";
- FillForm();
- }
- else {
- qDebug() << sQuery.lastError().text() << " konst";
- }
- }
- pacjenci_window::~pacjenci_window()
- {
- delete ui;
- db.close();
- }
- void pacjenci_window::FillForm(){
- ui->nr_ub->setText(sQuery.value(0).toString());
- ui->imie->setText(sQuery.value(1).toString());
- ui->nazwisko->setText(sQuery.value(2).toString());
- ui->adres->setText(sQuery.value(3).toString());
- ui->nr_tel->setText(sQuery.value(4).toString());
- modelQuery->setQuery(sQuery);
- modelQuery->setHeaderData(0, Qt::Horizontal,QObject::tr("Numer ubezpieczenia"));
- modelQuery->setHeaderData(1, Qt::Horizontal,QObject::tr("Imię"));
- modelQuery->setHeaderData(2, Qt::Horizontal,QObject::tr("Nazwisko"));
- modelQuery->setHeaderData(3, Qt::Horizontal,QObject::tr("Adres"));
- modelQuery->setHeaderData(4, Qt::Horizontal,QObject::tr("Telefon"));
- ui->table_select->setModel(modelQuery);
- ui->table_select->setVisible(false);
- ui->table_select->resizeColumnsToContents();
- ui->table_select->setVisible(true);
- }
- void pacjenci_window::on_dodaj_clicked()
- {
- QSqlQuery uQuery = QSqlQuery(db);
- uQuery.prepare("INSERT INTO pacjent(nr_ubezpieczenia, imie_pacjenta, nazwisko_pacjenta, adres_pacjenta, telefon_pacjenta) VALUES(nr_ubezpieczenia = :nr_ub, imie_pacjenta= :imie, nazwisko_pacjenta = :nazwisko, adres_pacjenta = :adres, telefon_pacjenta = :telefon)");
- uQuery.bindValue(":nr_ub",ui->nr_ub->text());
- uQuery.bindValue(":imie",ui->imie->text());
- uQuery.bindValue(":nazwisko",ui->nazwisko->text());
- uQuery.bindValue(":adres",ui->adres->text());
- uQuery.bindValue(":telefon",ui->nr_tel->text());
- if(!uQuery.exec()){
- qDebug() << db.lastError().text();
- qDebug() << uQuery.lastError().text() << " DODAJ BUTTON";
- }
- sQuery.prepare("SELECT * FROM pacjent");
- if(!sQuery.exec()){
- qDebug() << uQuery.lastError().text() << " DODAJ BUTTON select";
- }
- sQuery.last();
- FillForm();
- }
- void pacjenci_window::on_aktualizuj_clicked()
- {
- uQuery.prepare("UPDATE pacjent SET nr_ubezpieczenia= :nr_ub, imie_pacjenta= :imie, nazwisko_pacjenta = :nazwisko, adres_pacjenta = :adres, telefon_pacjenta = :telefon WHERE nr_ubezpieczenia = :nr_ub");
- uQuery.bindValue(":nr_ub",sQuery.value(0));
- uQuery.bindValue(":imie",ui->imie->text());
- uQuery.bindValue(":nazwisko",ui->nazwisko->text());
- uQuery.bindValue(":adres",ui->adres->text());
- uQuery.bindValue(":telefon",ui->nr_tel->text());
- if(!uQuery.exec()){
- qDebug() << uQuery.lastError().text() << " AKTUALIZUJ";
- }
- sQuery.prepare("SELECT * FROM pacjent");
- if(!sQuery.exec()){
- qDebug() << sQuery.lastError().text() << " select_aktualizuj";
- }
- sQuery.first();
- FillForm();
- }
- void pacjenci_window::on_usun_clicked()
- {
- dQuery.prepare("DELETE FROM pacjent WHERE nr_ubezpieczenia = :nr_ub");
- dQuery.bindValue(":nr_ub",ui->nr_ub->text());
- if(!uQuery.exec()){
- qDebug() << uQuery.lastError().text() << " usun";
- }
- sQuery.prepare("SELECT * FROM pacjent");
- if(!sQuery.exec()){
- qDebug() << sQuery.lastError().text() << "select_usun";
- }
- sQuery.previous();
- FillForm();
- }
- void pacjenci_window::on_table_select_activated(const QModelIndex &index)
- {
- QString check = ui->table_select->model()->data(index).toString();
- sQuery.prepare("SELECT * FROM pacjent WHERE numer_ubezpieczenia =:check OR imie_pacjenta=:check OR nazwisko_pacjenta=:check OR adres_pacjenta=:check telefon_pacjenta=:check");
- sQuery.bindValue(":check",check);
- if(sQuery.exec()){
- while(sQuery.next()){
- ui->nr_ub->setText(sQuery.value(0).toString());
- ui->imie->setText(sQuery.value(1).toString());
- ui->nazwisko->setText(sQuery.value(2).toString());
- ui->adres->setText(sQuery.value(3).toString());
- ui->nr_tel->setText(sQuery.value(4).toString());
- }
- }
- else {
- qDebug() << sQuery.lastError().text() << " tabelka klik";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement