wumu
2023-09-16 e16e6f0cf090e4d9582bc38439f71a895499cf26
internal_system_v1/problemnotmoney.cpp
@@ -1,14 +1,67 @@
#include "problemnotmoney.h"
#include "ui_problemnotmoney.h"
#include <QFileDialog>
#include <QPushButton>
#include <QSqlQuery>
#include <QDebug>
extern int g_comId;
ProblemNotMoney::ProblemNotMoney(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::ProblemNotMoney)
{
    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){
                str += f + " ";
            }
            ui->tableWidget->setItem(i,4,new QTableWidgetItem(str));
        });
    }
}
ProblemNotMoney::~ProblemNotMoney()
{
    delete ui;
}
void ProblemNotMoney::on_tableWidget_clicked(const QModelIndex &index)
{
    int allCnt = 0;
    for(int i=1;i<ui->tableWidget->rowCount();++i){
        allCnt += ui->tableWidget->item(i,2)->text().toInt();
    }
    ui->tableWidget->setItem(0,2,new QTableWidgetItem(QString::number(allCnt)));
}
void ProblemNotMoney::on_pushButton_clicked()
{
    // 再统计一把
    on_tableWidget_clicked(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())
                .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);
    }
    values = values.left(values.length()-1);
    QString sql = QString("insert into problem_no_money (kpi_name,code,num,evidences,com_id) values %1").arg(values);
    qDebug()<<sql;
    QSqlQuery query;
    if(query.exec(sql)){
        qDebug()<<"OK sql"<<__FUNCTION__;
    }else{
        qDebug()<<"fail sql"<<__FUNCTION__;
    }
}