#include "packinfo_page.h"
|
#include "ui_packinfo_page.h"
|
#include <QDateTime>
|
|
|
packinfo_page::packinfo_page(QWidget *parent, Work_Thread *wt) :
|
custom_dialog(parent),
|
ui(new Ui::packinfo_page)
|
{
|
ui->setupUi(this);
|
|
workThread = wt;
|
|
set_btn_beep(ui->pushButton_Exit,SIGNAL(pressed()));
|
|
connect(ui->pushButton_Exit,SIGNAL(released()),this,SLOT(buttonReleasedAction()));
|
|
timer_500ms = new QTimer(this);
|
connect(timer_500ms,SIGNAL(timeout()),this,SLOT(update_slot()));
|
}
|
|
packinfo_page::~packinfo_page()
|
{
|
delete ui;
|
delete timer_500ms;
|
//qDebug("~packinfo_page");
|
}
|
|
void packinfo_page::showPackinfoPage()
|
{
|
dspValue();
|
|
updateValue();
|
|
timer_500ms->start(500);
|
|
this->exec();
|
}
|
|
void packinfo_page::closePackinfoPage()
|
{
|
timer_500ms->stop();
|
|
this->close();
|
}
|
|
void packinfo_page::SystemTime(void)
|
{
|
QDateTime time = QDateTime::currentDateTime();//获取系统现在的时间
|
QString str = time.toString("yyyy-MM-dd hh:mm:ss"); //设置显示格式
|
ui->label_Time->setText(str);
|
}
|
|
void packinfo_page::checkIcon()
|
{
|
/*
|
if(workThread->iconState.usbState)
|
ui->label_USB->setPixmap(QPixmap(":new/prefix1/usb.png"));
|
else
|
ui->label_USB->setPixmap(QPixmap(""));
|
*/
|
}
|
|
void packinfo_page::dspValue()
|
{
|
QString title = tr("电箱信息--");
|
|
if(workThread->packParam.pack_type == PACK_TYPE_Halo){
|
title += tr("哈啰");
|
}
|
else{
|
title += tr("其它");
|
}
|
|
ui->label_Title->setText(title);
|
|
char verchars[24];
|
memset(verchars,'\0',sizeof(verchars));
|
memcpy(verchars,workThread->packData.boot_version,sizeof(workThread->packData.boot_version));
|
QString bootverstr(verchars);
|
ui->label_bootversion1->setText(bootverstr);
|
|
memset(verchars,'\0',sizeof(verchars));
|
memcpy(verchars,workThread->packData.soft_version,sizeof(workThread->packData.soft_version));
|
QString softverstr(verchars);
|
ui->label_softversion1->setText(softverstr);
|
|
memset(verchars,'\0',sizeof(verchars));
|
memcpy(verchars,workThread->packData.Barcode_info,sizeof(workThread->packData.Barcode_info));
|
QString barcodeverstr(verchars);
|
ui->label_barcodeinfo1->setText(barcodeverstr);
|
|
memset(verchars,'\0',sizeof(verchars));
|
memcpy(verchars,workThread->packData.hard_version,sizeof(workThread->packData.hard_version));
|
QString hardverstr(verchars);
|
ui->label_hardversion1->setText(hardverstr);
|
}
|
|
void packinfo_page::updateValue()
|
{
|
|
ui->label_cellsumvol1->setText(QString::number(((float)workThread->packData.cell_sum_vol/10),'f',1)+"V");
|
|
ui->label_maxvolsoc1->setText(QString::number(((float)workThread->packData.soc_max_vol/10),'f',1)+"%");
|
ui->label_minvolsoc1->setText(QString::number(((float)workThread->packData.soc_min_vol/10),'f',1)+"%");
|
|
ui->label_soh1->setText(QString::number(((float)workThread->packData.soh/10),'f',1)+"%");
|
|
ui->label_packinvol1->setText(QString::number(((float)workThread->packData.pack_vol_inside/10),'f',1)+"V");
|
ui->label_packoutvol1->setText(QString::number(((float)workThread->packData.pack_vol_outside/10),'f',1)+"V");
|
|
if(workThread->packData.pre_charge_mos_state == 0)
|
ui->label_prechgmos1->setText(tr("未闭合"));
|
else if(workThread->packData.pre_charge_mos_state == 1)
|
ui->label_prechgmos1->setText(tr("闭合"));
|
else
|
ui->label_prechgmos1->setText(tr("未知"));
|
|
if(workThread->packData.charge_mos_state == 0)
|
ui->label_chgmos1->setText(tr("未闭合"));
|
else if(workThread->packData.charge_mos_state == 1)
|
ui->label_chgmos1->setText(tr("闭合"));
|
else
|
ui->label_chgmos1->setText(tr("未知"));
|
|
if(workThread->packData.dischg_mos_state == 0)
|
ui->label_dismos1->setText(tr("未闭合"));
|
else if(workThread->packData.dischg_mos_state == 1)
|
ui->label_dismos1->setText(tr("闭合"));
|
else
|
ui->label_dismos1->setText(tr("未知"));
|
|
if(workThread->packData.junheng_on_state == 0)
|
ui->label_junhengon1->setText(tr("未开启"));
|
else if(workThread->packData.junheng_on_state == 1)
|
ui->label_junhengon1->setText(tr("开启"));
|
else
|
ui->label_junhengon1->setText(tr("未知"));
|
|
if(workThread->packData.load_in_state == 0)
|
ui->label_loadin1->setText(tr("未接入"));
|
else if(workThread->packData.load_in_state == 1)
|
ui->label_loadin1->setText(tr("接入"));
|
else
|
ui->label_loadin1->setText(tr("未知"));
|
|
if(workThread->packData.top_chg_in_state == 0)
|
ui->label_topchgin1->setText(tr("未接入"));
|
else if(workThread->packData.load_in_state == 1)
|
ui->label_topchgin1->setText(tr("接入"));
|
else
|
ui->label_topchgin1->setText(tr("未知"));
|
}
|
|
void packinfo_page::update_slot()
|
{
|
SystemTime();
|
|
checkIcon();
|
|
updateValue();
|
|
if(1 == workThread->remoteState.to_workpage){
|
closePackinfoPage();
|
}
|
}
|
|
void packinfo_page::buttonReleasedAction()
|
{
|
QPushButton *pb = dynamic_cast<QPushButton*>(sender());
|
|
if(ui->pushButton_Exit == pb)
|
{
|
closePackinfoPage();
|
}
|
|
}
|