From 0d17c4e8a79283c64cb8950484ff908b6123e99d Mon Sep 17 00:00:00 2001 From: wumu <mayi@mayi.com> Date: 星期一, 26 二月 2024 23:13:42 +0800 Subject: [PATCH] 0226 --- internal_system_v1/problemmoney.cpp | 90 ++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 85 insertions(+), 5 deletions(-) diff --git a/internal_system_v1/problemmoney.cpp b/internal_system_v1/problemmoney.cpp index 7f5fce5..248bf78 100644 --- a/internal_system_v1/problemmoney.cpp +++ b/internal_system_v1/problemmoney.cpp @@ -3,6 +3,12 @@ #include <QPushButton> #include <QDebug> #include <QSqlQuery> +#include <QFile> +#include <QProcess> + +extern int g_comId; +extern QString g_auditDate; +extern QString g_dataRootPath; ProblemMoney::ProblemMoney(QWidget *parent) : QMainWindow(parent), @@ -10,7 +16,7 @@ { ui->setupUi(this); ui->tableWidget->setColumnWidth(0,300); - m_comId = 1; + m_comId = g_comId; for(int i=0;i<ui->tableWidget->rowCount();++i){ QPushButton *btn = new QPushButton("涓婁紶",this); ui->tableWidget->setCellWidget(i,3,btn); @@ -18,9 +24,27 @@ QStringList files = QFileDialog::getOpenFileNames(); QString str; for(auto f:files){ - str += f + " "; + copyFile(f); + QString targetPath = g_dataRootPath + QString("/%1/%2").arg(g_comId).arg(f.split("/").back()); + str += targetPath + " "; } ui->tableWidget->setItem(i,4,new QTableWidgetItem(str)); + }); + + // 鏌ョ湅浣愯瘉 + QPushButton *lookBtn = new QPushButton("鏌ョ湅",this); + ui->tableWidget->setCellWidget(i,5,lookBtn); + connect(lookBtn,&QPushButton::clicked,this,[=]{ + QStringList files = ui->tableWidget->item(i,4)->text().split(" "); + if(files.size() > 0 ){ + QString f = files.at(0); + qDebug()<<"f:"<<f; + if(f.size() > 10){ + f.replace("/", "\\"); //win32涓嬫浛鎹㈡枩鏉� + QProcess process; + process.startDetached("explorer", QStringList() << QString("/select,") << QString("%1").arg(f)); + } + } }); } } @@ -30,17 +54,40 @@ delete ui; } +void ProblemMoney::copyFile(QString path) +{ + QStringList paths = path.split("/"); + QString comPath = g_dataRootPath + QString("/%1").arg(g_comId); + QDir comDir(comPath); + if(!comDir.exists()){ + // 鍒涘缓璺緞 + if(QDir().mkdir(comPath)){ + qDebug()<<"鍒涘缓鐩綍鎴愬姛:"<<comPath; + } + } + QString targetPath = g_dataRootPath + QString("/%1/%2").arg(g_comId).arg(paths.back()); + qDebug()<<"targetPath"<<targetPath; + if(QFile::copy(path,targetPath)){ + qDebug()<<"鎴愬姛鎷疯礉:"<<path; + }else{ + qDebug()<<"鎷疯礉澶辫触"<<path; + } +} + void ProblemMoney::on_pushButton_clicked() { + // 缁熻 + on_tableWidget_activated(QModelIndex()); + QString values = ""; for(int i=0;i<ui->tableWidget->rowCount();++i){ - values += QString("('%1','%2',%3,'%4',%5),").arg(ui->tableWidget->item(i,0)->text()) + values += QString("('%1','%2',%3,'%4',%5,'%6'),").arg(ui->tableWidget->item(i,0)->text()) .arg(ui->tableWidget->item(i,1)->text()).arg(ui->tableWidget->item(i,2)->text().toInt()) .arg(ui->tableWidget->item(i,4)->text()) - .arg(m_comId); + .arg(g_comId).arg(g_auditDate); } values = values.left(values.length()-1); - QString sql = QString("insert into problem_money (kpi_name,code,num,evidences,com_id) values %1").arg(values); + QString sql = QString("insert into problem_money (kpi_name,code,num,evidences,com_id,time) values %1").arg(values); qDebug()<<sql; QSqlQuery query; if(query.exec(sql)){ @@ -48,4 +95,37 @@ }else{ qDebug()<<"fail sql"<<__FUNCTION__; } + static int cnt=1; + ui->pushButton->setText(QString("鎻愪氦--闂閲戦_%1娆�").arg(cnt++)); +} + +void ProblemMoney::showData(QVariantList vlist) +{ + for(int i=0;i<vlist.size();++i){ + if(vlist.at(i).isValid()){ + ui->tableWidget->setItem(i,2,new QTableWidgetItem(vlist.at(i).toString())); + } + } + // 缁熻 + on_tableWidget_activated(QModelIndex()); + qDebug()<<"g_dataRootPath"<<g_dataRootPath; + +} + +void ProblemMoney::on_tableWidget_activated(const QModelIndex &index) +{ + // 鍏堣绠楀悎瑙勬�ч棶棰橀噾棰� + double allComSum = 0; + for(int i=3;i<11;++i){ + allComSum += ui->tableWidget->item(i,2)->text().toDouble(); + } + ui->tableWidget->setItem(2,2,new QTableWidgetItem(QString::number(allComSum))); + allComSum += ui->tableWidget->item(1,2)->text().toDouble(); + ui->tableWidget->setItem(0,2,new QTableWidgetItem(QString::number(allComSum))); +} + +void ProblemMoney::on_tableWidget_clicked(const QModelIndex &index) +{ + // 缁熻 + on_tableWidget_activated(QModelIndex()); } -- Gitblit v1.8.0