Parcourir la source

改时区文件使用的方式

guohui il y a 1 an
Parent
commit
c6ed919b66
4 fichiers modifiés avec 31 ajouts et 70 suppressions
  1. 4 2
      pro/src/app.c
  2. 2 2
      pro/src/common.c
  3. 1 1
      pro/src/ntpclient.c
  4. 24 65
      pro/src/sqlite_handle.c

+ 4 - 2
pro/src/app.c

@@ -1818,8 +1818,10 @@ static void* ntp_thread(void *arg)
                     {
                         time_t host_time = time(NULL);
                         log_d("host_time: %ld, ntp_time: %ld", host_time, utc_time);
-                        //set_utctime(utc_time);
-                        set_utctime_zone(utc_time, pntp->tzone);
+                        if(host_time != utc_time) {
+                            set_utctime(utc_time);
+                            //set_utctime_zone(utc_time, pntp->tzone);
+                        }
                     }
                     else
                     {

+ 2 - 2
pro/src/common.c

@@ -362,7 +362,7 @@ int set_zone(int zone)
 {
     char buf[256];
 
-#if 1
+#if 0
     switch(zone) {
         case -11:
             sprintf(buf, "ln -sf /usr/share/zoneinfo/Pacific/Midway /etc/localtime");
@@ -440,7 +440,7 @@ int set_zone(int zone)
             return -1;
     }
 #else
-    sprintf(buf, "ln -sf /usr/share/zoneinfo/Etc/GMT%s%d /etc/localtime", (zone<0)?"-":"+", abs(zone));
+    sprintf(buf, "ln -sf /usr/share/zoneinfo/Etc/GMT%s%d /etc/localtime", (zone<0)?"+":"-", abs(zone));
 #endif
 
     log_i("set_zone: %s", buf);

+ 1 - 1
pro/src/ntpclient.c

@@ -67,7 +67,7 @@ static int get_addr(ipaddr_t *addr, struct addrinfo *info)
 
 
 //#define GETADDR_ASYNC
-#define GETADDR_SYNC_TIMEOUT
+//#define GETADDR_SYNC_TIMEOUT
 
 #ifdef GETADDR_ASYNC
 static timer_t tmrId=NULL;

+ 24 - 65
pro/src/sqlite_handle.c

@@ -4675,13 +4675,14 @@ static int sql_requery(sqlite3 *db, int tab_id, time_t from, time_t to, void *da
     char *p,temp[1024];
     char time_s[64],time_e[64];
     sqlite3_stmt *stmt=NULL;
-    GlobalPowerInfo *pwrInfo;
+    GlobalPowerInfo *pwr=NULL;
+    GlobalTreeACManager *pwr3=NULL;
 
     get_time_str(time_s, sizeof(time_s), from);
     get_time_str(time_e, sizeof(time_e), to);
 
     if(tab_id==TAB_ID_POWER_INFO) {
-        snprintf(temp, sizeof(temp), "SELECT * FROM %s WHERE (product_samp_time BETWEEN '%s' AND '%s';", tabNamePool[tab_id], time_s, time_e);
+        snprintf(temp, sizeof(temp), "SELECT * FROM %s WHERE product_samp_time BETWEEN '%s' AND '%s';", tabNamePool[tab_id], time_s, time_e);
         
         r = sqlite3_prepare_v2(db, temp, -1, &stmt, 0);
         if (r != SQLITE_OK) {
@@ -4690,31 +4691,15 @@ static int sql_requery(sqlite3 *db, int tab_id, time_t from, time_t to, void *da
         }
     
         while (sqlite3_step(stmt) == SQLITE_ROW) {
-            //ser[idx].id = sqlite3_column_int(stmt, 0);
-            //ser[idx].mode = sqlite3_column_int(stmt, 1);
-
-            p = (char*)sqlite3_column_text(stmt, 2);
-            //if(p) strcpy(ser[idx].name, p);
-
-            p = (char*)sqlite3_column_text(stmt, 3);
-            //if(p) strcpy(ser[idx].server, p);
-
-            p = (char*)sqlite3_column_text(stmt, 4);
-           // if(p) strcpy(ser[idx].port, p);
-
-            p = (char*)sqlite3_column_text(stmt, 5);
-            //if(p) strcpy(ser[idx].cid, p);
-
-            p = (char*)sqlite3_column_text(stmt, 6);
-            //if(p) strcpy(ser[idx].user, p);
-
-            p = (char*)sqlite3_column_text(stmt, 7);
-            //if(p) strcpy(ser[idx].password, p);
-
-            p = (char*)sqlite3_column_text(stmt, 8);
-            //if(p) strcpy(ser[idx].cert, p);
-
-            
+            pwr->product_id = sqlite3_column_int(stmt, 1);
+            pwr->product_ch_id =  sqlite3_column_int(stmt, 2);
+            pwr->product_status =  sqlite3_column_int(stmt, 3);
+            pwr->_power_info.voltage = sqlite3_column_double(stmt, 4);
+            pwr->_power_info.current = sqlite3_column_double(stmt, 5);
+            pwr->_power_info.power = sqlite3_column_double(stmt, 6);
+            pwr->_power_info.freq = sqlite3_column_double(stmt, 7);
+            pwr->_power_info.consumption = sqlite3_column_double(stmt, 8);
+            pwr->_power_info.factor = sqlite3_column_double(stmt, 9);
         }
         sqlite3_finalize(stmt);
 
@@ -4727,45 +4712,19 @@ static int sql_requery(sqlite3 *db, int tab_id, time_t from, time_t to, void *da
             log_e("___mqtt_load, sqlite3_prepare_v2 failed\n");
             return -1;
         }
-    
-#if 0
-        strcpy(_globalPowerInfoTemp->samp_time,pResult[i*ncolumn+0]);//i=0 10 
-        _globalPowerInfoTemp->product_id = atoi(pResult[i*ncolumn+1]);
-        _globalPowerInfoTemp->product_ch_id =  atoi(pResult[i*ncolumn+2]);
-        _globalPowerInfoTemp->product_status =  atoi(pResult[i*ncolumn+3]);
-        _globalPowerInfoTemp->_power_info.voltage = atof(pResult[i*ncolumn+4]);
-        _globalPowerInfoTemp->_power_info.current = atof(pResult[i*ncolumn+5]);
-        _globalPowerInfoTemp->_power_info.power = atof(pResult[i*ncolumn+6]);
-        _globalPowerInfoTemp->_power_info.freq = atof(pResult[i*ncolumn+7]);
-        _globalPowerInfoTemp->_power_info.consumption = atof(pResult[i*ncolumn+8]);
-        _globalPowerInfoTemp->_power_info.factor = atof(pResult[i*ncolumn+9]);
-#endif
-        while (sqlite3_step(stmt) == SQLITE_ROW) {
-            //ser[idx].id = sqlite3_column_int(stmt, 0);
-            //ser[idx].mode = sqlite3_column_int(stmt, 1);
-
-            p = (char*)sqlite3_column_text(stmt, 2);
-            //if(p) strcpy(ser[idx].name, p);
-
-            p = (char*)sqlite3_column_text(stmt, 3);
-            //if(p) strcpy(ser[idx].server, p);
 
-            p = (char*)sqlite3_column_text(stmt, 4);
-           // if(p) strcpy(ser[idx].port, p);
-
-            p = (char*)sqlite3_column_text(stmt, 5);
-            //if(p) strcpy(ser[idx].cid, p);
-
-            p = (char*)sqlite3_column_text(stmt, 6);
-            //if(p) strcpy(ser[idx].user, p);
-
-            p = (char*)sqlite3_column_text(stmt, 7);
-            //if(p) strcpy(ser[idx].password, p);
-
-            p = (char*)sqlite3_column_text(stmt, 8);
-            //if(p) strcpy(ser[idx].cert, p);
-
-            
+        while (sqlite3_step(stmt) == SQLITE_ROW) {
+    /*
+            pwr3->product_id = sqlite3_column_int(stmt, 1);
+            pwr3->product_ph_type =  sqlite3_column_int(stmt, 2);
+            pwr3->product_ch_id =  sqlite3_column_int(stmt, 3);
+            pwr3->_PowerInfo.voltage = sqlite3_column_double(stmt, 4);
+            pwr3->_PowerInfo.current = sqlite3_column_double(stmt, 5);
+            pwr3->_PowerInfo.power = sqlite3_column_double(stmt, 6);
+            pwr3->_PowerInfo.freq = sqlite3_column_double(stmt, 7);
+            pwr3->_PowerInfo.consumption = sqlite3_column_double(stmt, 8);
+            pwr3->_PowerInfo.factor = sqlite3_column_double(stmt, 9);
+    */
         }
         sqlite3_finalize(stmt);
     }