From e2d10e68e22310fdfcf3c6e13707d791c108ae1a Mon Sep 17 00:00:00 2001
From: wumu <mayi@mayi.com>
Date: 星期一, 14 十月 2024 22:09:19 +0800
Subject: [PATCH] 1014

---
 internal_system_v1/threemergeproblemlist.cpp |  169 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 167 insertions(+), 2 deletions(-)

diff --git a/internal_system_v1/threemergeproblemlist.cpp b/internal_system_v1/threemergeproblemlist.cpp
index 2b00b35..b25ef6b 100644
--- a/internal_system_v1/threemergeproblemlist.cpp
+++ b/internal_system_v1/threemergeproblemlist.cpp
@@ -7,6 +7,8 @@
 #include <QDir>
 #include <QFileDevice>
 
+#pragma execution_character_set("utf-8")
+
 ThreeMergeProblemList::ThreeMergeProblemList(QWidget *parent) :
     QMainWindow(parent),
     ui(new Ui::ThreeMergeProblemList)
@@ -37,6 +39,12 @@
 
     ui->line->hide();
     ui->line_2->hide();
+
+    ui->groupBox->hide(); // 棣栨鍏堥殣钘�
+
+    // pdf鏂囦欢鐩稿叧
+    //m_pdfView = new QWebEngineView();
+
 
 }
 
@@ -93,6 +101,15 @@
         qDebug()<<"褰撳墠琛岄涓虹┖"<<row;
         return 0;
     }
+    // 澶勭悊涓虹┖鐨勯潪棣栧垪鍗曞厓锛岃嚜鍔ㄨˉ闆�
+    for(int i=1;i<ui->tableWidget->columnCount();++i){
+        if(ui->tableWidget->item(row,i) == nullptr){
+            qDebug()<<"鍙戠幇绌洪」:"<<row<<i;
+            ui->tableWidget->setItem(row,i,new QTableWidgetItem(" "));
+        }
+    }
+
+
     // 鍙栧嚭绱㈠紩鍙锋潵鍒ゆ柇涓�涓�
     QString sql = QString("select id from standing_book_info where id=%1").arg(ui->tableWidget->item(row,0)->text());
     qDebug()<<"id sql:"<<sql;
@@ -187,6 +204,22 @@
         return -2;
     }
 
+}
+
+// 浣跨敤web鎶�鏈� 鍔犺浇pdf鏂囦欢
+int ThreeMergeProblemList::loadPdfFile(QString path)
+{
+//    QString dirPath = QApplication::applicationDirPath();
+//    qDebug()<<"pdf:"<<path<<dirPath;
+//    qDebug()<<QDir::currentPath();
+//    qDebug()<<path.mid(1);
+//    QString pdfJS = "file://"+QDir::currentPath()+"/web/viewer.html";
+//    QString link = "?file=";
+//    QString fullPath = pdfJS+link+QDir::currentPath()+path.mid(1);
+//    qDebug()<<"fullPath"<<fullPath;
+//    m_pdfView->page()->load(QUrl::fromUserInput(fullPath));
+
+    return 0;
 }
 void ThreeMergeProblemList::initUi()
 {
@@ -431,12 +464,14 @@
     m_menuRectBook = new QMenu(this);
     m_menuRectBook->addAction("鍒犻櫎褰撳墠琛�");
     m_menuRectBook->addAction("淇濆瓨褰撳墠琛�");
+    m_menuRectBook->addAction("鏌ョ湅宸插瓨浣愯瘉");
 
     ui->tableWidget->setContextMenuPolicy(Qt::CustomContextMenu);
     connect(ui->tableWidget,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(showMenuSlotRectBook(QPoint)));
 
     connect(m_menuRectBook->actions().at(0),SIGNAL(triggered(bool)),this,SLOT(deleteActionRectBook()));
     connect(m_menuRectBook->actions().at(1),SIGNAL(triggered(bool)),this,SLOT(saveActionRectBook()));
+    connect(m_menuRectBook->actions().at(2),SIGNAL(triggered(bool)),this,SLOT(showSaveFile()));
 
 }
 
@@ -765,11 +800,11 @@
 
     }else if(curText == "娑夊強閲戦" || strcmp(curText.toLocal8Bit().data(),"娑夊強閲戦")==0){
         qDebug()<<"娑夊強閲戦";
-        condition = QString(" where 娑夊強閲戦='%1'").arg(ui->lineEdit_sbook_condition->text());
+        condition = QString(" where 娑夊強閲戦 <=%1").arg(ui->lineEdit_sbook_condition->text());
 
     }else if(curText == "鏁撮】閲戦" || strcmp(curText.toLocal8Bit().data(),"鏁撮】閲戦")==0){
         qDebug()<<"鏁撮】閲戦";
-        condition = QString(" where 鏁撮】閲戦='%1'").arg(ui->lineEdit_sbook_condition->text());
+        condition = QString(" where 鏁撮】閲戦 <=%1").arg(ui->lineEdit_sbook_condition->text());
 
     }
 
@@ -830,3 +865,133 @@
     QMessageBox::information(this,"淇濆瓨鎻愮ず",QString("鎬昏鏁颁负%1,鎴愬姛%2琛岋紝澶辫触%3琛屻��").arg(ui->tableWidget->rowCount())
                              .arg(hasContentRow).arg(ui->tableWidget->rowCount()-hasContentRow));
 }
