From 332ab3cdf6fd91e5cee4f0a773ab2b270df2ed66 Mon Sep 17 00:00:00 2001 From: wumu <mayi@mayi.com> Date: 星期三, 20 九月 2023 23:18:51 +0800 Subject: [PATCH] 0921 --- internal_system_v1/problemcount.cpp | 87 +++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 87 insertions(+), 0 deletions(-) diff --git a/internal_system_v1/problemcount.cpp b/internal_system_v1/problemcount.cpp index 9a68b3e..d7e89e1 100644 --- a/internal_system_v1/problemcount.cpp +++ b/internal_system_v1/problemcount.cpp @@ -1,14 +1,101 @@ #include "problemcount.h" #include "ui_problemcount.h" +#include <QDebug> +#include <QFileDialog> +#include <QPushButton> +#include <QSqlQuery> + +extern int g_comId; +extern QString g_auditDate; ProblemCount::ProblemCount(QWidget *parent) : QMainWindow(parent), ui(new Ui::ProblemCount) { 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)); + }); + } } ProblemCount::~ProblemCount() { delete ui; } + +void ProblemCount::on_tableWidget_clicked(const QModelIndex &index) +{ + qDebug()<<"index"<<index; + int noMonCnt = 0; + for(int i=3;i<=6;++i){ + noMonCnt += ui->tableWidget->item(i,2)->text().toInt(); + } + ui->tableWidget->setItem(2,2,new QTableWidgetItem(QString::number(noMonCnt))); + + int allCnt = ui->tableWidget->item(1,2)->text().toInt()+ui->tableWidget->item(2,2)->text().toInt(); + ui->tableWidget->setItem(0,2,new QTableWidgetItem(QString::number(allCnt))); + + +} + +void ProblemCount::on_tableWidget_activated(const QModelIndex &index) +{ + qDebug()<<"activated index"<<index; + int noMonCnt = 0; + for(int i=3;i<=6;++i){ + noMonCnt += ui->tableWidget->item(i,2)->text().toInt(); + } + ui->tableWidget->setItem(2,2,new QTableWidgetItem(QString::number(noMonCnt))); + + int allCnt = ui->tableWidget->item(1,2)->text().toInt()+ui->tableWidget->item(2,2)->text().toInt(); + ui->tableWidget->setItem(0,2,new QTableWidgetItem(QString::number(allCnt))); + +} + +void ProblemCount::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_count (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 ProblemCount::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()); +} -- Gitblit v1.8.0