wumu
2024-05-09 9ddb25babb774f773b62106fb4d1a9404af71fd9
internal_system_v1/problemmoney.cpp
@@ -3,9 +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),
@@ -21,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));
                }
            }
        });
    }
}
@@ -33,8 +54,31 @@
    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())
@@ -51,6 +95,8 @@
    }else{
        qDebug()<<"fail sql"<<__FUNCTION__;
    }
    static int cnt=1;
    ui->pushButton->setText(QString("提交--问题金额_%1次").arg(cnt++));
}
void ProblemMoney::showData(QVariantList vlist)
@@ -60,4 +106,26 @@
            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());
}