From d64822b8be629c4592da0b9c3eabed4500174752 Mon Sep 17 00:00:00 2001
From: wumu <mayi@mayi.com>
Date: 星期一, 13 五月 2024 00:50:27 +0800
Subject: [PATCH] 0512
---
internal_system_v1/clientmainwindow.cpp | 6
internal_system_v1/searchinfo.cpp | 58 +++++++
internal_system_v1/threemergeproblemlist.cpp | 324 ++++++++++++++++++++++++++++++++++++++++
internal_system_v1/threemergeproblemlist.ui | 28 +++
internal_system_v1/searchinfo.h | 2
internal_system_v1/threemergeproblemlist.h | 13 +
6 files changed, 419 insertions(+), 12 deletions(-)
diff --git a/internal_system_v1/clientmainwindow.cpp b/internal_system_v1/clientmainwindow.cpp
index 00b85fe..709f0b4 100644
--- a/internal_system_v1/clientmainwindow.cpp
+++ b/internal_system_v1/clientmainwindow.cpp
@@ -92,7 +92,7 @@
// 闂鏁存敼鍙拌处
m_proRecStandingBook = new ProblemRectStandingBook(this);
- ui->tabWidget->addTab(m_proRecStandingBook,"闂鏁存敼鍙拌处");
+ //ui->tabWidget->addTab(m_proRecStandingBook,"闂鏁存敼鍙拌处");
// 鍏宠仈鍚勪釜鍔熻兘妲�
connect(m_coverInfo,SIGNAL(sendComName(QString)),m_searchInfo,SLOT(addComName(QString)));
@@ -112,10 +112,10 @@
ui->tabWidget->insertTab(0,m_conInfo2,"灏侀潰淇℃伅");
m_problemList = new ProblemList(this);
- ui->tabWidget->addTab(m_problemList,"闂娓呭崟");
+ //ui->tabWidget->addTab(m_problemList,"闂娓呭崟");
m_problemRectifResult = new ProblemRectificationResult(this);
- ui->tabWidget->addTab(m_problemRectifResult,"鏁存敼鎴愭灉");
+ //ui->tabWidget->addTab(m_problemRectifResult,"鏁存敼鎴愭灉");
m_tableItemDelegate = new TableItemDelegate(); // 浠g悊 绂佺敤缂栬緫
m_editDelegate = new QItemDelegate(this); // 鍙紪杈�
diff --git a/internal_system_v1/searchinfo.cpp b/internal_system_v1/searchinfo.cpp
index d476404..113389f 100644
--- a/internal_system_v1/searchinfo.cpp
+++ b/internal_system_v1/searchinfo.cpp
@@ -149,6 +149,9 @@
// 缁煎悎褰曞叆淇℃伅琛� 鍒涘缓
createTableComprehensiveEntryInfo("comprehensive_entry_info");
+ // 鏁存敼鍙拌处淇℃伅琛� 鍒涘缓
+ createTableStandingBook("standing_book_info");
+
}
// 缁煎悎褰曞叆淇℃伅琛� 浠ョ紪鐮佷綔涓烘寚鏍囧悕
@@ -361,6 +364,60 @@
濉〃浜� TEXT,\
鑱旂郴鐢佃瘽 TEXT,\
濉姤鏃ユ湡 TEXT\
+ )").arg(tableName);
+ QSqlQuery query;
+ if(query.exec(sql))
+ {
+ qDebug()<<QString("create %1 ok...").arg(tableName);
+ }else{
+ qDebug()<<QString("create %1 fail...").arg(tableName)<<query.lastError().text();
+ }
+}
+
+// 鏁存敼鍙拌处
+void SearchInfo::createTableStandingBook(QString tableName){
+ QString sql = QString("CREATE TABLE %1 (\
+ id INTEGER PRIMARY KEY AUTOINCREMENT,\
+ 瀹¤绫诲埆 TEXT,\
+ 瀹¤骞村害 TEXT,\
+ 瀹¤鍗曚綅 TEXT,\
+ 瀹¤鏂瑰紡 TEXT,\
+ 璐d换涓讳綋鍚嶇О TEXT,\
+ 瀹¤椤圭洰 TEXT,\
+ 瀹¤椤圭洰鍚嶇О TEXT,\
+ 闂绫诲埆 TEXT,\
+ 闂瀹氭�� TEXT,\
+ 闂鎻忚堪 TEXT,\
+ 闂瀹氭�ф硶瑙勪緷鎹� TEXT,\
+ 娑夊強閲戦 TEXT,\
+ 闂鎻忚堪浣愯瘉璧勬枡 TEXT,\
+ 瀹¤鏈熼棿宸叉暣鏀� TEXT,\
+ 鏁存敼閲戦 TEXT,\
+ 鏁存敼鎯呭喌1 TEXT,\
+ 鏁存敼鎯呭喌浣愯瘉璧勬枡1 TEXT,\
+ 鏁存敼缁撴灉 TEXT,\
+ 鏁存敼瀹屾垚鏃堕棿 TEXT,\
+ 灏氭湭鏁存敼鍒颁綅鐨勫師鍥� TEXT,\
+ 鏁存敼棰勮瀹屾垚鏃堕棿 TEXT,\
+ 鏁存敼鎯呭喌2 TEXT,\
+ 鏁存敼鎯呭喌浣愯瘉璧勬枡2 TEXT,\
+ 鏁存敼妫�鏌ョ粨鏋淿妫�鏌ユ椂闂� TEXT,\
+ 鏁存敼妫�鏌ョ粨鏋淿妫�鏌ユ柟寮� TEXT,\
+ 鏁存敼妫�鏌ョ粨鏋淿妫�鏌ョ粨鏋� TEXT,\
+ 宸叉暣鏀筥绾犳闂 TEXT,\
+ 宸叉暣鏀筥瀹屽杽鍒跺害 TEXT,\
+ 宸叉暣鏀筥瀹屾垚鏃堕棿 TEXT,\
+ 姝e湪鏁存敼_涓昏鍘熷洜 TEXT,\
+ 姝e湪鏁存敼_瀹屾垚鏃堕檺 TEXT,\
+ 灏氭湭鏁存敼_涓昏鍘熷洜 TEXT,\
+ 灏氭湭鏁存敼_璐d换閮ㄩ棬鎴栬矗浠讳汉 TEXT,\
+ 灏氭湭鏁存敼_瀹屾垚鏃堕檺 TEXT,\
+ 鍒跺害寤鸿_淇鍒跺害 TEXT,\
+ 鍒跺害寤鸿_鏂板鍒跺害 TEXT,\
+ 璧勯噾鏀跺洖_鎸藉洖鎹熷け TEXT,\
+ 璧勯噾鏀跺洖_鍏朵粬 TEXT,\
+ 璧勯噾鏀跺洖_瀹″噺 TEXT,\
+ log_time TEXT\
)").arg(tableName);
QSqlQuery query;
if(query.exec(sql))
@@ -674,6 +731,7 @@
return;
}
QString path = QFileDialog::getOpenFileName(this,"閫夋嫨琛ㄦ牸妯℃澘:鍗曚綅鍐呴儴瀹¤涓氬姟鎯呭喌琛�","./","excel(*鍗曚綅鍐呴儴瀹¤涓氬姟鎯呭喌琛�.xls)");
+ if(path.isNull()) return;
ui->label_excel_path->setText(path);
QStringList paths = path.split(".");
QString newPath = paths.at(0)+"_"+ui->comboBox_company->currentText()+"."+paths.at(1);
diff --git a/internal_system_v1/searchinfo.h b/internal_system_v1/searchinfo.h
index ba60255..22e659d 100644
--- a/internal_system_v1/searchinfo.h
+++ b/internal_system_v1/searchinfo.h
@@ -31,6 +31,8 @@
void createTableProblemListInfo(QString tableName); // 闂娓呭崟鍒楄〃淇℃伅琛�
void createTableComprehensiveEntryInfo(QString tableName); // 缁煎悎褰曞叆淇℃伅琛�
+ void createTableStandingBook(QString tableName); // 鏁存敼鍙拌处
+
private slots:
void on_pushButton_search_clicked();
diff --git a/internal_system_v1/threemergeproblemlist.cpp b/internal_system_v1/threemergeproblemlist.cpp
index 5326204..2b00b35 100644
--- a/internal_system_v1/threemergeproblemlist.cpp
+++ b/internal_system_v1/threemergeproblemlist.cpp
@@ -4,6 +4,8 @@
#include <QSqlQuery>
#include <QSqlError>
#include <QMessageBox>
+#include <QDir>
+#include <QFileDevice>
ThreeMergeProblemList::ThreeMergeProblemList(QWidget *parent) :
QMainWindow(parent),
@@ -17,8 +19,24 @@
ui->menubar->hide();
initUi(); // 鍒濆鍖栨墍鏈夌晫闈�
- //ui->tableWidget_2->hide();
- //ui->tableWidget_3->hide();
+ // 闅愯棌
+ //ui->comboBox_company->hide();
+
+ ui->tableWidget_2->hide();
+ ui->pushButton_save->hide();
+ ui->pushButton_addRow->hide();
+ ui->label_5->hide();
+ ui->label->hide();
+
+
+ ui->tableWidget_3->hide();
+ ui->pushButton_save_2->hide();
+ ui->pushButton_addRow_2->hide();
+ ui->label_6->hide();
+ ui->label_2->hide();
+
+ ui->line->hide();
+ ui->line_2->hide();
}
@@ -27,6 +45,149 @@
delete ui;
}
+// 鎷跨粨鏋滈泦鐨剆ql
+int ThreeMergeProblemList::selectSQL(QString sql,QVector<QVector<QString>> &result)
+{
+ int rows = -1;
+ QSqlQuery query;
+ if(query.exec(sql))
+ {
+ qDebug()<<QString("selectSQL ok...");
+
+ while(query.next()){ // 娣诲姞缁撴灉闆�
+ int idx = 0;
+ QVariant var;
+ QVector<QString> lines;
+ while((var = query.value(idx++)).isValid()){
+ lines.append(var.toString());
+ }
+ result.append(lines);
+ }
+ rows = result.size();
+
+ }else{
+ qDebug()<<QString("selectSQL fail...")<<query.lastError().text();
+ }
+ return rows;
+}
+
+// 鎷夸慨鏀规潯鏁扮殑sql
+int ThreeMergeProblemList::changeSQL(QString sql)
+{
+ int rows = -1;
+ QSqlQuery query;
+ if(query.exec(sql))
+ {
+ qDebug()<<QString("changeSQL ok...");
+ rows = query.numRowsAffected();
+
+ }else{
+ qDebug()<<QString("changeSQL fail...")<<query.lastError().text();
+ }
+ return rows;
+}
+
+int ThreeMergeProblemList::saveDataLine(int row)
+{
+ if(ui->tableWidget->item(row,0)==nullptr) {
+ qDebug()<<"褰撳墠琛岄涓虹┖"<<row;
+ return 0;
+ }
+ // 鍙栧嚭绱㈠紩鍙锋潵鍒ゆ柇涓�涓�
+ QString sql = QString("select id from standing_book_info where id=%1").arg(ui->tableWidget->item(row,0)->text());
+ qDebug()<<"id sql:"<<sql;
+ QVector<QVector<QString>> res;
+ int rows = selectSQL(sql,res);
+ if( rows > 0){
+ // 瀛樺湪锛屽垯鏇存柊鍐呭鍗冲彲
+ qDebug()<<"id宸插瓨鍦紝闇�鏇存柊鏁版嵁鍗冲彲";
+ sql = QString("update standing_book_info set 瀹¤绫诲埆='%1',瀹¤骞村害='%2',瀹¤鍗曚綅='%3',瀹¤鏂瑰紡='%4',璐d换涓讳綋鍚嶇О='%5'"
+ ",瀹¤椤圭洰='%6',瀹¤椤圭洰鍚嶇О='%7',闂绫诲埆='%8',闂瀹氭��='%9',闂鎻忚堪='%10',闂瀹氭�ф硶瑙勪緷鎹�='%11',娑夊強閲戦='%12',闂鎻忚堪浣愯瘉璧勬枡='%13'"
+ ",瀹¤鏈熼棿宸叉暣鏀�='%14',鏁存敼閲戦='%15',鏁存敼鎯呭喌1='%16',鏁存敼鎯呭喌浣愯瘉璧勬枡1='%17',鏁存敼缁撴灉='%18',鏁存敼瀹屾垚鏃堕棿='%19',灏氭湭鏁存敼鍒颁綅鐨勫師鍥�='%20',鏁存敼棰勮瀹屾垚鏃堕棿='%21'"
+ ",鏁存敼鎯呭喌2='%22',鏁存敼鎯呭喌浣愯瘉璧勬枡2='%23',鏁存敼妫�鏌ョ粨鏋淿妫�鏌ユ椂闂�='%24',鏁存敼妫�鏌ョ粨鏋淿妫�鏌ユ柟寮�='%25',鏁存敼妫�鏌ョ粨鏋淿妫�鏌ョ粨鏋�='%26',宸叉暣鏀筥绾犳闂='%27',宸叉暣鏀筥瀹屽杽鍒跺害='%28',宸叉暣鏀筥瀹屾垚鏃堕棿='%29'"
+ ",姝e湪鏁存敼_涓昏鍘熷洜='%30',姝e湪鏁存敼_瀹屾垚鏃堕檺='%31',灏氭湭鏁存敼_涓昏鍘熷洜='%32',灏氭湭鏁存敼_璐d换閮ㄩ棬鎴栬矗浠讳汉='%33',灏氭湭鏁存敼_瀹屾垚鏃堕檺='%34',鍒跺害寤鸿_淇鍒跺害='%35',鍒跺害寤鸿_鏂板鍒跺害='%36',璧勯噾鏀跺洖_鎸藉洖鎹熷け='%37'"
+ ",璧勯噾鏀跺洖_鍏朵粬='%38',璧勯噾鏀跺洖_瀹″噺='%39' where id=%40").arg(ui->tableWidget->item(row,1)->text()).arg(ui->tableWidget->item(row,2)->text()).arg(ui->tableWidget->item(row,3)->text()).arg(ui->tableWidget->item(row,4)->text())
+ .arg(ui->tableWidget->item(row,5)->text()).arg(ui->tableWidget->item(row,6)->text()).arg(ui->tableWidget->item(row,7)->text()).arg(ui->tableWidget->item(row,8)->text()).arg(ui->tableWidget->item(row,9)->text()).arg(ui->tableWidget->item(row,10)->text())
+ .arg(ui->tableWidget->item(row,11)->text()).arg(ui->tableWidget->item(row,12)->text()).arg(ui->tableWidget->item(row,13)->text()).arg(ui->tableWidget->item(row,14)->text()).arg(ui->tableWidget->item(row,15)->text()).arg(ui->tableWidget->item(row,16)->text())
+ .arg(ui->tableWidget->item(row,17)->text()).arg(ui->tableWidget->item(row,18)->text()).arg(ui->tableWidget->item(row,19)->text()).arg(ui->tableWidget->item(row,20)->text()).arg(ui->tableWidget->item(row,21)->text()).arg(ui->tableWidget->item(row,22)->text())
+ .arg(ui->tableWidget->item(row,23)->text()).arg(ui->tableWidget->item(row,24)->text()).arg(ui->tableWidget->item(row,25)->text()).arg(ui->tableWidget->item(row,26)->text()).arg(ui->tableWidget->item(row,27)->text()).arg(ui->tableWidget->item(row,28)->text())
+ .arg(ui->tableWidget->item(row,29)->text()).arg(ui->tableWidget->item(row,30)->text()).arg(ui->tableWidget->item(row,31)->text()).arg(ui->tableWidget->item(row,32)->text()).arg(ui->tableWidget->item(row,33)->text()).arg(ui->tableWidget->item(row,34)->text())
+ .arg(ui->tableWidget->item(row,35)->text()).arg(ui->tableWidget->item(row,36)->text()).arg(ui->tableWidget->item(row,37)->text()).arg(ui->tableWidget->item(row,38)->text()).arg(ui->tableWidget->item(row,39)->text()).arg(ui->tableWidget->item(row,0)->text());
+ qDebug()<<sql;
+ rows = changeSQL(sql);
+ if(rows > 0){
+ qDebug()<<"change ok";
+ }else{
+ qDebug()<<"change fail";
+ }
+ }else{
+ // rows涓�-1 璇存槑sql璇彞鏈夐棶棰�
+ if(rows == -1){
+ qDebug()<<"sql error";
+ return -1;
+ }
+ // 涓嶅瓨鍦紝鍒欓渶瑕佹柊澧炴彃鍏�
+ qDebug()<<"涓嶅瓨鍦╥d锛屾彃鍏ユ暟鎹�";
+ sql = QString("insert into standing_book_info (瀹¤绫诲埆,瀹¤骞村害,瀹¤鍗曚綅,瀹¤鏂瑰紡,璐d换涓讳綋鍚嶇О"
+ ",瀹¤椤圭洰,瀹¤椤圭洰鍚嶇О,闂绫诲埆,闂瀹氭��,闂鎻忚堪,闂瀹氭�ф硶瑙勪緷鎹�,娑夊強閲戦,闂鎻忚堪浣愯瘉璧勬枡"
+ ",瀹¤鏈熼棿宸叉暣鏀�,鏁存敼閲戦,鏁存敼鎯呭喌1,鏁存敼鎯呭喌浣愯瘉璧勬枡1,鏁存敼缁撴灉,鏁存敼瀹屾垚鏃堕棿,灏氭湭鏁存敼鍒颁綅鐨勫師鍥�,鏁存敼棰勮瀹屾垚鏃堕棿"
+ ",鏁存敼鎯呭喌2,鏁存敼鎯呭喌浣愯瘉璧勬枡2,鏁存敼妫�鏌ョ粨鏋淿妫�鏌ユ椂闂�,鏁存敼妫�鏌ョ粨鏋淿妫�鏌ユ柟寮�,鏁存敼妫�鏌ョ粨鏋淿妫�鏌ョ粨鏋�,宸叉暣鏀筥绾犳闂,宸叉暣鏀筥瀹屽杽鍒跺害,宸叉暣鏀筥瀹屾垚鏃堕棿"
+ ",姝e湪鏁存敼_涓昏鍘熷洜,姝e湪鏁存敼_瀹屾垚鏃堕檺,灏氭湭鏁存敼_涓昏鍘熷洜,灏氭湭鏁存敼_璐d换閮ㄩ棬鎴栬矗浠讳汉,灏氭湭鏁存敼_瀹屾垚鏃堕檺,鍒跺害寤鸿_淇鍒跺害,鍒跺害寤鸿_鏂板鍒跺害,璧勯噾鏀跺洖_鎸藉洖鎹熷け"
+ ",璧勯噾鏀跺洖_鍏朵粬,璧勯噾鏀跺洖_瀹″噺,log_time) values ('%1','%2','%3','%4','%5','%6','%7','%8','%9','%10','%11','%12','%13','%14','%15','%16','%17','%18','%19','%20','%21','%22','%23'"
+ ",'%24','%25','%26','%27','%28','%29','%30','%31','%32','%33','%34','%35','%36','%37','%38','%39','%40')").arg(ui->tableWidget->item(row,1)->text()).arg(ui->tableWidget->item(row,2)->text()).arg(ui->tableWidget->item(row,3)->text()).arg(ui->tableWidget->item(row,4)->text())
+ .arg(ui->tableWidget->item(row,5)->text()).arg(ui->tableWidget->item(row,6)->text()).arg(ui->tableWidget->item(row,7)->text()).arg(ui->tableWidget->item(row,8)->text()).arg(ui->tableWidget->item(row,9)->text()).arg(ui->tableWidget->item(row,10)->text())
+ .arg(ui->tableWidget->item(row,11)->text()).arg(ui->tableWidget->item(row,12)->text()).arg(ui->tableWidget->item(row,13)->text()).arg(ui->tableWidget->item(row,14)->text()).arg(ui->tableWidget->item(row,15)->text()).arg(ui->tableWidget->item(row,16)->text())
+ .arg(ui->tableWidget->item(row,17)->text()).arg(ui->tableWidget->item(row,18)->text()).arg(ui->tableWidget->item(row,19)->text()).arg(ui->tableWidget->item(row,20)->text()).arg(ui->tableWidget->item(row,21)->text()).arg(ui->tableWidget->item(row,22)->text())
+ .arg(ui->tableWidget->item(row,23)->text()).arg(ui->tableWidget->item(row,24)->text()).arg(ui->tableWidget->item(row,25)->text()).arg(ui->tableWidget->item(row,26)->text()).arg(ui->tableWidget->item(row,27)->text()).arg(ui->tableWidget->item(row,28)->text())
+ .arg(ui->tableWidget->item(row,29)->text()).arg(ui->tableWidget->item(row,30)->text()).arg(ui->tableWidget->item(row,31)->text()).arg(ui->tableWidget->item(row,32)->text()).arg(ui->tableWidget->item(row,33)->text()).arg(ui->tableWidget->item(row,34)->text())
+ .arg(ui->tableWidget->item(row,35)->text()).arg(ui->tableWidget->item(row,36)->text()).arg(ui->tableWidget->item(row,37)->text()).arg(ui->tableWidget->item(row,38)->text()).arg(ui->tableWidget->item(row,39)->text()).arg(QDateTime::currentDateTime().toString("yyyy/MM/dd HH:mm:ss"));
+ qDebug()<<sql;
+ rows = changeSQL(sql);
+ if(rows > 0){
+ qDebug()<<"insert ok";
+ }else{
+ qDebug()<<"insert fail";
+ }
+
+ }
+ return rows;
+}
+
+// path 涓烘枃浠跺畬鏁磋矾寰�
+// id涓哄瓙鐩綍鍚嶅瓧
+int ThreeMergeProblemList::saveFile(QString path, QString id,QString &absSavePath)
+{
+ // 鏍规嵁id鏉ユ寚瀹氬瓙鐩綍杩涜鏂囦欢鐨勬嫹璐濆拰瀛樺偍
+ // 榛樿淇濆瓨鍒板綋鍓峞vidence鐩綍涓嬬殑id瀛愮洰褰曚腑
+ QFile sourceFile(path);
+ if(!sourceFile.exists()){
+ qDebug()<<"target file not exist:"<<path;
+ return -1;
+ }
+
+ QString curPath = QString("./evidence/%1/").arg(id);
+ QDir dir;
+ if(!dir.exists(curPath)){
+ // 鍒欑洿鎺ュ垱寤�
+ if(!dir.mkpath(curPath)){
+ qDebug()<<"create path fail:"<<curPath;
+ return 0; // 鍒涘缓澶辫触
+ }
+ }
+ // 鎴愬姛
+ // 寮�濮嬫嫹璐濇枃浠跺埌鎸囧畾浣嶇疆
+ QFileInfo finfo(path);
+ QString distinationPath = curPath+finfo.fileName();
+ if(sourceFile.copy(distinationPath)){
+ qDebug()<<"copy ok:"<<distinationPath;
+ absSavePath = distinationPath;
+ return 1;
+ }else{
+ qDebug()<<"copy fail:"<<distinationPath<<sourceFile.errorString();
+ return -2;
+ }
+
+}
void ThreeMergeProblemList::initUi()
{
initProblemRectBookUi(); // 鍒濆鍖栨暣鏀瑰彴璐�
@@ -269,9 +430,13 @@
// 鍙抽敭鑿滃崟
m_menuRectBook = new QMenu(this);
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()));
}
@@ -355,6 +520,8 @@
}
+
+
void ThreeMergeProblemList::showMenuSlot(QPoint)
{
m_menu->exec(QCursor::pos());
@@ -396,12 +563,61 @@
{
int row = ui->tableWidget->currentRow();
if(row>=0){
- qDebug()<<"ok";
+ qDebug()<<"delete ok";
ui->tableWidget->removeRow(row);
}else{
- qDebug()<<"fail";
+ qDebug()<<"delete fail";
}
}
+
+void ThreeMergeProblemList::saveActionRectBook()
+{
+ // 鍗曡淇濆瓨锛屽厛鍒ゆ柇id鍙锋槸涓嶆槸瀛樺湪锛屽瓨鍦ㄥ垯鏄洿鏂帮紝涓嶅瓨鍦ㄥ垯鏄彃鍏�
+
+ int row = ui->tableWidget->currentRow();
+ auto item = ui->tableWidget->currentItem();
+ if(row>=0 && item){
+ qDebug()<<"save ok"<< row << item->row()<<item->column();
+ int rows = saveDataLine(row);
+ if(rows>0){
+ // 闇�瑕佸皢鏂囦欢鎷疯礉鍒癷d鐩綍
+ QString fpath = ui->tableWidget->item(row,13)->text();
+ QString spath = ui->tableWidget->item(row,17)->text();
+ QString tpath = ui->tableWidget->item(row,23)->text();
+ QString fid = ui->tableWidget->item(row,0)->text();
+ qDebug()<<"鎷疯礉鏂囦欢:"<<fid<<fpath;
+
+ QString absSavePath1,absSavePath2,absSavePath3;
+
+ int sflag1 = saveFile(fpath,fid,absSavePath1); // 淇濆瓨绗竴涓�
+ if(sflag1==1){
+ ui->tableWidget->setItem(row,13,new QTableWidgetItem(absSavePath1));
+ }
+ int sflag2 = saveFile(spath,fid,absSavePath2); // 淇濆瓨绗簩涓�
+ if(sflag2==1){
+ ui->tableWidget->setItem(row,17,new QTableWidgetItem(absSavePath2));
+ }
+ int sflag3 = saveFile(tpath,fid,absSavePath3); // 淇濆瓨绗笁涓�
+ if(sflag3==1){
+ ui->tableWidget->setItem(row,23,new QTableWidgetItem(absSavePath3));
+ }
+ qDebug()<<"save falg:"<<sflag1<<sflag2<<sflag3;
+ if(sflag1 || sflag2 || sflag3){
+ saveDataLine(row);
+ }
+
+ QMessageBox::information(this,"淇濆瓨鎴愬姛","鏁版嵁鍐欏叆鎴愬姛");
+ }else{
+ QMessageBox::information(this,"淇濆瓨澶辫触","鏁版嵁鍐欏叆澶辫触锛岃妫�鏌ユ槸鍚︽瘡椤归兘鏈夋暟鎹簡");
+ }
+
+
+ }else{
+ qDebug()<<"save fail";
+ QMessageBox::information(this,"淇濆瓨澶辫触","娌℃湁鎸囧畾鐩爣琛屾垨鏈夌┖椤�...璇烽�夋嫨鏈夊唴瀹圭殑鐩爣琛屼繚瀛�");
+ }
+}
+
// 澧炲姞鍒扮涓�涓〃鏍肩殑琛�
void ThreeMergeProblemList::on_pushButton_addRow_3_clicked()
@@ -514,3 +730,103 @@
QMessageBox::information(this,"娣诲姞澶辫触","鍙兘娣诲姞鐨勬暟鎹笉鍏ㄥ鑷寸殑锛屽緱纭姣忚鐨勯椤规湁鏁版嵁");
}
}
+
+void ThreeMergeProblemList::on_pushButton_search_clicked()
+{
+ QString curText = ui->comboBox_standing_book_condt->currentText();
+
+ QString sql = "select * from standing_book_info ";
+ QString condition = "";
+ if(curText == "鍏ㄩ儴" || strcmp(curText.toLocal8Bit().data(),"鍏ㄩ儴")==0){
+ qDebug()<<"鍏ㄩ儴";
+ }else if(curText == "瀹¤绫诲埆" || strcmp(curText.toLocal8Bit().data(),"瀹¤绫诲埆")==0){
+ qDebug()<<"瀹¤绫诲埆";
+ 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());
+
+ }else if(curText == "闂绫诲埆" || strcmp(curText.toLocal8Bit().data(),"闂绫诲埆")==0){
+ qDebug()<<"闂绫诲埆";
+ 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());
+
+ }else if(curText == "璐d换涓讳綋鍚嶇О" || strcmp(curText.toLocal8Bit().data(),"璐d换涓讳綋鍚嶇О")==0){
+ qDebug()<<"璐d换涓讳綋鍚嶇О";
+ condition = QString(" where 璐d换涓讳綋鍚嶇О='%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());
+
+ }else if(curText == "娑夊強閲戦" || strcmp(curText.toLocal8Bit().data(),"娑夊強閲戦")==0){
+ qDebug()<<"娑夊強閲戦";
+ 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());
+
+ }
+
+
+ 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_save_3_clicked()
+{
+ int hasContentRow=0;
+ for(int i=0;i<ui->tableWidget->rowCount();++i){
+ int row = saveDataLine(i);
+ if(row > 0) {
+ hasContentRow++;
+
+ // 闇�瑕佸皢鏂囦欢鎷疯礉鍒癷d鐩綍
+ QString fpath = ui->tableWidget->item(i,13)->text();
+ QString spath = ui->tableWidget->item(i,17)->text();
+ QString tpath = ui->tableWidget->item(i,23)->text();
+ QString fid = ui->tableWidget->item(i,0)->text();
+ qDebug()<<"鎷疯礉鏂囦欢:"<<fid<<fpath;
+
+ QString absSavePath1,absSavePath2,absSavePath3;
+
+ int sflag1 = saveFile(fpath,fid,absSavePath1); // 淇濆瓨绗竴涓�
+ if(sflag1==1){
+ ui->tableWidget->setItem(i,13,new QTableWidgetItem(absSavePath1));
+ }
+ int sflag2 = saveFile(spath,fid,absSavePath2); // 淇濆瓨绗簩涓�
+ if(sflag2==1){
+ ui->tableWidget->setItem(i,17,new QTableWidgetItem(absSavePath2));
+ }
+ int sflag3 = saveFile(tpath,fid,absSavePath3); // 淇濆瓨绗笁涓�
+ if(sflag3==1){
+ ui->tableWidget->setItem(i,23,new QTableWidgetItem(absSavePath3));
+ }
+ qDebug()<<"save falg:"<<sflag1<<sflag2<<sflag3;
+ if(sflag1 || sflag2 || sflag3){
+ saveDataLine(i);
+ }
+
+ }
+ }
+ QMessageBox::information(this,"淇濆瓨鎻愮ず",QString("鎬昏鏁颁负%1,鎴愬姛%2琛岋紝澶辫触%3琛屻��").arg(ui->tableWidget->rowCount())
+ .arg(hasContentRow).arg(ui->tableWidget->rowCount()-hasContentRow));
+}
diff --git a/internal_system_v1/threemergeproblemlist.h b/internal_system_v1/threemergeproblemlist.h
index 1600cd2..ccbab03 100644
--- a/internal_system_v1/threemergeproblemlist.h
+++ b/internal_system_v1/threemergeproblemlist.h
@@ -32,6 +32,11 @@
void readCompanyFromSQL();
void loadDataFromSQL(const QString &arg1);
+ int selectSQL(QString sql,QVector<QVector<QString>> &result); // 鎷跨粨鏋滈泦鐨剆ql
+ int changeSQL(QString sql); // 鎷挎潯鏁扮殑sql
+ int saveDataLine(int row); // 淇濆瓨鎸囧畾琛� 鍏堝垽鏂搴旂殑绱㈠紩id鏄惁瀛樺湪锛屽瓨鍦ㄥ垯鏇存柊锛屼笉瀛樺湪鍒欐柊寤烘彃鍏�
+ int saveFile(QString path, QString id,QString &absSavePath); // 鏍规嵁id鏉ユ寚瀹氬瓙鐩綍杩涜鏂囦欢鐨勬嫹璐濆拰瀛樺偍
+
private slots:
// 闂娓呭崟
void showMenuSlot(QPoint);
@@ -43,7 +48,8 @@
// 鏁存敼鍙拌处
void showMenuSlotRectBook(QPoint);
- void deleteActionRectBook();
+ void deleteActionRectBook(); // 鍒犻櫎褰撳墠琛�
+ void saveActionRectBook(); // 淇濆瓨鍗曡 褰撳墠
void on_pushButton_addRow_3_clicked();
@@ -57,6 +63,11 @@
void on_pushButton_save_clicked();
+
+ void on_pushButton_search_clicked();
+
+ void on_pushButton_save_3_clicked();
+
private:
Ui::ThreeMergeProblemList *ui;
QMenu *m_menu; // 闂娓呭崟鑿滃崟
diff --git a/internal_system_v1/threemergeproblemlist.ui b/internal_system_v1/threemergeproblemlist.ui
index f4522ed..a60a22a 100644
--- a/internal_system_v1/threemergeproblemlist.ui
+++ b/internal_system_v1/threemergeproblemlist.ui
@@ -593,7 +593,12 @@
</widget>
</item>
<item row="1" column="4">
- <widget class="QComboBox" name="comboBox">
+ <widget class="QComboBox" name="comboBox_standing_book_condt">
+ <item>
+ <property name="text">
+ <string>鍏ㄩ儴</string>
+ </property>
+ </item>
<item>
<property name="text">
<string>瀹¤绫诲埆</string>
@@ -611,7 +616,12 @@
</item>
<item>
<property name="text">
- <string>閲戦</string>
+ <string>娑夊強閲戦</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>鏁存敼閲戦</string>
</property>
</item>
<item>
@@ -619,10 +629,20 @@
<string>瀹¤鏂瑰紡</string>
</property>
</item>
+ <item>
+ <property name="text">
+ <string>璐d换涓讳綋鍚嶇О</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>瀹¤鍗曚綅</string>
+ </property>
+ </item>
</widget>
</item>
<item row="1" column="5">
- <widget class="QLineEdit" name="lineEdit">
+ <widget class="QLineEdit" name="lineEdit_sbook_condition">
<property name="placeholderText">
<string>璇疯緭鍏ュ乏杈归�夐」鐨勫搴旀潯浠�</string>
</property>
@@ -636,7 +656,7 @@
</widget>
</item>
<item row="1" column="6">
- <widget class="QPushButton" name="pushButton">
+ <widget class="QPushButton" name="pushButton_search">
<property name="text">
<string>鏌ヨ宸插綍</string>
</property>
--
Gitblit v1.8.0