|
|
@@ -400,11 +400,14 @@ int dev_search_latest_power_All_info(GlobalDeviceManager* globalDeviceManger,_Ov
|
|
|
{
|
|
|
GlobalPowerManger* _globalPowerMangerTemp = NULL ;
|
|
|
char* upgrade_msg = NULL ;
|
|
|
+ netswitch_info_t swInfo;
|
|
|
+ int idx=0;
|
|
|
|
|
|
if(list_empty(&globalDeviceManger->_globalPowerManger.list)) {
|
|
|
return -1;
|
|
|
}
|
|
|
|
|
|
+ netswitch_get(&swInfo);
|
|
|
list_for_each_entry(_globalPowerMangerTemp, &globalDeviceManger->_globalPowerManger.list, list)
|
|
|
{
|
|
|
if (!_globalPowerMangerTemp)
|
|
|
@@ -413,6 +416,7 @@ int dev_search_latest_power_All_info(GlobalDeviceManager* globalDeviceManger,_Ov
|
|
|
/* code */
|
|
|
}
|
|
|
|
|
|
+
|
|
|
if (_globalPowerMangerTemp->product_ch_type==TREE_AC_TYPE||globalDeviceManger->_global_device_info->product_pwr_type == SmartPDU_Tree_AC_One_B)
|
|
|
{
|
|
|
GlobalTreeACManager* _TreeACTemp=NULL;
|
|
|
@@ -475,6 +479,20 @@ int dev_search_latest_power_All_info(GlobalDeviceManager* globalDeviceManger,_Ov
|
|
|
}else{
|
|
|
_overChnPwrBackInfoTemp->status = _globalPowerMangerTemp->_PowerInfo.status;
|
|
|
}
|
|
|
+
|
|
|
+ #ifdef USE_NETSWITCH
|
|
|
+ idx = _overChnPwrBackInfoTemp->productChId-1;
|
|
|
+ port_info_t *info=&swInfo.port[idx];
|
|
|
+ if(info->up) {
|
|
|
+ _overChnPwrBackInfoTemp->mac_addr = swInfo.port[idx].mac;
|
|
|
+ _overChnPwrBackInfoTemp->ip_addr = swInfo.port[idx].ip;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ _overChnPwrBackInfoTemp->mac_addr = "";
|
|
|
+ _overChnPwrBackInfoTemp->ip_addr = "";
|
|
|
+ }
|
|
|
+ #endif
|
|
|
+
|
|
|
list_add_tail(&_overChnPwrBackInfoTemp->list, &__overChnPwrAckInfo->list);
|
|
|
}
|
|
|
}
|
|
|
@@ -501,6 +519,13 @@ int dev_search_latest_power_All_info(GlobalDeviceManager* globalDeviceManger,_Ov
|
|
|
_overChnPwrBackInfoTemp->factor = _globalPowerMangerTemp->_PowerInfo.factor;
|
|
|
_overChnPwrBackInfoTemp->product_ch_start_delay = _globalPowerMangerTemp->product_ch_start_delay;
|
|
|
_overChnPwrBackInfoTemp->product_ch_stop_delay = _globalPowerMangerTemp->product_ch_stop_delay;
|
|
|
+
|
|
|
+ #ifdef USE_NETSWITCH
|
|
|
+ idx = _overChnPwrBackInfoTemp->productChId-1;
|
|
|
+ _overChnPwrBackInfoTemp->mac_addr = swInfo.port[idx].mac;
|
|
|
+ _overChnPwrBackInfoTemp->ip_addr = swInfo.port[idx].ip;
|
|
|
+ #endif
|
|
|
+
|
|
|
list_add_tail(&_overChnPwrBackInfoTemp->list, &__overChnPwrAckInfo->list);
|
|
|
}
|
|
|
}
|
|
|
@@ -3162,13 +3187,13 @@ void get_message_CtrlType(int nCtrlType,char* message)
|
|
|
*
|
|
|
* 根据指定的告警类型,构建告警信息并发送。
|
|
|
*
|
|
|
- * @param __globalDeviceManger 全局设备管理器指针
|
|
|
+ * @param globalDeviceManger 全局设备管理器指针
|
|
|
* @param __globalPowerTemp 全局电源管理器指针
|
|
|
* @param _AlarmType 告警类型
|
|
|
*
|
|
|
* @return 返回值为0表示发送成功,非0表示发送失败
|
|
|
*/
|
|
|
-int dev_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalPowerManger* __globalPowerTemp,int _AlarmType)
|
|
|
+int dev_Alarm_send_message(GlobalDeviceManager* globalDeviceManger,GlobalPowerManger* __globalPowerTemp,int _AlarmType)
|
|
|
{
|
|
|
char AlarmText[256];
|
|
|
int languagesID = 0;
|
|
|
@@ -3217,7 +3242,7 @@ int dev_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalPower
|
|
|
|
|
|
char buffer[80];
|
|
|
strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", t);
|
|
|
- dev_insert_alarm_info(__globalDeviceManage.db,__globalPowerTemp->product_id,0,buffer,AlarmText);
|
|
|
+ dev_insert_alarm_info(globalDeviceManger->db,__globalPowerTemp->product_id,0,buffer,AlarmText);
|
|
|
|
|
|
// 超限动作
|
|
|
|
|
|
@@ -3231,7 +3256,7 @@ int dev_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalPower
|
|
|
{
|
|
|
if (__globalPowerTemp->global_over_manager->product_vol_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
|
|
|
{
|
|
|
- ret = g_switch_set_all_chn_ctrl(&__globalDeviceManage._globalRelaySampManger, __globalPowerTemp,
|
|
|
+ ret = g_switch_set_all_chn_ctrl(&globalDeviceManger->_globalRelaySampManger, __globalPowerTemp,
|
|
|
__globalPowerTemp->product_saddr,
|
|
|
__globalPowerTemp->product_ch_addr, // 多版端口余8
|
|
|
0, false);
|
|
|
@@ -3242,7 +3267,7 @@ int dev_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalPower
|
|
|
{
|
|
|
if (__globalPowerTemp->global_over_manager->product_vol_over_lower_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
|
|
|
{
|
|
|
- ret = g_switch_set_all_chn_ctrl(&__globalDeviceManage._globalRelaySampManger, __globalPowerTemp,
|
|
|
+ ret = g_switch_set_all_chn_ctrl(&globalDeviceManger->_globalRelaySampManger, __globalPowerTemp,
|
|
|
__globalPowerTemp->product_saddr,
|
|
|
__globalPowerTemp->product_ch_addr, // 多版端口余8
|
|
|
0, false);
|
|
|
@@ -3253,7 +3278,7 @@ int dev_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalPower
|
|
|
{
|
|
|
if (__globalPowerTemp->global_over_manager->product_cur_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
|
|
|
{
|
|
|
- ret = g_switch_set_all_chn_ctrl(&__globalDeviceManage._globalRelaySampManger, __globalPowerTemp,
|
|
|
+ ret = g_switch_set_all_chn_ctrl(&globalDeviceManger->_globalRelaySampManger, __globalPowerTemp,
|
|
|
__globalPowerTemp->product_saddr,
|
|
|
__globalPowerTemp->product_ch_addr, // 多版端口余8
|
|
|
0, false);
|
|
|
@@ -3264,7 +3289,7 @@ int dev_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalPower
|
|
|
{
|
|
|
if (__globalPowerTemp->global_over_manager->product_pwr_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
|
|
|
{
|
|
|
- ret = g_switch_set_all_chn_ctrl(&__globalDeviceManage._globalRelaySampManger, __globalPowerTemp,
|
|
|
+ ret = g_switch_set_all_chn_ctrl(&globalDeviceManger->_globalRelaySampManger, __globalPowerTemp,
|
|
|
__globalPowerTemp->product_saddr,
|
|
|
__globalPowerTemp->product_ch_addr, // 多版端口余8
|
|
|
0, false);
|
|
|
@@ -3275,7 +3300,7 @@ int dev_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalPower
|
|
|
{
|
|
|
if (__globalPowerTemp->global_over_manager->product_pwrcon_over_upper_threshold_ctrl == ALARM_CTRL_CLOSE_CH)
|
|
|
{
|
|
|
- ret = g_switch_set_all_chn_ctrl(&__globalDeviceManage._globalRelaySampManger, __globalPowerTemp,
|
|
|
+ ret = g_switch_set_all_chn_ctrl(&globalDeviceManger->_globalRelaySampManger, __globalPowerTemp,
|
|
|
__globalPowerTemp->product_saddr,
|
|
|
__globalPowerTemp->product_ch_addr, // 多版端口余8
|
|
|
0, false);
|
|
|
@@ -3294,13 +3319,13 @@ int dev_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalPower
|
|
|
*
|
|
|
* 根据给定的告警类型,生成对应的告警文本,并将其插入到告警信息数据库中。
|
|
|
*
|
|
|
- * @param __globalDeviceManger 全局设备管理器指针
|
|
|
+ * @param globalDeviceManger 全局设备管理器指针
|
|
|
* @param __globalPowerTemp 全局 AC 管理器指针
|
|
|
* @param _AlarmType 告警类型
|
|
|
*
|
|
|
* @return 返回值为 0 表示成功,其他值表示失败
|
|
|
*/
|
|
|
-int dev_Alarm_T_AC_message(GlobalDeviceManager* __globalDeviceManger,GlobalTreeACManager* __globalPowerTemp,int _AlarmType)
|
|
|
+int dev_Alarm_T_AC_message(GlobalDeviceManager* globalDeviceManger, GlobalTreeACManager* __globalPowerTemp,int _AlarmType)
|
|
|
{
|
|
|
char AlarmText[256];
|
|
|
int languagesID=0;
|
|
|
@@ -3351,7 +3376,7 @@ int dev_Alarm_T_AC_message(GlobalDeviceManager* __globalDeviceManger,GlobalTreeA
|
|
|
|
|
|
char buffer[80];
|
|
|
strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", t);
|
|
|
- dev_insert_alarm_info(__globalDeviceManage.db,__globalPowerTemp->product_id,0,buffer,AlarmText);
|
|
|
+ dev_insert_alarm_info(globalDeviceManger->db,__globalPowerTemp->product_id,0,buffer,AlarmText);
|
|
|
return 0;
|
|
|
}
|
|
|
/**
|
|
|
@@ -3359,13 +3384,13 @@ int dev_Alarm_T_AC_message(GlobalDeviceManager* __globalDeviceManger,GlobalTreeA
|
|
|
*
|
|
|
* 根据给定的全局设备管理器、全局传感器管理器和告警类型,发送传感器告警信息。
|
|
|
*
|
|
|
- * @param __globalDeviceManger 全局设备管理器指针
|
|
|
+ * @param globalDeviceManger 全局设备管理器指针
|
|
|
* @param __globalPowerTemp 全局传感器管理器指针
|
|
|
* @param _AlarmType 告警类型
|
|
|
*
|
|
|
* @return 成功返回0,失败返回-1
|
|
|
*/
|
|
|
-int dev_sensor_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,GlobalSensorManger* __globalPowerTemp,int _AlarmType)
|
|
|
+int dev_sensor_Alarm_send_message(GlobalDeviceManager* globalDeviceManger,GlobalSensorManger* __globalPowerTemp,int _AlarmType)
|
|
|
{
|
|
|
char AlarmText[256];
|
|
|
int languagesID=0;
|
|
|
@@ -3410,10 +3435,10 @@ int dev_sensor_Alarm_send_message(GlobalDeviceManager* __globalDeviceManger,Glob
|
|
|
|
|
|
char buffer[80];
|
|
|
strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", t);
|
|
|
- dev_insert_alarm_info(__globalDeviceManage.db,__globalPowerTemp->product_id,1,buffer,AlarmText);
|
|
|
+ dev_insert_alarm_info(globalDeviceManger->db,__globalPowerTemp->product_id,1,buffer,AlarmText);
|
|
|
return 0;
|
|
|
}
|
|
|
-int dev_Alarm_Run_message(GlobalDeviceManager* __globalDeviceManger,const char* strRunMSG, const char *strOther)
|
|
|
+int dev_Alarm_Run_message(GlobalDeviceManager* globalDeviceManger, const char* strRunMSG, const char *strOther)
|
|
|
{
|
|
|
char AlarmText[256];
|
|
|
int languagesID=0;
|
|
|
@@ -3424,7 +3449,7 @@ int dev_Alarm_Run_message(GlobalDeviceManager* __globalDeviceManger,const char*
|
|
|
t = localtime(&now);
|
|
|
char buffer[80];
|
|
|
strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", t);
|
|
|
- dev_insert_alarm_info(__globalDeviceManage.db,0,4,buffer,AlarmText);
|
|
|
+ dev_insert_alarm_info(globalDeviceManger->db,0,4,buffer,AlarmText);
|
|
|
return 0;
|
|
|
}
|
|
|
|