#include "orderoom.h" #include "ui_orderoom.h" #include "registers.h" orderoom::orderoom(QWidget *parent) : QWidget(parent), ui(new Ui::orderoom) { ui->setupUi(this); QIcon logo(":/image/icon/logo.png"); this->setWindowIcon(logo); this->setWindowTitle("订房页面"); this->setFixedSize(800,600); bg = new QLabel(this); bg->setScaledContents(true); bg->setPixmap(QPixmap(":/image/bg/order.png")); bg->lower(); ui->tableWidget->setRowCount(0); ui->tableWidget->setColumnCount(4); ui->tableWidget->setHorizontalHeaderLabels({"手机号","姓名","性别","身份证号"}); ui->tableWidget->horizontalHeader()->setStyleSheet("QHeaderView::section{background-color: rgb(0, 0, 0,30);}");//表头透明度 ui->tableWidget->setStyleSheet("QTableWidget{border:2px groove gray;border-radius:15px;background-color: rgb(0, 0, 0,30);color: rgb(255, 255, 255);}"); ui->tableWidget->verticalHeader()->setVisible(false); ui->tableWidget->setColumnWidth(0,200); ui->tableWidget->setColumnWidth(1,100); ui->tableWidget->setColumnWidth(2,100); ui->tableWidget->setColumnWidth(3,375); findcustomer = false; } orderoom::~orderoom() { delete ui; } void orderoom::setroomNum(int roomNum) { this->roomNum = roomNum; } void orderoom::setDB(QSqlDatabase db){ this->db = db; } void orderoom::on_btn_search_clicked() { QString str = ui->lineEdit->text(); ui->tableWidget->setRowCount(1); ui->tableWidget->clear(); ui->tableWidget->setHorizontalHeaderLabels({"手机号","姓名","性别","身份证号"}); QSqlQuery query; query.prepare("select * from customer where account like :str;"); query.bindValue(":str",str); if(query.exec()){ while (query.next()){ QTableWidgetItem *twi = new QTableWidgetItem(query.value(0).toString()); twi->setTextAlignment(Qt::AlignCenter); ui->tableWidget->setItem(0,0,twi); for(int j = 2;j<5;j++){ QTableWidgetItem *twi = new QTableWidgetItem(query.value(j).toString()); twi->setTextAlignment(Qt::AlignCenter); ui->tableWidget->setItem(0,j-1,twi); } } } if(ui->tableWidget->model()->index(0,0).data().toString() == NULL){ findcustomer = false; ui->tableWidget->setRowCount(0); }else{ findcustomer = true; } } void orderoom::on_btn_order_clicked() { if(findcustomer){ QDate date = QDate::currentDate(); QString account = ui->tableWidget->model()->index(0,0).data().toString(); QString sql1 = QString("UPDATE room set customer_id = %1 where room_num = %2").arg(account).arg(roomNum); QString sql2 = QString("UPDATE room set status='使用' where room_num = %1").arg(roomNum); QString sql3 = QString("UPDATE customer set room_num=%1 where account = %2").arg(roomNum).arg(ui->tableWidget->model()->index(0,0).data().toString()); QSqlQuery query; query.exec(sql1); query.exec(sql2); query.exec(sql3); query.prepare("UPDATE room set checkout_time=DATE_ADD(:date, INTERVAL 1 DAY) where room_num = :num"); query.bindValue(":date",date); query.bindValue(":num",roomNum); query.exec(); emit ordersuccess(); this->close(); }else{ QMessageBox::warning(this,tr("提示"),("请选择入住客户!")); } } void orderoom::on_btn_registers_clicked() { registers *reg = new registers; reg->settype(1); reg->show(); }