优化RFID流程逻辑、修改自检流程,关闭循环阀
This commit is contained in:
+28
-27
@@ -8,19 +8,35 @@ RunTimeCtrl::RunTimeCtrl()
|
||||
init();
|
||||
}
|
||||
|
||||
qint64 RunTimeCtrl::updateRuntime()
|
||||
{
|
||||
m_totalRuntimeMs += m_elapsedTimer.restart();
|
||||
return m_totalRuntimeMs;
|
||||
}
|
||||
|
||||
RunTimeCtrl *RunTimeCtrl::instance()
|
||||
{
|
||||
static RunTimeCtrl *ins = nullptr;
|
||||
if (!ins) {
|
||||
ins = new RunTimeCtrl();
|
||||
}
|
||||
|
||||
return ins;
|
||||
}
|
||||
|
||||
RunTimeCtrl::~RunTimeCtrl()
|
||||
{
|
||||
m_runTimer->stop();
|
||||
m_checkTimer->stop();
|
||||
m_alertTimer->stop();
|
||||
delete m_checkTimer;
|
||||
delete m_alertTimer;
|
||||
}
|
||||
|
||||
void RunTimeCtrl::start()
|
||||
{
|
||||
m_elapsedTimer.start();
|
||||
slt_checkRunTime();
|
||||
m_checkTimer->start(1000 * 60 * 5);
|
||||
m_runTimer->start(1000);
|
||||
m_runTimer->start(30 * 1000);
|
||||
}
|
||||
|
||||
void RunTimeCtrl::stop()
|
||||
@@ -39,14 +55,9 @@ void RunTimeCtrl::setAlertInterval(qint64 minutes)
|
||||
}
|
||||
}
|
||||
|
||||
qint64 RunTimeCtrl::getElapsedSeconds() const
|
||||
qint64 RunTimeCtrl::totalRuntimeMs()
|
||||
{
|
||||
return m_elapsedSeconds;
|
||||
}
|
||||
|
||||
qint64 RunTimeCtrl::getTotalSeconds() const
|
||||
{
|
||||
return m_totalSeconds;
|
||||
return updateRuntime();
|
||||
}
|
||||
|
||||
//5min
|
||||
@@ -64,16 +75,6 @@ void RunTimeCtrl::slt_checkRunTime()
|
||||
}
|
||||
}
|
||||
|
||||
void RunTimeCtrl::slt_recodeTime()
|
||||
{
|
||||
m_elapsedSeconds++;
|
||||
if (m_elapsedSeconds % 30 == 0) {
|
||||
m_totalSeconds += 30;
|
||||
m_para.runTime += 30;
|
||||
emit sig_saveRunTime();
|
||||
}
|
||||
}
|
||||
|
||||
void RunTimeCtrl::init()
|
||||
{
|
||||
m_checkTimer = new QTimer(this);
|
||||
@@ -85,14 +86,14 @@ void RunTimeCtrl::init()
|
||||
// 每 m_alertIntervalMinutes 分钟一次消息框提示
|
||||
connect(m_alertTimer, &QTimer::timeout, this, &RunTimeCtrl::sig_alertTimeout);
|
||||
// 每30s,记录一次总时间
|
||||
connect(m_runTimer, &QTimer::timeout, this, &RunTimeCtrl::slt_recodeTime);
|
||||
connect(m_runTimer, &QTimer::timeout, this, &RunTimeCtrl::sig_saveRunTime);
|
||||
}
|
||||
|
||||
bool RunTimeCtrl::checkRunTime()
|
||||
{
|
||||
// 甲方要求提示越来越频繁
|
||||
// 168h 72h 24h
|
||||
int runHours = m_totalSeconds/60.0/60.0;
|
||||
int runHours = int(updateRuntime() / 1000.0 / 60.0 / 60.0);
|
||||
if (runHours + 24 >= m_para.maintenanceHours) {
|
||||
setAlertInterval(15); //15min
|
||||
return true;
|
||||
@@ -102,7 +103,7 @@ bool RunTimeCtrl::checkRunTime()
|
||||
return true;
|
||||
}
|
||||
if (runHours + 168 >= m_para.maintenanceHours) {
|
||||
setAlertInterval(1); //3h
|
||||
setAlertInterval(180); //3h
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@@ -124,7 +125,7 @@ void RunTimeCtrl::loadConfig(RFIDPara_t* para)
|
||||
para->maintenanceInterval = 6;
|
||||
QDate mtEndDate = curDate.addMonths(para->maintenanceInterval);
|
||||
para->maintenanceEndDate = mtEndDate.toString("yyMMdd").toInt();
|
||||
para->runTime = 0;
|
||||
para->runtimeMs = 0;
|
||||
para->maintenanceHours = 3000;
|
||||
}
|
||||
// 结束维护的天数maintenanceEndDate = 刷卡日期+维护月份
|
||||
@@ -137,7 +138,7 @@ void RunTimeCtrl::loadConfig(RFIDPara_t* para)
|
||||
LogInfo::setRunStatusText(tr("mtEndDate: %1").arg(para->maintenanceEndDate));
|
||||
LogInfo::setRunStatusText(tr("mtFlag: %1").arg(para->needMaintenance));
|
||||
LogInfo::setRunStatusText(tr("timeoutDay: %1").arg(timeoutDay));
|
||||
LogInfo::setRunStatusText(tr("runTime: %1").arg(para->runTime));
|
||||
LogInfo::setRunStatusText(tr("runtimeMs: %1").arg(para->runtimeMs));
|
||||
LogInfo::setRunStatusText(tr("maintenanceHours: %1").arg(para->maintenanceHours));
|
||||
if(timeoutDay <= 0 && !para->needMaintenance)
|
||||
para->needMaintenance = true;
|
||||
@@ -145,7 +146,7 @@ void RunTimeCtrl::loadConfig(RFIDPara_t* para)
|
||||
emit sig_updateTimeoutDay(timeoutDay);
|
||||
|
||||
m_para = *para;
|
||||
m_totalSeconds = para->runTime;
|
||||
m_totalRuntimeMs = para->runtimeMs;
|
||||
}
|
||||
|
||||
void RunTimeCtrl::updatePara(RFIDPara_t* para)
|
||||
@@ -168,7 +169,7 @@ void RunTimeCtrl::authorizationAccepted(RFIDPara_t* para)
|
||||
para->maintenanceDate = m_para.maintenanceDate;
|
||||
para->maintenanceInterval = m_para.maintenanceInterval;
|
||||
para->maintenanceEndDate = m_para.maintenanceEndDate;
|
||||
para->runTime = m_para.runTime;
|
||||
para->runtimeMs = m_para.runtimeMs;
|
||||
para->maintenanceHours = m_para.maintenanceHours;
|
||||
updatePara(para);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user