+
+void ThreeMergeProblemList::on_pushButton_moreSearch_clicked()
+{
+    QString sql = "select * from standing_book_info ";
+
+    QVector<QString> vecCon; // 淇濆瓨鎵�鏈夋潯浠�
+
+    if(ui->checkBox_type->isChecked()){
+        QString condition= QString(" 瀹¤绫诲埆='%1' ").arg(ui->comboBox_type->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_year->isChecked()){
+        QString condition= QString(" 瀹¤骞村害='%1' ").arg(ui->dateEdit_year->text());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_com->isChecked()){
+        QString condition= QString(" 瀹¤鍗曚綅='%1' ").arg(ui->comboBox_com->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_way->isChecked()){
+        QString condition= QString(" 瀹¤鏂瑰紡='%1' ").arg(ui->comboBox_way->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_mainCom->isChecked()){
+        QString condition= QString(" 璐d换涓讳綋鍚嶇О='%1' ").arg(ui->comboBox_mainCom->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_pro->isChecked()){
+        QString condition= QString(" 瀹¤椤圭洰='%1' ").arg(ui->comboBox_pro->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_proName->isChecked()){
+        QString condition= QString(" 瀹¤椤圭洰鍚嶇О='%1' ").arg(ui->comboBox_proName->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_qtype->isChecked()){
+        QString condition= QString(" 闂绫诲埆='%1' ").arg(ui->comboBox_qtype->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_qdx->isChecked()){
+        QString condition= QString(" 闂瀹氭��='%1'").arg(ui->comboBox_qdx->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_about_money->isChecked()){
+        QString condition= QString(" 娑夊強閲戦 >= %1 and 娑夊強閲戦 <= %2").arg(ui->comboBox_about_bgMonney->currentText()).arg(ui->comboBox_about_edMoney->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_changeMoney->isChecked()){
+        QString condition= QString(" 鏁存敼閲戦>=%1 and 鏁存敼閲戦<=%2").arg(ui->comboBox_change_bgMoney->currentText()).arg(ui->comboBox_change_edMoney->currentText());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_change_over_time->isChecked()){
+        QString condition= QString(" 鏁存敼瀹屾垚鏃堕棿='%1' ").arg(ui->dateEdit_change_over_time->text());
+        vecCon.append(condition);
+    }
+    if(ui->checkBox_change_expected_time->isChecked()){
+        QString condition= QString(" 鏁存敼棰勮瀹屾垚鏃堕棿='%1' ").arg(ui->dateEdit_change_expected_time->text());
+        vecCon.append(condition);
+    }
+    QString condition;
+    if(vecCon.size() == 1){
+        condition += QString(" where %1").arg(vecCon.at(0));
+    }else if(vecCon.size() > 1){
+        condition += QString(" where %1").arg(vecCon.at(0));
+        for(int i=1;i<vecCon.size();++i){
+            condition += QString(" and %1 ").arg(vecCon.at(i));
+        }
+    }
+    sql += condition;
+    qDebug()<<sql;
+
+    QVector<QVector<QString>> res;
+    int rows = selectSQL(sql,res);
+    if(rows > 0){
+        ui->tableWidget->setRowCount(rows);
+        for(int i=0;i<res.size();++i){
+            for(int j=0;j<res.at(0).size()-1;++j){ // 鍘绘帀璁板綍鏃堕棿
+                ui->tableWidget->setItem(i,j,new QTableWidgetItem(res[i][j]));
+            }
+        }
+    }else{
+        QMessageBox::information(this,"鏌ヨ澶辫触","鍙兘鏌ヨ鐨勫唴瀹逛笉姝g‘鎴栬�呮病鏈夎褰曠浉搴旂殑鏁版嵁");
+    }
+
+}
+
+void ThreeMergeProblemList::on_pushButton_multiSearch_clicked()
+{
+    static int cnt=0;
+    if(cnt%2 == 1){
+        ui->groupBox->hide();
+        ui->pushButton_multiSearch->setText("澶氱淮搴︽暟鎹煡璇煈�");
+    }else{
+        ui->groupBox->show();
+        ui->pushButton_multiSearch->setText("澶氱淮搴︽暟鎹煡璇煈�");
+    }
+    cnt++;
+}
+
+void ThreeMergeProblemList::showSaveFile()
+{
+    int row = ui->tableWidget->currentRow();
+    auto item = ui->tableWidget->currentItem();
+    if(row>=0 && item){
+        qDebug()<<"row"<<row;
+        // 鍙栦笅鏍�  13  17  23
+        auto item_13 = ui->tableWidget->item(row,13);
+        auto item_17 = ui->tableWidget->item(row,17);
+        auto item_23 = ui->tableWidget->item(row,23);
+        if(item_13){
+            qDebug()<<item_13->text();
+            QString text = item_13->text();
+            QStringList listPath = text.split("/");
+            if(listPath.size() > 2){
+                qDebug()<<"鍙戠幇鏂囦欢"<<listPath.back();
+                QString type = listPath.back().split(".").back();
+                qDebug()<<"type"<<type;
+                if(type == "pdf"){
+                    loadPdfFile(text);
+                }
+            }
+        }
+        if(item_17){
+            qDebug()<<item_17->text();
+        }
+        if(item_23){
+            qDebug()<<item_23->text();
+        }
+    }
+}

--
Gitblit v1.8.0