| | |
| | | #include "problemmoney.h" |
| | | #include "problemmoney.h" |
| | | #include "ui_problemmoney.h" |
| | | #include <QPushButton> |
| | | #include <QDebug> |
| | | #include <QSqlQuery> |
| | | #include <QFile> |
| | | #include <QProcess> |
| | | |
| | | #pragma execution_character_set("utf-8") |
| | | |
| | | extern int g_comId; |
| | | extern QString g_auditDate; |
| | | extern QString g_dataRootPath; |
| | | |
| | | ProblemMoney::ProblemMoney(QWidget *parent) : |
| | | QMainWindow(parent), |
| | | ui(new Ui::ProblemMoney) |
| | | { |
| | | ui->setupUi(this); |
| | | ui->tableWidget->setColumnWidth(0,300); |
| | | m_comId = g_comId; |
| | | for(int i=0;i<ui->tableWidget->rowCount();++i){ |
| | | QPushButton *btn = new QPushButton("上传",this); |
| | | ui->tableWidget->setCellWidget(i,3,btn); |
| | | connect(btn,&QPushButton::clicked,this,[=]{ |
| | | QStringList files = QFileDialog::getOpenFileNames(); |
| | | QString str; |
| | | for(auto f:files){ |
| | | 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)); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | |
| | | ProblemMoney::~ProblemMoney() |
| | | { |
| | | 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,'%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(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,time) values %1").arg(values); |
| | | qDebug()<<sql; |
| | | QSqlQuery query; |
| | | if(query.exec(sql)){ |
| | | qDebug()<<"OK sql"<<__FUNCTION__; |
| | | }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()); |
| | | } |