From b518e24870d6438915398935b665b180a68c1686 Mon Sep 17 00:00:00 2001
From: wumu <mayi@mayi.com>
Date: 星期五, 26 四月 2024 22:06:37 +0800
Subject: [PATCH] 0426

---
 internal_system_v1/threemergeproblemlist.cpp |  203 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 202 insertions(+), 1 deletions(-)

diff --git a/internal_system_v1/threemergeproblemlist.cpp b/internal_system_v1/threemergeproblemlist.cpp
index 1a4805c..8cc2e65 100644
--- a/internal_system_v1/threemergeproblemlist.cpp
+++ b/internal_system_v1/threemergeproblemlist.cpp
@@ -1,14 +1,215 @@
-#include "threemergeproblemlist.h"
+锘�#include "threemergeproblemlist.h"
 #include "ui_threemergeproblemlist.h"
+#include <QDebug>
+#include <QSqlQuery>
+#include <QSqlError>
+#include <QMessageBox>
 
 ThreeMergeProblemList::ThreeMergeProblemList(QWidget *parent) :
     QMainWindow(parent),
     ui(new Ui::ThreeMergeProblemList)
 {
     ui->setupUi(this);
+    ui->statusbar->hide();
+    ui->menubar->hide();
+    initUi(); // 鍒濆鍖栨墍鏈夌晫闈�
+
 }
 
 ThreeMergeProblemList::~ThreeMergeProblemList()
 {
     delete ui;
 }
