From ec275ba3c4c22fccf3d4a2900c31be67ca56be23 Mon Sep 17 00:00:00 2001 From: wumu <mayi@mayi.com> Date: 星期一, 04 九月 2023 22:22:35 +0800 Subject: [PATCH] 0904 --- internal_system_v1/searchinfo.cpp | 61 ++++++++++++++++++++++++++++++ internal_system_v1/searchinfo.h | 10 +++++ internal_system_v1/searchinfo.ui | 8 ++-- 3 files changed, 74 insertions(+), 5 deletions(-) diff --git a/internal_system_v1/searchinfo.cpp b/internal_system_v1/searchinfo.cpp index 4b6e206..2b931ad 100644 --- a/internal_system_v1/searchinfo.cpp +++ b/internal_system_v1/searchinfo.cpp @@ -9,6 +9,15 @@ ui(new Ui::SearchInfo) { ui->setupUi(this); + ui->label_2->hide(); + ui->label_3->hide(); + ui->dateTimeEdit->hide(); + ui->dateTimeEdit_2->hide(); + + m_model = new QStandardItemModel(this); + ui->tableView->setModel(m_model); + ui->tableView->verticalHeader()->setVisible(false); // 闅愯棌琛屽ご + if(QSqlDatabase::contains("qt_sql_default_connection")){ m_db = QSqlDatabase::addDatabase("qt_sql_default_connection"); }else{ @@ -19,6 +28,7 @@ qDebug()<<"db open ok"; createSqlite(); //m_db.close(); + searchComName(); // 鏌ヨ鍏徃鍚� }else{ qDebug()<<"db open fail"; } @@ -86,27 +96,34 @@ // 瀹¤椤圭洰琛� createTableNoEvidences("audit_project"); + m_itemAndTable["瀹¤椤圭洰"] = "audit_project"; // 鍐呭宸ヤ綔閲忚〃 createTableNoEvidences("audit_workload"); + m_itemAndTable["鍐呭宸ヤ綔閲�"] = "audit_workload"; // 闂閲戦琛� createTableHasEvidences("problem_money"); + m_itemAndTable["闂閲戦"] = "problem_money"; // 闂涓暟琛� createTableHasEvidences("problem_count"); - + m_itemAndTable["闂涓暟"] = "problem_count"; // 闂鏁存敼琛� createTableHasEvidences("problem_rectification"); + m_itemAndTable["闂鏁存敼"] = "problem_rectification"; // 闂鏁存敼--闈為噾棰濊〃 createTableHasEvidences("problem_no_money"); + m_itemAndTable["闂鏁存敼--闈為噾棰�"] = "problem_no_money"; // 澶勫垎琛� createTableNoEvidences("punish"); + m_itemAndTable["澶勫垎"] = "punish"; // 妗堜欢绾跨储琛� createTableHasUnit("case_clue"); + m_itemAndTable["妗堜欢绾跨储"] = "case_clue"; } @@ -165,3 +182,45 @@ qDebug()<<QString("create %1 fail...").arg(tableName)<<query.lastError().text(); } } + +void SearchInfo::searchComName() +{ + QSqlQuery query; + QString sql = QString("select id,name from company_info"); + if(query.exec(sql)){ + qDebug()<<"size:"<<query.numRowsAffected(); + while(query.next()){ + int id = query.value(0).toInt(); + QString name = query.value(1).toString(); + qDebug()<<"com select:"<<id<<name; + m_comInfo[name] = id; + ui->comboBox_company->addItem(name); + } + } +} + +void SearchInfo::on_pushButton_search_clicked() +{ + // 鑾峰彇淇℃伅锛岀劧鍚庢煡璇� + QString item = ui->comboBox->currentText(); + QString comName = ui->comboBox_company->currentText(); + QString sql = QString("select * from %1 where com_id=%2").arg(m_itemAndTable[item]).arg(m_comInfo[comName]); + qDebug()<<__FUNCTION__<<sql; + QSqlQuery query; + if(query.exec(sql)){ + qDebug()<<"size:"<<query.size(); + m_model->setRowCount(0); + int rowCnt = 0; + while (query.next()) { + rowCnt++; + m_model->setRowCount(rowCnt); + qDebug()<<query.value(0).toInt(); + m_model->setItem(rowCnt-1,0,new QStandardItem(query.value(0).toString())); + m_model->setItem(rowCnt-1,1,new QStandardItem(query.value(1).toString())); + m_model->setItem(rowCnt-1,2,new QStandardItem(query.value(2).toString())); + m_model->setItem(rowCnt-1,3,new QStandardItem(query.value(3).toString())); + m_model->setItem(rowCnt-1,4,new QStandardItem(query.value(4).toString())); + } + } + +} diff --git a/internal_system_v1/searchinfo.h b/internal_system_v1/searchinfo.h index a809041..fe754ae 100644 --- a/internal_system_v1/searchinfo.h +++ b/internal_system_v1/searchinfo.h @@ -2,7 +2,10 @@ #define SEARCHINFO_H #include <QMainWindow> +#include <QMap> #include "QSqlDatabase" +#include <QStandardItemModel> + namespace Ui { class SearchInfo; @@ -19,10 +22,17 @@ void createTableHasEvidences(QString tableName); // 鏈変綈璇佺殑琛� void createTableNoEvidences(QString tableName); // 鏃犱綈璇佺殑琛� void createTableHasUnit(QString tableName); // 鏃犱綈璇佺殑琛ㄤ笖鏈夎閲忓崟浣嶇殑琛� + void searchComName(); + +private slots: + void on_pushButton_search_clicked(); private: Ui::SearchInfo *ui; QSqlDatabase m_db; + QMap<QString,int> m_comInfo; + QMap<QString,QString> m_itemAndTable; + QStandardItemModel *m_model; }; #endif // SEARCHINFO_H diff --git a/internal_system_v1/searchinfo.ui b/internal_system_v1/searchinfo.ui index 2b8ed2b..db9a919 100644 --- a/internal_system_v1/searchinfo.ui +++ b/internal_system_v1/searchinfo.ui @@ -6,7 +6,7 @@ <rect> <x>0</x> <y>0</y> - <width>800</width> + <width>924</width> <height>600</height> </rect> </property> @@ -154,7 +154,7 @@ </widget> </item> <item> - <widget class="QComboBox" name="comboBox_2"> + <widget class="QComboBox" name="comboBox_company"> <item> <property name="text"> <string>鍏徃鍚嶇О</string> @@ -163,7 +163,7 @@ </widget> </item> <item> - <widget class="QPushButton" name="pushButton"> + <widget class="QPushButton" name="pushButton_search"> <property name="text"> <string>鏌ヨ</string> </property> @@ -182,7 +182,7 @@ <rect> <x>0</x> <y>0</y> - <width>800</width> + <width>924</width> <height>26</height> </rect> </property> -- Gitblit v1.8.0