151 lines
5.3 KiB
C++
151 lines
5.3 KiB
C++
#include "interfaceTestWin.h"
|
|
#include "ui_interfaceTestWin.h"
|
|
#include "testThread.h"
|
|
#include "globalParams.h"
|
|
#include <QMessageBox>
|
|
#include <QDateTime>
|
|
|
|
InterfaceTestWin::InterfaceTestWin(QWidget *parent)
|
|
: QWidget(parent)
|
|
, ui(new Ui::InterfaceTestWin)
|
|
{
|
|
ui->setupUi(this);
|
|
|
|
serialModel = new QStandardItemModel(this);
|
|
serialSelect = new QItemSelectionModel(serialModel);
|
|
serialModel->setColumnCount(2);
|
|
ui->tableViewSerial->setModel(serialModel);
|
|
ui->tableViewSerial->setSelectionModel(serialSelect);
|
|
ui->tableViewSerial->horizontalHeader()->setVisible(false);
|
|
ui->tableViewSerial->verticalHeader()->setVisible(false);
|
|
ui->tableViewSerial->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
|
|
ui->tableViewSerial->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);
|
|
|
|
QFont font = ui->tableViewSerial->font();
|
|
//font.setPointSize(10);
|
|
ui->tableViewSerial->setFont(font);
|
|
|
|
QList<QStandardItem *> aItemList;
|
|
QStandardItem *aItem = new QStandardItem("串口接收");
|
|
aItem->setEditable(false);
|
|
font.setBold(true);
|
|
aItem->setFont(font);
|
|
aItem->setTextAlignment(Qt::AlignCenter);
|
|
aItemList.append(aItem);
|
|
aItem = new QStandardItem("");
|
|
aItem->setTextAlignment(Qt::AlignCenter);
|
|
aItemList.append(aItem);
|
|
serialModel->insertRow(serialModel->rowCount(),aItemList);
|
|
|
|
aItemList.clear();
|
|
aItem = new QStandardItem("串口发送");
|
|
aItem->setEditable(false);
|
|
font.setBold(true);
|
|
aItem->setFont(font);
|
|
aItem->setTextAlignment(Qt::AlignCenter);
|
|
aItemList.append(aItem);
|
|
aItem = new QStandardItem("");
|
|
aItem->setTextAlignment(Qt::AlignCenter);
|
|
aItemList.append(aItem);
|
|
serialModel->insertRow(serialModel->rowCount(),aItemList);
|
|
|
|
canModel = new QStandardItemModel(this);
|
|
canSelect = new QItemSelectionModel(canModel);
|
|
canModel->setColumnCount(2);
|
|
ui->tableViewCan->setModel(canModel);
|
|
ui->tableViewCan->setSelectionModel(canSelect);
|
|
ui->tableViewCan->horizontalHeader()->setVisible(false);
|
|
ui->tableViewCan->verticalHeader()->setVisible(false);
|
|
ui->tableViewCan->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
|
|
ui->tableViewCan->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);
|
|
|
|
aItemList.clear();
|
|
aItem = new QStandardItem("CAN接收");
|
|
aItem->setEditable(false);
|
|
font.setBold(true);
|
|
aItem->setFont(font);
|
|
aItem->setTextAlignment(Qt::AlignCenter);
|
|
aItemList.append(aItem);
|
|
aItem = new QStandardItem("");
|
|
aItem->setTextAlignment(Qt::AlignCenter);
|
|
aItemList.append(aItem);
|
|
canModel->insertRow(canModel->rowCount(),aItemList);
|
|
|
|
aItemList.clear();
|
|
aItem = new QStandardItem("CAN发送");
|
|
aItem->setEditable(false);
|
|
font.setBold(true);
|
|
aItem->setFont(font);
|
|
aItem->setTextAlignment(Qt::AlignCenter);
|
|
aItemList.append(aItem);
|
|
aItem = new QStandardItem("");
|
|
aItem->setTextAlignment(Qt::AlignCenter);
|
|
aItemList.append(aItem);
|
|
canModel->insertRow(canModel->rowCount(),aItemList);
|
|
|
|
connect(&TestThread::getInstance(),SIGNAL(serialRecvResultSignal(bool)),this,SLOT(serialRecvResultHandle(bool)),Qt::QueuedConnection);
|
|
connect(&TestThread::getInstance(),SIGNAL(serialSendResultSignal(bool)),this,SLOT(serialSendResultHandle(bool)),Qt::QueuedConnection);
|
|
}
|
|
|
|
InterfaceTestWin::~InterfaceTestWin()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
void InterfaceTestWin::serialRecvResultHandle(bool result)
|
|
{
|
|
QMap<QString,QString> map;
|
|
map["BDSN"] = globalParams::bdSN;
|
|
map["TESTER"] = globalParams::curUserId;
|
|
QDateTime cur = QDateTime::currentDateTime();
|
|
map["TEST_TIME"] = cur.toString("yyyy-MM-dd hh:mm:ss");
|
|
if(result){
|
|
serialModel->item(0,1)->setText("正常");
|
|
serialModel->item(0,1)->setForeground(QBrush(QColor(0,140,0)));
|
|
map["SERIAL_RECV"] = "PASS";
|
|
}else{
|
|
serialModel->item(0,1)->setText("不正常");
|
|
serialModel->item(0,1)->setForeground(QBrush(Qt::red));
|
|
map["SERIAL_RECV"] = "FAIL";
|
|
}
|
|
SQLITEDB::getInstance().saveRecord("INTERFACE_TEST",map);
|
|
}
|
|
|
|
void InterfaceTestWin::serialSendResultHandle(bool result)
|
|
{
|
|
QMap<QString,QString> map;
|
|
map["BDSN"] = globalParams::bdSN;
|
|
map["TESTER"] = globalParams::curUserId;
|
|
QDateTime cur = QDateTime::currentDateTime();
|
|
map["TEST_TIME"] = cur.toString("yyyy-MM-dd hh:mm:ss");
|
|
if(result){
|
|
serialModel->item(1,1)->setText("正常");
|
|
serialModel->item(1,1)->setForeground(QBrush(QColor(0,140,0)));
|
|
map["SERIAL_SEND"] = "PASS";
|
|
}else{
|
|
serialModel->item(1,1)->setText("不正常");
|
|
serialModel->item(1,1)->setForeground(QBrush(Qt::red));
|
|
map["SERIAL_SEND"] = "FAIL";
|
|
}
|
|
SQLITEDB::getInstance().saveRecord("INTERFACE_TEST",map);
|
|
}
|
|
|
|
void InterfaceTestWin::on_btnSerialTest_clicked()
|
|
{
|
|
if(TestThread::getInstance().isOnTest()){
|
|
QMessageBox::warning(this,"警告","请等待其他测试项完成再开始测试!",QMessageBox::Ok,QMessageBox::NoButton);
|
|
return;
|
|
}
|
|
|
|
serialModel->item(0,1)->setText("");
|
|
serialModel->item(0,1)->setForeground(QBrush(Qt::black));
|
|
serialModel->item(1,1)->setText("");
|
|
serialModel->item(1,1)->setForeground(QBrush(Qt::black));
|
|
|
|
QVector<TEST_TYPE> testList;
|
|
testList.append(TEST_TYPE::SERIAL);
|
|
TestThread::getInstance().setTestList(testList);
|
|
TestThread::getInstance().start();
|
|
}
|
|
|