Просмотр исходного кода

1、更改了设备管理中查询不出设备信息的bug

liyuezong лет назад: 2
Родитель
Сommit
5744ca3bad
4 измененных файлов с 23 добавлено и 11 удалено
  1. 8 4
      pro/src/appweb_handle.c
  2. 2 2
      pro/src/common.h
  3. 12 4
      pro/src/json_handle.c
  4. 1 1
      pro/src/json_handle.h

+ 8 - 4
pro/src/appweb_handle.c

@@ -3468,7 +3468,7 @@ static void equipmentMintenance(void *conn)
     }
 
     //查询设备列表
-    if(strcmp(_Over_equipment_mintenance.type,"listSbRestartQuery")==0)
+    if(strcmp(_Over_equipment_mintenance.type,"listSbRestartQuery")==0 || strcmp(_Over_equipment_mintenance.type,"listSbWhQuery")==0)
     {
         // 查询设备总体参数
        if (dev_get_device_info(__globalDeviceManage.db,__globalDeviceManage._global_device_info) != 0)
@@ -3513,10 +3513,14 @@ static void equipmentMintenance(void *conn)
         _over_back_sts_info.product_status = malloc(16);
         strcpy(_over_back_sts_info.product_status, "online");
 
-        _over_back_sts_info.product_type_id=__globalDeviceManage._global_device_info->product_pwr_type;
+        _over_back_sts_info.product_type_id = __globalDeviceManage._global_device_info->product_pwr_type;
 
-
-         ack_str = over_product_list_info_to_json(&__globalDeviceManage, &_over_back_sts_info);
+        if (strcmp(_Over_equipment_mintenance.type, "listSbWhQuery") == 0)
+        {
+            ack_str = over_product_list_info_to_json(&__globalDeviceManage, &_over_back_sts_info, true);
+        }
+        else
+            ack_str = over_product_list_info_to_json(&__globalDeviceManage, &_over_back_sts_info, false);
     }
     else if(strcmp(_Over_equipment_mintenance.type,"listShfwQuery")==0)
     {

+ 2 - 2
pro/src/common.h

@@ -455,7 +455,7 @@ typedef struct
     char            product_ch_id                               ;//电源通道
     unsigned short  product_status                              ;//当前状态
     PowerInfo       _power_info                                 ;//采集值
-    char            samp_time[32]                               ;//采集时间
+    char            samp_time[64]                               ;//采集时间
     GetTotalInfo	_total_voltage								;//统计电压
 	GetTotalInfo	_total_current								;//统计电流
 	GetTotalInfo	_total_power								;//统计功率
@@ -473,7 +473,7 @@ typedef struct
 //传感器值
 typedef struct
 {
-    char            samp_time[32]                               ;//采集时间
+    char            samp_time[64]                               ;//采集时间
     int             product_id                                  ;//产品ID
     char            sensor_id                                   ;//传感器ID
     float           val1                                        ;//值1

+ 12 - 4
pro/src/json_handle.c

@@ -996,7 +996,7 @@ char* over_all_monitor_to_json(_OverBackStsInfo* _over_back_sts_info)
 /// @brief 返回设备列表
 /// @param _over_back_sts_info 
 /// @return 
-char* over_product_list_info_to_json(GlobalDeviceManager *dm, _OverBackStsInfo* _over_back_sts_info)
+char* over_product_list_info_to_json(GlobalDeviceManager *dm, _OverBackStsInfo* _over_back_sts_info,bool curFlag)
 {
     int i,r;
     char* str = NULL;
@@ -1047,10 +1047,13 @@ char* over_product_list_info_to_json(GlobalDeviceManager *dm, _OverBackStsInfo*
                             cJSON_AddStringToObject(data_filed, "MACadress", "");
                         }
 
-                        if(dl.slave[i].addr==0) {
-                            cJSON_AddStringToObject(data_filed, "RSadress", " "); 
+                        if (dl.slave[i].addr == 0)
+                        {
+                            sprintf(temp, "%d", _over_back_sts_info->product_RS485Addr);
+                            cJSON_AddStringToObject(data_filed, "RSadress", temp);
                         }
-                        else {
+                        else
+                        {
                             sprintf(temp, "%d", dl.slave[i].addr);
                             cJSON_AddStringToObject(data_filed, "RSadress", temp);
                         }
@@ -1067,6 +1070,11 @@ char* over_product_list_info_to_json(GlobalDeviceManager *dm, _OverBackStsInfo*
 
                         cJSON_AddItemToArray(root_array, data_filed);
                     }
+                    //如果是listSbWhQuery请求,只推送当前PDU信息
+                    if (curFlag)
+                    {
+                        break;
+                    }
                 }
                 cascade_free_dlist(&dl);
             }

+ 1 - 1
pro/src/json_handle.h

@@ -481,7 +481,7 @@ char* over_channel_power_history_to_json(GlobalPowerInfo* _globalPowerInfo,Globa
 
 cJSON* json_to_overall_pwr_status_monitor(const char* str,_OverAllPwrRequest* _over_all_pwr_request);
 cJSON* json_to_over_equipment_mintenance(const char* str,_Equipment_Mintenance* _over_equipment_mintenance);
-char* over_product_list_info_to_json(GlobalDeviceManager *dm, _OverBackStsInfo* _over_back_sts_info);
+char* over_product_list_info_to_json(GlobalDeviceManager *dm, _OverBackStsInfo* _over_back_sts_info,bool curFlag);
 char* over_all_pwr_monitor_to_json(int phaseType,_OverAllPwrAckInfo* _over_all_pwr_back_info);
 char* over_all_pwr_monitor_Tree_AC_to_json(_OverAllPwrAckInfo* _over_all_pwr_back_info_L1,_OverAllPwrAckInfo* _over_all_pwr_back_info_L2,_OverAllPwrAckInfo* _over_all_pwr_back_info_L3);
 char* over_all_total_info_to_json(_OverAllPwrAckInfo* _over_all_pwr_back_info, int total_type);