#include "newcheckmethod.h" #include "ui_newcheckmethod.h" #include "checkdevice.h" #include "qfiledialog.h" #include "formcheckpoint.h" #include <QMessageBox> #include <QDebug> NewCheckMethod::NewCheckMethod(QWidget *parent,QString sId) : QWidget(parent), methodId(sId), ui(new Ui::NewCheckMethod) { ui->setupUi(this); ui->tableWidget->verticalHeader()->setParent(nullptr); for(int i=0;i<7;i++) ui->tableWidget->horizontalHeader()->setSectionResizeMode(i,QHeaderView::Stretch); } NewCheckMethod::~NewCheckMethod() { delete ui; } void NewCheckMethod::getMethodInfo() { if(methodId!="") { programInfo = BaseCommonApi::getVerificationProgramInfo(methodId); ui->lineEditName->setText(programInfo.program_name); ui->lineEditUser->setText(programInfo.create_name); ui->dateEditTime->setDateTime(programInfo.create_time); ui->lineEditMark->setText(programInfo.remark); if(programInfo.img_path!="") { //QImage img(programInfo.img_path); //QImage scalimg = img.scaled(ui->label_11->size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); //ui->label_11->setPixmap(QPixmap::fromImage(scalimg)); QString strStyle = "QLabel{" "image:url("+programInfo.img_path+");" "}"; qDebug() << "strStyle:" << strStyle ; ui->label_11->setStyleSheet(strStyle); } chooseDevices(programInfo.tested_device_id,programInfo.standard_device_id); } } void NewCheckMethod::showEvent(QShowEvent *event) { } void NewCheckMethod::showCheckDevice() { CheckDevice *checkWindow = new CheckDevice; checkWindow->newCheckWnd = this; checkWindow->setWindowState(Qt::WindowMaximized); checkWindow->setWindowModality(Qt::ApplicationModal); checkWindow->show(); } void NewCheckMethod::choosePicture() { QString sName = QFileDialog::getOpenFileName(this,"选择图片","","Image File(*.bmp *.jpg *.jpeg *.png)"); //第一个参数:标准文件对话框的父窗口;第二个参数:标准文件对话框的标题;第三个参数:指定默认的目录;第四个参数:文件过滤器 //QImage img(sName); //int WindowW = this->width(); //int WindowH = this->height(); //ui->label->setGeometry(0, 0, WindowW, WindowH); //QImage scalimg = img.scaled(ui->label_11->size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); //ui->label_11->setPixmap(QPixmap::fromImage(scalimg)); //ui->label_11->setPixmap(QPixmap(sName)); QString strStyle = "QLabel{" "image:url("+sName+");" "}"; //qDebug() << "strStyle:" << strStyle ; ui->label_11->setStyleSheet(strStyle); programInfo.img_path = sName; } void NewCheckMethod::deletePicture() { ui->label_11->setStyleSheet(""); programInfo.img_path = ""; } void NewCheckMethod::showCheckPoint() { FormCheckPoint *checkWindow = new FormCheckPoint; //checkWindow.setWindowState(Qt::WindowMaximized); checkWindow->setWindowModality(Qt::ApplicationModal); checkWindow->show(); } void NewCheckMethod::on_pushButton_3_clicked() { if(programInfo.id=="") { BaseCommonApi baseApi; qint64 id = baseApi.generateId(); programInfo.id = QString::number(id); programInfo.program_name = ui->lineEditName->text(); programInfo.create_name = ui->lineEditUser->text(); programInfo.create_time = ui->dateEditTime->dateTime(); programInfo.remark = ui->lineEditMark->text(); //qDebug() << "programInfo.id" << programInfo.id ; if(BaseCommonApi::InsertVerificationProgramInfo(programInfo)) { this->close(); }else{ QMessageBox::warning(this, "警告", "保存失败!"); } }else{ programInfo.program_name = ui->lineEditName->text(); programInfo.create_name = ui->lineEditUser->text(); programInfo.create_time = ui->dateEditTime->dateTime(); programInfo.remark = ui->lineEditMark->text(); if(BaseCommonApi::UpdateVerificationProgramInfo(programInfo)) { this->close(); }else{ QMessageBox::warning(this, "警告", "保存失败!"); } } } void NewCheckMethod::on_pushButton_4_clicked() { this->close(); } void NewCheckMethod::chooseDevices(QString checkIds, QString bizIds) { programInfo.tested_device_id=checkIds; programInfo.standard_device_id = bizIds; ui->tableWidget->clearContents(); ui->tableWidget->setRowCount(0); QStringList idList; int rowCount = 0; int row=0; if(checkIds!="") { idList = checkIds.split(","); for(const QString& id : idList) { QList<TestedCatDevice> result = BaseCommonApi::getTestedCatDevice(id); if(result.length()>0){ rowCount = ui->tableWidget->rowCount(); ui->tableWidget->insertRow(rowCount); ui->tableWidget->setItem(row, 0, new QTableWidgetItem("被检设备")); ui->tableWidget->setItem(row, 1, new QTableWidgetItem(result[0].equipment_name)); //设置数据 ui->tableWidget->setItem(row, 2, new QTableWidgetItem(result[0].model)); //设置数据 ui->tableWidget->setItem(row, 3, new QTableWidgetItem(result[0].help_instruction)); //设置数据 ui->tableWidget->setItem(row, 4, new QTableWidgetItem(result[0].manufacture_no)); //设置数据 ui->tableWidget->setItem(row, 5, new QTableWidgetItem(result[0].manufacturer)); row++; } } idList.clear(); } if(bizIds!="") { idList = bizIds.split(","); for(const QString& id : idList) { QList<CatDeviceInfor> result = BaseCommonApi::getCatDeviceInfor(id); if(result.length()>0){ rowCount = ui->tableWidget->rowCount(); ui->tableWidget->insertRow(rowCount); ui->tableWidget->setItem(row, 0, new QTableWidgetItem("标准设备")); ui->tableWidget->setItem(row, 1, new QTableWidgetItem(result[0].equipment_name)); //设置数据 ui->tableWidget->setItem(row, 2, new QTableWidgetItem(result[0].model)); //设置数据 ui->tableWidget->setItem(row, 3, new QTableWidgetItem(result[0].remark)); //设置数据 ui->tableWidget->setItem(row, 4, new QTableWidgetItem(result[0].manufacture_no)); //设置数据 ui->tableWidget->setItem(row, 5, new QTableWidgetItem(result[0].manufacturer)); row++; } } idList.clear(); } }