75 lines
2.1 KiB
C++
75 lines
2.1 KiB
C++
#include "Reportform.h"
|
||
#include "ui_Reportform.h"
|
||
#include <QFileDialog>
|
||
#include <QDebug>
|
||
|
||
ReportForm::ReportForm(QWidget *parent) :
|
||
BaseWgt(parent),
|
||
ui(new Ui::ReportForm)
|
||
{
|
||
ui->setupUi(m_pMainWgt);
|
||
resize(700,650);
|
||
setWindowTitle("诊断报告");
|
||
m_strReportName = "";
|
||
m_filePath = "";
|
||
connect(ui->ChoosePath_Btn, SIGNAL(clicked()), this, SLOT(ChoosePath()));
|
||
connect(ui->PDF_radioButton, SIGNAL(toggled(bool)),this,SLOT(ChoosePDF(bool)));
|
||
connect(ui->Word_radioButton, SIGNAL(toggled(bool)),this,SLOT(ChooseWord(bool)));
|
||
connect(ui->Report_Btn, SIGNAL(clicked()),this,SLOT(Report()));
|
||
|
||
ui->Result_Edit->setPlaceholderText("请输入...");
|
||
|
||
}
|
||
|
||
ReportForm::~ReportForm()
|
||
{
|
||
delete ui;
|
||
}
|
||
void ReportForm::InitReport(QString path,QStringList& strImagePathList,QString ReportName,REPORT_INFO& reportInfo)
|
||
{
|
||
_reportInfo = reportInfo;
|
||
ui->ReportPath_Edit->setText(path);
|
||
m_strReportName = ReportName;
|
||
m_filePath = path;
|
||
strImagePath = strImagePathList;
|
||
}
|
||
|
||
void ReportForm::ChoosePath()
|
||
{
|
||
QString dirpath = QFileDialog::getExistingDirectory(this, QStringLiteral("选择目录"), "./", QFileDialog::ShowDirsOnly);
|
||
if(dirpath.isEmpty()) dirpath = QDir::currentPath();
|
||
ui->ReportPath_Edit->setText(dirpath + "/" + m_strReportName);
|
||
m_filePath = dirpath + "\\" + m_strReportName;
|
||
}
|
||
void ReportForm::ChoosePDF(bool flag)
|
||
{
|
||
if(flag){
|
||
ui->Result_Edit->setVisible(true);
|
||
ui->label_2->setText("诊断结果及建议:");
|
||
}
|
||
|
||
}
|
||
void ReportForm::ChooseWord(bool flag)
|
||
{
|
||
if(flag){
|
||
ui->Result_Edit->setVisible(false);
|
||
ui->label_2->setText("提示:请在Word中输入诊断建议!");
|
||
}
|
||
}
|
||
|
||
void ReportForm::Report()
|
||
{
|
||
|
||
QString strResult =ui->Result_Edit->document()->toPlainText();
|
||
qDebug() << "Report:" << strResult;
|
||
QStringList strResultList = strResult.split(QRegExp("[\n]"),QString::SkipEmptyParts);
|
||
if(ui->PDF_radioButton->isChecked())
|
||
{
|
||
emit ReportPDF(strResultList,m_filePath);
|
||
|
||
}else{
|
||
cp.GetReport(_reportInfo,strImagePath);
|
||
}
|
||
|
||
}
|