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