sqlite_handle.h 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. #ifndef __SQLITE_HANDLE_H
  2. #define __SQLITE_HANDLE_H
  3. #include <stdlib.h>
  4. #include <string.h>
  5. #include <unistd.h>
  6. // #include "sqlite3.h"
  7. #include "common.h"
  8. #include "json_handle.h"
  9. #include "netswitch.h"
  10. //#define USE_UTC_TIME
  11. #ifdef USE_UTC_TIME
  12. #define time_data_t uint32_t
  13. #else
  14. #define time_data_t char*
  15. #endif
  16. int sqlite_init(sqlite3** db,pthread_mutex_t* pDBMutex, const char* daba_name);
  17. void sqlite_deinit(sqlite3 *db,pthread_mutex_t* pDBMutex);
  18. int dev_get_device_info(sqlite3 *db,GlobalDeviceInfo* _globalDeviceInfo);
  19. int dev_update_device_genera_info(sqlite3 *db,GlobalDeviceInfo* _globalDeviceInfo);
  20. int dev_update_device_modus_info(sqlite3 *db,GlobalDeviceInfo* _globalDeviceInfo);
  21. int dev_search_last_Index(sqlite3 *db,int* nIndex,char* tableName);
  22. int dev_change_last_Index(sqlite3 *db,int* nIndex,int nDeleteNumber,char* tableName);
  23. int dev_insert_power_info(sqlite3 *db,GlobalPowerInfo* _globalPowerChnInfo,int* nIndex);
  24. int dev_search_latest_power_info(sqlite3 *db,int product_id,int product_ch_id,GlobalPowerInfo* _globalPowerInfo);
  25. int dev_search_latest_power_All_info(GlobalDeviceManager* globalDeviceManger,_OverChnPwrAckInfo* __overChnPwrAckInfo, int dev_addr);
  26. int dev_delete_power_info_all(sqlite3 *db);
  27. int dev_search_latest_power_statistic_info(GlobalDeviceManager* globalDeviceManger, _OverAllPwrAckInfo *all);
  28. int dev_search_latest_t_ac_power_statistic_info(int nCh,int nType,_OverAllPwrAckInfo* __overChnPwrAckInfo,GlobalDeviceManager* globalDeviceManger);
  29. int dev_search_time_power_info(sqlite3 *db,int product_id,int product_ch_id,int total_type,GlobalPowerInfo* _globalPowerInfo,char* start_time,char* end_time);
  30. int dev_search_time_t_ac_power_info(sqlite3 *db,int product_id,int product_ch_id,int product_ph_id,int total_type,GlobalPowerInfo* _globalPowerInfo,char* start_time,char* end_time);
  31. int dev_get_system_total_info(sqlite3 *db,int product_id,int product_ch_id, SystemTotalInfo* __SystemTotalInfo,char* start_time,char* end_time);
  32. int dev_search_power_trend_info(sqlite3 *db,int product_id,int product_ch_id,GlobalPowerInfo* _globalPowerInfo,char* start_time,char* end_time);
  33. int dev_search_power_AC_trend_info(sqlite3 *db,int product_id,int product_ch_id,int product_ph_id,GlobalPowerInfo* _globalPowerInfo,char* start_time,char* end_time);
  34. int dev_search_power_info(sqlite3 *db,
  35. int product_id,
  36. int product_ch_id,
  37. char* start_time,
  38. char* stop_time,
  39. int page,
  40. int pageSize,
  41. int* size,
  42. GlobalPowerInfo* _globalPowerInfo);
  43. int dev_check_power_manage_info(sqlite3 *db, int cnt);
  44. int dev_insert_power_manage_info(sqlite3 *db,int product_id,int product_ch_id,GlobalPowerManger* _globalPowerChnManger);
  45. int dev_get_power_info(sqlite3 *db,GlobalPowerManger* pm);
  46. int dev_get_power_manage_info(sqlite3 *db,int product_id,int product_addr,int product_ch_id,GlobalPowerManger* _globalPowerChnManger);
  47. int dev_get_power_manage_info2(sqlite3 *db,int product_ch_id,GlobalPowerManger* _globalPowerChnManger);
  48. int dev_get_power_manage_info_by_ID(sqlite3 *db,int product_id,int product_addr,int product_ch_id,GlobalPowerManger* _globalPowerChnManger);
  49. int dev_get_ac_power_info(sqlite3 *db,GlobalTreeACManager* pm);
  50. int dev_get_t_ac_power_manage_info(sqlite3 *db,int product_id,int product_addr,int product_ch_id,int product_ph_type,GlobalTreeACManager* _globalPowerChnManger);
  51. int dev_insert_t_ac_power_manage_info(sqlite3 *db,int product_id,int product_ch_id,GlobalTreeACManager* _globalPowerChnManger);
  52. int dev_insert_t_ac_power_info(sqlite3 *db,GlobalTreeACManager* _globalPowerChnInfo,int* nIndex);
  53. int dev_update_t_ac_power_manage_info(sqlite3 *db,GlobalTreeACManager* _globalPowerChnInfo);
  54. int dev_update_t_ac_power_manage_over_info(sqlite3 *db,GlobalTreeACManager* _globalPowerChnManger);
  55. int dev_delete_ac_power_info_all(sqlite3 *db);
  56. int dev_update_power_manage_genera_info(sqlite3 *db,int product_id,int product_ch_id,GlobalPowerManger* _globalPowerChnManger);
  57. int dev_update_power_manage_genera_info_addr(sqlite3 *db,int product_id,int addr,int addr_ch_id,GlobalPowerManger* _globalPowerChnManger);
  58. int dev_update_power_manage_over_info(sqlite3 *db,int product_id,int product_ch_id,GlobalPowerManger* _globalPowerChnManger);
  59. int dev_insert_sensor_info(sqlite3 *db,GlobalSensorInfo* _globalSensorInfo,int *nIndex);
  60. int dev_search_sensor_info(sqlite3 *db,
  61. int product_id,
  62. int sensor_id,
  63. char* start_time,
  64. char* stop_time,
  65. int pageNum,
  66. int pageSize,
  67. int* size,
  68. GlobalSensorInfo* _globalSensorInfo);
  69. int dev_serach_latest_sensor_info(sqlite3 *db,int product_id,int sensor_id,GlobalSensorInfo* _globalSensorInfo);
  70. int dev_get_sensor_manage_info(sqlite3 *db,int product_id,GlobalSensorManger* _globalSensorManger);
  71. int dev_insert_sensor_genera_manage(sqlite3 *db,GlobalSensorManger* _globalSensorManger);
  72. int dev_update_sensor_genera_manage(sqlite3 *db,int product_id,int sensor_id,GlobalSensorManger* _globalSensorManger);
  73. int dev_update_sensor_over_manage(sqlite3 *db,int product_id,int sensor_id,GlobalSensorManger* _globalSensorManger);
  74. int dev_delete_sensor_manage(sqlite3 *db,int product_id,int sensor_id);
  75. int dev_delete_sensor_info_all(sqlite3 *db);
  76. int dev_insert_alarm_info(sqlite3* db,int product_id,int alarm_type,time_data_t date_time,char* alarm_content,char* user);
  77. int dev_search_alarm_info(sqlite3* db,
  78. int product_id,
  79. int alarm_type,
  80. time_data_t start_time,
  81. time_data_t end_time,
  82. int page_num,
  83. int page_size,
  84. _AlarmAckInfo* _alarm_ack_info,
  85. int* nAlarmSum
  86. );
  87. int dev_serarch_all_alarm(sqlite3* db,
  88. int product_id,
  89. int alarm_type,
  90. int page_num,
  91. int page_size,
  92. _AlarmAckInfo* _alarm_ack_info,
  93. int* nAlarmSum
  94. );
  95. int dev_delete_alarm_info_all(sqlite3* db,int alarm_type);
  96. int dev_get_ntp_info(sqlite3 *db,NTPManager* _globalNTPInfo);
  97. int dev_update_ntp_info(sqlite3 *db, int product_id, NTPManager* _globalNTPInfo);
  98. int dev_insert_ntp_info(sqlite3 *db,NTPManager* _globalNTPInfo);
  99. int dev_get_snmp_info(sqlite3 *db, SNMPManager* _globalSNMPInfo);
  100. int dev_insert_snmp_info(sqlite3 *db, SNMPManager* _globalSNMPInfo);
  101. int dev_update_snmp_info(sqlite3 *db, int product_id, SNMPManager* _globalSNMPInfo);
  102. int dev_insert_alarm_ctrl(sqlite3* db,int product_id,int nAlarmType,char* alarm_content,char *user);
  103. int dev_delete__group_info(sqlite3 *db,int product_id);
  104. int dev_insert_group_info(sqlite3 *db,GroupInfo* _globalgroupInfo);
  105. int dev_get_group_info(sqlite3 *db, GroupInfo* _globalgroupInfo);
  106. int dev_update_group_info(sqlite3 *db, GroupInfo* _globalgroupInfo);
  107. int dev_update_user_info(sqlite3 *db, UserInfo* _globaluserInfo);
  108. int dev_insert_user_info(sqlite3 *db,UserInfo* _globaluserInfo);
  109. int dev_get_user_info(sqlite3 *db, UserInfo* _globaluserInfo);
  110. int dev_delete_user_info(sqlite3 *db,int userID);
  111. int dev_update_role_info(sqlite3 *db, RoleInfo* _globalRoleInfo);
  112. int dev_insert_role_info(sqlite3 *db,RoleInfo* _globalRoleInfo);
  113. int dev_get_role_info(sqlite3 *db, RoleInfo* _globalRoleInfo);
  114. //��ʱ������
  115. int dev_get_power_ds(sqlite3 *db,GlobalPowerManger* _powerAll,char* dateSelect);
  116. int dev_update_power_ds(sqlite3 *db,int product_id,int nChn,_PowerDSManage_t* _powerDS);
  117. int dev_insert_power_ds(sqlite3 *db,int product_id,int nChn,_PowerDSManage_t* _powerDS);
  118. int dev_delete_power_ds(sqlite3 *db,int product_id,int nChn,_PowerDSManage_t* _powerDS);
  119. //报警信息处理
  120. int dev_Alarm_send_message(GlobalDeviceManager* globalDeviceManger,GlobalPowerManger* __globalPowerTemp,int _AlarmType);
  121. int dev_Alarm_T_AC_message(GlobalDeviceManager* globalDeviceManger,GlobalTreeACManager* __globalPowerTemp,int _AlarmType);
  122. int dev_sensor_Alarm_send_message(GlobalDeviceManager* globalDeviceManger,GlobalSensorManger* __globalPowerTemp,int _AlarmType);
  123. int dev_Alarm_Run_message(GlobalDeviceManager* globalDeviceManger,const char* strRunMSG, const char *strOther);
  124. int dev_get_breaker_manage_info(sqlite3 *db,int product_id,GlobalBreakerManager* _globalBreakerManager);
  125. int dev_insert_breaker_genera_manage(sqlite3 *db,GlobalBreakerManager* _globalBreakerManager);
  126. int dev_update_breaker_genera_manage(sqlite3 *db,int product_id,int breaker_id,GlobalBreakerManager* _globalBreakerManager);
  127. int dev_delete_breaker_manage(sqlite3 *db,int product_id,int breaker_id);
  128. int dev_switch_init(sqlite3 *db, netswitch_info_t *sw);
  129. int dev_switch_update_port(sqlite3 *db, port_info_t *pt);
  130. int dev_switch_update_all(sqlite3 *db, netswitch_info_t *sw);
  131. int dev_mail_init(sqlite3 *db, mail_info_t *info);
  132. int dev_mail_get(sqlite3 *db, mail_info_t *info);
  133. int dev_mail_update_send(sqlite3 *db, mail_send_t *send);
  134. int dev_mail_update_recv(sqlite3 *db, mail_recv_t *recv);
  135. int dev_mqtt_init(sqlite3 *db, mqtt_info_t *info);
  136. int dev_mqtt_get(sqlite3 *db, mqtt_info_t *info);
  137. int dev_mqtt_update_ser(sqlite3 *db, mqtt_server_t *ser);
  138. int dev_mqtt_update_info(sqlite3 *db, mqtt_info_t *info);
  139. int dev_SMS_get(sqlite3 *db, CellInfo_t *info);
  140. int dev_SMS_update_recv(sqlite3 *db, CellInfo_t *recv);
  141. int dev_sql_VACCUM(sqlite3 *db);
  142. int dev_sql_set_overwrite(int flag);
  143. int dev_get_sigle_user_info(sqlite3 *db, UserInfo* _globaluserInfo,char *name,char* password);
  144. int dev_tencent_cloud_update_info(sqlite3 *db, tencent_cloud_info_t *info);
  145. int dev_tencent_cloud_init(sqlite3 *db, cloud_info_t *info);
  146. int dev_tencent_cloud_get(sqlite3 *db, cloud_info_t *info);
  147. int dev_tencent_cloud_update_phone(sqlite3 *db, phone_id_t *phone);
  148. enum {
  149. IO_IMPORT=0,
  150. IO_EXPORT,
  151. IO_MAX,
  152. };
  153. enum {
  154. TAB_ID_NTP=0,
  155. TAB_ID_USER,
  156. TAB_ID_ROLE,
  157. TAB_ID_GROUP,
  158. TAB_ID_SNMP,
  159. TAB_ID_MAIL,
  160. TAB_ID_MQTT,
  161. TAB_ID_TIMER,
  162. TAB_ID_POWER,
  163. TAB_ID_POWER3,
  164. TAB_ID_SENSOR,
  165. TAB_ID_SENSOR_INFO,
  166. TAB_ID_BREAKER,
  167. TAB_ID_LOG_INFO,
  168. TAB_ID_ALARM_INFO,
  169. TAB_ID_POWER_INFO,
  170. TAB_ID_POWER3_INFO,
  171. TAB_ID_MAX
  172. };
  173. int dev_sensor_xport(sqlite3 *db, int io_type, char *path);
  174. int dev_alarm_xport(int io_type, char *path);
  175. int dev_serv_xport(int io_type, char *path);
  176. int dev_log_xport(int type, time_t from, time_t to, char *path);
  177. int dev_power_xport(time_t from, time_t to, char *path);
  178. int dev_clear_table(sqlite3 *db, int tab_id);
  179. void set_led_beep(int led_mode, int beep_mode);
  180. int dev_sensor_info_xport(time_t from, time_t to, char *path,int type);
  181. #endif