|
|
@@ -46,8 +46,8 @@ BOOL CResistAlarmMng::Start(CString strIniPath)
|
|
|
|
|
|
if (m_pThreadAlarmSet == nullptr) return FALSE;
|
|
|
//离线报警
|
|
|
- m_pThreadDevice = new thread(CResistAlarmMng::ThreadProcDevice, (DWORD_PTR)this);
|
|
|
- if (m_pThreadDevice == nullptr) return FALSE;
|
|
|
+ /*m_pThreadDevice = new thread(CResistAlarmMng::ThreadProcDevice, (DWORD_PTR)this);
|
|
|
+ if (m_pThreadDevice == nullptr) return FALSE;*/
|
|
|
|
|
|
if (g_bExternalData)
|
|
|
{
|
|
|
@@ -996,7 +996,7 @@ void CResistAlarmMng::JudgeAlarm(CResistAlarmMng* pService, SUOBI_OVER_LIMIT_INF
|
|
|
|
|
|
//判断转换阻力是否超限
|
|
|
void CResistAlarmMng::JudgeAlarm(CResistAlarmMng* pService, CONVERT_RESIST_OVER_LIMIT* pConvertOverLimit,
|
|
|
- time_t show_time, int show_val, eDaoChaPosi posi, eUpOrDownInfo eUpOrDown, string mo, string mp, uint32_t zzjno)
|
|
|
+ time_t show_time, int show_val, eDaoChaPosi posi, string mo, string mp, uint32_t zzjno)
|
|
|
{
|
|
|
if (pConvertOverLimit == nullptr || pConvertOverLimit->enable == false) return;
|
|
|
bool bNew = false;
|
|
|
@@ -1004,7 +1004,7 @@ void CResistAlarmMng::JudgeAlarm(CResistAlarmMng* pService, CONVERT_RESIST_OVER_
|
|
|
bool bAlarm = false, bWarn = false; int alarm_value = show_val, alarm_refer; time_t alarm_time = show_time;
|
|
|
CTime ctAlarmTime = CTime(alarm_time / 1000);
|
|
|
{
|
|
|
- if (eUpOrDown == eUpOrDownInfo::UOD_UP)//缩进
|
|
|
+ if (posi == eDaoChaPosi::DCP_INVERT2FIX)
|
|
|
{
|
|
|
if (show_val > pConvertOverLimit->up_alarm_high_limit)
|
|
|
{
|
|
|
@@ -1017,7 +1017,7 @@ void CResistAlarmMng::JudgeAlarm(CResistAlarmMng* pService, CONVERT_RESIST_OVER_
|
|
|
alarm_refer = pConvertOverLimit->up_warn_high_limit;
|
|
|
}
|
|
|
}
|
|
|
- else if (eUpOrDown == eUpOrDownInfo::UOD_DOWN)
|
|
|
+ else if (posi == eDaoChaPosi::DCP_FIX2INVERT)
|
|
|
{
|
|
|
if (show_val > pConvertOverLimit->dw_alarm_low_limit)
|
|
|
{
|
|
|
@@ -3592,51 +3592,25 @@ void CResistAlarmMng::ThreadProcMove(DWORD_PTR param)
|
|
|
//auto it_start2 = mapData[2]->find(it.tmStart * 1000);
|
|
|
//auto it_end2 = mapData[2]->find(it.tmEnd * 1000);
|
|
|
eDaoChaPosi posi = eDaoChaPosi::DCP_UNKNOWN;
|
|
|
- if (it.bUpOrDown == eUpOrDownInfo::UOD_UP)
|
|
|
+ if (posi == eDaoChaPosi::DCP_FIX2INVERT)
|
|
|
{
|
|
|
if (pMompInfo->in_name.find("定扳反") != -1)
|
|
|
{
|
|
|
CResistAlarmMng::InsertToDBByMove(mo, mp, it.time, it.tmStart, it.tmEnd, it.val, it.fluctuation_val, i,
|
|
|
(uint8_t)eDaoChaPosi::DCP_FIX2INVERT, (uint8_t)ePowerName::PN_MOVE, fmt::format("{}:{}", pMompInfo->in_name, it.fluctuation_val));
|
|
|
posi = eDaoChaPosi::DCP_FIX2INVERT;
|
|
|
-
|
|
|
CMonitorObjectMng::Instance()->UpdateZZJEPOS(mo + "." + mp, DAOCHA_POSITION::MP_INVERT);
|
|
|
-
|
|
|
- JudgeAlarm(pService, pConvertResistOverLimitInfo, it.time, it.fluctuation_val, posi, it.bUpOrDown, mo, mp, pMompInfo->zzjno);
|
|
|
+ JudgeAlarm(pService, pConvertResistOverLimitInfo, it.time, it.fluctuation_val, posi, mo, mp, pMompInfo->zzjno);
|
|
|
}
|
|
|
- else
|
|
|
- {
|
|
|
- CResistAlarmMng::InsertToDBByMove(mo, mp, it.time, it.tmStart, it.tmEnd, it.val, it.fluctuation_val, i,
|
|
|
- (uint8_t)eDaoChaPosi::DCP_INVERT2FIX, (uint8_t)ePowerName::PN_MOVE, fmt::format("{}:{}", pMompInfo->in_name, it.fluctuation_val));
|
|
|
- posi = eDaoChaPosi::DCP_INVERT2FIX;
|
|
|
|
|
|
- CMonitorObjectMng::Instance()->UpdateZZJEPOS(mo + "." + mp, DAOCHA_POSITION::MP_FIX);
|
|
|
-
|
|
|
- JudgeAlarm(pService, pConvertResistOverLimitInfo, it.time, it.fluctuation_val, posi, it.bUpOrDown, mo, mp, pMompInfo->zzjno);
|
|
|
- }
|
|
|
}
|
|
|
- else
|
|
|
+ else if(posi == eDaoChaPosi::DCP_INVERT2FIX)
|
|
|
{
|
|
|
- if (pMompInfo->out_name.find("定扳反") != -1)
|
|
|
- {
|
|
|
- CResistAlarmMng::InsertToDBByMove(mo, mp, it.time, it.tmStart, it.tmEnd, it.val, it.fluctuation_val, i,
|
|
|
- (uint8_t)eDaoChaPosi::DCP_FIX2INVERT, (uint8_t)ePowerName::PN_MOVE, fmt::format("{}:{}", pMompInfo->out_name, it.fluctuation_val));
|
|
|
- posi = eDaoChaPosi::DCP_FIX2INVERT;
|
|
|
-
|
|
|
- CMonitorObjectMng::Instance()->UpdateZZJEPOS(mo + "." + mp, DAOCHA_POSITION::MP_INVERT);
|
|
|
-
|
|
|
- JudgeAlarm(pService, pConvertResistOverLimitInfo, it.time, it.fluctuation_val, posi, it.bUpOrDown, mo, mp, pMompInfo->zzjno);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
CResistAlarmMng::InsertToDBByMove(mo, mp, it.time, it.tmStart, it.tmEnd, it.val, it.fluctuation_val, i,
|
|
|
(uint8_t)eDaoChaPosi::DCP_INVERT2FIX, (uint8_t)ePowerName::PN_MOVE, fmt::format("{}:{}", pMompInfo->out_name, it.fluctuation_val));
|
|
|
posi = eDaoChaPosi::DCP_INVERT2FIX;
|
|
|
-
|
|
|
CMonitorObjectMng::Instance()->UpdateZZJEPOS(mo + "." + mp, DAOCHA_POSITION::MP_FIX);
|
|
|
-
|
|
|
- JudgeAlarm(pService, pConvertResistOverLimitInfo, it.time, it.fluctuation_val, posi, it.bUpOrDown, mo, mp, pMompInfo->zzjno);
|
|
|
- }
|
|
|
+ JudgeAlarm(pService, pConvertResistOverLimitInfo, it.time, it.fluctuation_val, posi, mo, mp, pMompInfo->zzjno);
|
|
|
}
|
|
|
|
|
|
SPDLOG_INFO("扳动判断数据{}.{} 315 上送", mo, mp);
|
|
|
@@ -3834,22 +3808,15 @@ void CResistAlarmMng::ThreadProcMoveFromDB(DWORD_PTR param)
|
|
|
//更新状态
|
|
|
CMonitorObjectMng::Instance()->UpdateZZJEPOS(string(mo) + "." + mp, DAOCHA_POSITION::MP_INVERT);
|
|
|
SPDLOG_INFO("[MOVE]{}:{} 更新到反位", mo, mp);
|
|
|
-
|
|
|
- if (pMompInfo->out_name.find("定扳反") != -1)
|
|
|
- JudgeAlarm(pService, pConvertResistOverLimitInfo, show_time_t, show_val, ePosi, eUpOrDownInfo::UOD_DOWN, mo, mp, pMompInfo->zzjno);
|
|
|
- else if (pMompInfo->in_name.find("定扳反") != -1)
|
|
|
- JudgeAlarm(pService, pConvertResistOverLimitInfo, show_time_t, show_val, ePosi, eUpOrDownInfo::UOD_UP, mo, mp, pMompInfo->zzjno);
|
|
|
+ JudgeAlarm(pService, pConvertResistOverLimitInfo, show_time_t, show_val, ePosi, mo, mp, pMompInfo->zzjno);
|
|
|
+
|
|
|
}
|
|
|
else if (ePosi == eDaoChaPosi::DCP_INVERT2FIX)
|
|
|
{
|
|
|
//更新状态
|
|
|
CMonitorObjectMng::Instance()->UpdateZZJEPOS(string(mo) + "." + mp, DAOCHA_POSITION::MP_FIX);
|
|
|
SPDLOG_INFO("[MOVE]{}:{} 更新到定位", mo, mp);
|
|
|
-
|
|
|
- if (pMompInfo->out_name.find("反扳定") != -1)
|
|
|
- JudgeAlarm(pService, pConvertResistOverLimitInfo, show_time_t, show_val, ePosi, eUpOrDownInfo::UOD_DOWN, mo, mp, pMompInfo->zzjno);
|
|
|
- else if (pMompInfo->in_name.find("反扳定") != -1)
|
|
|
- JudgeAlarm(pService, pConvertResistOverLimitInfo, show_time_t, show_val, ePosi, eUpOrDownInfo::UOD_UP, mo, mp, pMompInfo->zzjno);
|
|
|
+ JudgeAlarm(pService, pConvertResistOverLimitInfo, show_time_t, show_val, ePosi, mo, mp, pMompInfo->zzjno);
|
|
|
}
|
|
|
|
|
|
//TODO发送315曲线
|
|
|
@@ -4552,7 +4519,7 @@ BOOL CResistAlarmMng::LoadUnAck()
|
|
|
//只加载31天内非天窗期的报警
|
|
|
CString sql = " SELECT [ID],a.[mo],a.[mp],[no],[type],[occur_time],[level],[desc],[suggest],[val],[event_id],[rel_id],[posi],[loworhigh],[referval],[recovery_time],[sunroof],zzjno,[ack_result] FROM [rm_alarm] as A \
|
|
|
LEFT JOIN(SELECT mo, mp, zzjno FROM rm_map) AS B ON a.mo = b.mo and a.mp = b.mp \
|
|
|
- WHERE DATEADD(dd, -31, getdate()) < occur_time and sunroof = 0 and (ack_result = 0 OR [recovery_time] < '2000') \
|
|
|
+ WHERE DATEADD(dd, -31, getdate()) < occur_time and sunroof = 0 and type !=32 and (ack_result = 0 OR [recovery_time] < '2000') \
|
|
|
ORDER BY occur_time ASC; ";
|
|
|
COdbcStatement stmt;
|
|
|
if (!CDBConnectPool::Instance()->DBQuery(stmt, sql))
|