+
+void ThreeMergeProblemList::initUi()
+{
+    initProblemListUi(); // 鍒濆鍖栭棶棰樻竻鍗曠晫闈�
+    initProblemResultUi(); // 鍒濆鍖栭棶棰樺鐞嗙粨鏋滅晫闈�
+
+    // 鍔犺浇鍏徃鍚�
+    readCompanyFromSQL();
+}
+
+void ThreeMergeProblemList::initProblemListUi()
+{
+    ui->tableWidget_3->setItem(0,0,new QTableWidgetItem("闂娓呭崟"));
+    ui->tableWidget_3->setSpan(0,0,3,2);
+    ui->tableWidget_3->item(0,0)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_3->setItem(0,2,new QTableWidgetItem("鏁存敼妫�鏌ョ粨鏋滃強瀵硅处閿�鍙锋竻鍗�"));
+    ui->tableWidget_3->setSpan(0,2,1,12);
+    ui->tableWidget_3->item(0,2)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_3->setItem(1,2,new QTableWidgetItem("鏁存敼妫�鏌ョ粨鏋�"));
+    ui->tableWidget_3->setSpan(1,2,2,2);
+    ui->tableWidget_3->item(1,2)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_3->setItem(1,4,new QTableWidgetItem("鏁存敼绫诲瀷"));
+    ui->tableWidget_3->setSpan(1,4,1,8);
+    ui->tableWidget_3->item(1,4)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_3->setItem(2,4,new QTableWidgetItem("宸叉暣鏀�"));
+    ui->tableWidget_3->setSpan(2,4,1,3);
+    ui->tableWidget_3->item(2,4)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_3->setItem(2,7,new QTableWidgetItem("姝e湪鏁存敼"));
+    ui->tableWidget_3->setSpan(2,7,1,2);
+    ui->tableWidget_3->item(2,7)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_3->setItem(2,9,new QTableWidgetItem("灏氭湭鏁存敼"));
+    ui->tableWidget_3->setSpan(2,9,1,3);
+    ui->tableWidget_3->item(2,9)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_3->setItem(1,12,new QTableWidgetItem("鏄惁閿�鍙�"));
+    ui->tableWidget_3->setSpan(1,12,3,1);
+    ui->tableWidget_3->item(1,12)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_3->setItem(1,13,new QTableWidgetItem("閿�鍙锋椂闂�"));
+    ui->tableWidget_3->setSpan(1,13,3,1);
+    ui->tableWidget_3->item(1,13)->setTextAlignment(Qt::AlignCenter);
+
+
+    // 涓嬬骇鍒楁爣棰� 12涓�
+    ui->tableWidget_3->setItem(3,0,new QTableWidgetItem("搴忓彿"));
+    ui->tableWidget_3->setItem(3,1,new QTableWidgetItem("鎽樿"));
+    ui->tableWidget_3->setItem(3,2,new QTableWidgetItem("妫�鏌ユ椂闂�"));
+    ui->tableWidget_3->setItem(3,3,new QTableWidgetItem("妫�鏌ユ柟寮�"));
+    ui->tableWidget_3->setItem(3,4,new QTableWidgetItem("绾犳闂"));
+    ui->tableWidget_3->setItem(3,5,new QTableWidgetItem("瀹屽杽鍒跺害"));
+    ui->tableWidget_3->setItem(3,6,new QTableWidgetItem("瀹屾垚鏃堕棿"));
+    ui->tableWidget_3->setItem(3,7,new QTableWidgetItem("涓昏鍘熷洜"));
+    ui->tableWidget_3->setItem(3,8,new QTableWidgetItem("瀹屾垚鏃堕檺"));
+    ui->tableWidget_3->setItem(3,9,new QTableWidgetItem("涓昏鍘熷洜"));
+    ui->tableWidget_3->setItem(3,10,new QTableWidgetItem("璐d换閮ㄩ棬鎴栬矗浠讳汉"));
+    ui->tableWidget_3->setItem(3,11,new QTableWidgetItem("瀹屾垚鏃堕檺"));
+
+    // 绂佹缂栬緫
+    for(int i=0;i<4;++i){
+        ui->tableWidget_3->setItemDelegateForRow(i,new TableItemDelegate());
+    }
+
+
+    // 鍙抽敭鑿滃崟
+    m_menu = new QMenu(this);
+    m_menu->addAction("鍒犻櫎褰撳墠琛�");
+    ui->tableWidget_3->setContextMenuPolicy(Qt::CustomContextMenu);
+    connect(ui->tableWidget_3,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(showMenuSlot(QPoint)));
+    connect(m_menu->actions().at(0),SIGNAL(triggered(bool)),this,SLOT(deleteAction()));
+
+
+
+}
+
+void ThreeMergeProblemList::initProblemResultUi()
+{
+    ui->tableWidget_2->setSpan(0,0,1,5);
+    ui->tableWidget_2->setItem(0,0,new QTableWidgetItem("鏁存敼鎴愭灉"));
+    ui->tableWidget_2->item(0,0)->setTextAlignment(Qt::AlignCenter);
+
+    ui->tableWidget_2->setSpan(1,0,1,2);
+    ui->tableWidget_2->setItem(1,0,new QTableWidgetItem("鍒跺害寤鸿"));
+    ui->tableWidget_2->item(1,0)->setTextAlignment(Qt::AlignCenter);
+    ui->tableWidget_2->setSpan(1,2,1,3);
+    ui->tableWidget_2->setItem(1,2,new QTableWidgetItem("璧勯噾鏀跺洖"));
+    ui->tableWidget_2->item(1,2)->setTextAlignment(Qt::AlignCenter);
+    ui->tableWidget_2->setSpan(0,5,3,1);
+    ui->tableWidget_2->setItem(0,5,new QTableWidgetItem("澶勭悊浜�"));
+    ui->tableWidget_2->setSpan(0,6,3,1);
+    ui->tableWidget_2->setItem(0,6,new QTableWidgetItem("瀹h疮鍩硅"));
+    ui->tableWidget_2->setSpan(0,7,3,1);
+    ui->tableWidget_2->setItem(0,7,new QTableWidgetItem("鍏朵粬"));
+    ui->tableWidget_2->setSpan(0,8,3,1);
+    ui->tableWidget_2->setItem(0,8,new QTableWidgetItem("瀹℃牳缁撴灉"));
+    ui->tableWidget_2->setSpan(0,9,3,1);
+    ui->tableWidget_2->setItem(0,9,new QTableWidgetItem("娉ㄩ攢"));
+
+    // 涓嬬骇鏍囬
+    ui->tableWidget_2->setItem(2,0,new QTableWidgetItem("淇鍒跺害"));
+    ui->tableWidget_2->setItem(2,1,new QTableWidgetItem("鏂板鍒跺害"));
+    ui->tableWidget_2->setItem(2,2,new QTableWidgetItem("鎸藉洖鎹熷け"));
+    ui->tableWidget_2->setItem(2,3,new QTableWidgetItem("鍓旈櫎"));
+    ui->tableWidget_2->setItem(2,4,new QTableWidgetItem("瀹″噺"));
+
+    // 绂佹缂栬緫
+    for(int i=0;i<3;++i){
+        ui->tableWidget_2->setItemDelegateForRow(i,new TableItemDelegate());
+    }
+
+    // 鍙抽敭鑿滃崟
+    m_menuResult = new QMenu(this);
+    m_menuResult->addAction("鍒犻櫎褰撳墠琛�");
+    ui->tableWidget_2->setContextMenuPolicy(Qt::CustomContextMenu);
+    connect(ui->tableWidget_2,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(showMenuSlotResult(QPoint)));
+    connect(m_menuResult->actions().at(0),SIGNAL(triggered(bool)),this,SLOT(deleteActionResult()));
+
+    // 鍔犺浇涓嬫媺妗嗙殑鍏徃鍚�
+    //readCompanyFromSQL();
+}
+
+void ThreeMergeProblemList::readCompanyFromSQL()
+{
+    ui->comboBox_company->clear();
+
+    QString sql = "select DISTINCT name from all_company_info";
+    QSqlQuery query;
+    if(query.exec(sql)){
+        qDebug()<<QString("select DISTINCT all_company_info ok");
+
+        while(query.next()){ // 娣诲姞鍏徃鍚�
+            QString name = query.value(0).toString();
+            ui->comboBox_company->addItem(name);
+        }
+
+    }else{
+        qDebug()<<QString("select all_company_info fail...")<<query.lastError().text();
+
+    }
+}
+
+void ThreeMergeProblemList::showMenuSlot(QPoint)
+{
+    m_menu->exec(QCursor::pos());
+}
+
+void ThreeMergeProblemList::deleteAction()
+{
+    int row = ui->tableWidget_3->currentRow();
+    if(row>=4){
+        qDebug()<<"ok";
+        ui->tableWidget_3->removeRow(row);
+    }else{
+        qDebug()<<"fail";
+    }
+}
+
+void ThreeMergeProblemList::showMenuSlotResult(QPoint)
+{
+    m_menuResult->exec(QCursor::pos());
+}
+
+void ThreeMergeProblemList::deleteActionResult()
+{
+    int row = ui->tableWidget_2->currentRow();
+    if(row>=3){
+        qDebug()<<"ok";
+        ui->tableWidget_2->removeRow(row);
+    }else{
+        qDebug()<<"fail";
+    }
+}
+
+// 澧炲姞鍒扮涓�涓〃鏍肩殑琛�
+void ThreeMergeProblemList::on_pushButton_addRow_3_clicked()
+{
+    ui->tableWidget->insertRow(ui->tableWidget->rowCount());
+}
+
+void ThreeMergeProblemList::on_pushButton_addRow_2_clicked()
+{
+    ui->tableWidget_3->insertRow(ui->tableWidget_3->rowCount());
+}
+
+void ThreeMergeProblemList::on_pushButton_addRow_clicked()
+{
+    ui->tableWidget_2->insertRow(ui->tableWidget_2->rowCount());
+}

--
Gitblit v1.8.0