From dccc1ca1304dc1fcb86c8e24edd491509269b3e7 Mon Sep 17 00:00:00 2001
From: cheliequan <liequanche@126.com>
Date: 星期日, 29 一月 2023 14:44:52 +0800
Subject: [PATCH] 解决编译告警

---
 rule.cpp |   92 ++++++++++++---------------------------------
 1 files changed, 25 insertions(+), 67 deletions(-)

diff --git a/rule.cpp b/rule.cpp
index 04cf8e5..060cc21 100644
--- a/rule.cpp
+++ b/rule.cpp
@@ -1,85 +1,43 @@
+#include "3rdparty/yyjson/yyjson.h"
 #include "dbapi.h"
 #include "util.h"
-#include "3rdparty/yyjson/yyjson.h"
 
 using namespace protomsg;
 
-bool dbapi_get_time_rules(void *handle, std::vector<protomsg::CameraTimerule> & list) {
+bool dbapi_get_time_rules(void *handle, std::vector<protomsg::CameraTimerule> &list) {
     const char *topic = DATA_URL_PREFIX("/cameraTimerule/findAll");
 
-	char * ptr_value = NULL;
-	size_t data_len = 0;
-    //get the topic json data
-	yyjson_type type = YYJSON_TYPE_OBJ;
-	crepmsg *repmsg = NULL;
-    size_t len = 0;
-	protomsg::CameraTimerule CameraTimeRule;
-	int ret = 0;
-	
-	ret = bus_dbapi_get_topic_data(handle, topic, &repmsg, len);
-    if ( ret < 0 || NULL == repmsg)
-    {
-        return false;
-    }
+    bool ret = bus_dbapi_get_list(handle, topic, list);
 
-	//parse the json to get value of the key "data"  
-    int msglen = strlen(repmsg->data);
-    char* msgdata = (char *)malloc(msglen);
-    memset(msgdata, 0 , msglen);
+    return ret;
+}
 
-    if(0 == bus_dbapi_get_json_data((const char *)repmsg->data, &msgdata, &type))
-    {
-        printf("======>> protomsg: %s\n", msgdata);            
-    }
+bool dbapi_get_dayctls(char *timeRules, std::vector<protomsg::DayCtl> & list)
+{
+    bool is_array = true;
 
-    //iterate the array  to get the protobuf message
-	if (YYJSON_TYPE_ARR == type)
-	{
+	bool ret = bus_dbapi_get_list(timeRules, is_array, list);
 
-        printf("======>> deal the ARRAY\n"); 
-		// Read JSON and get root
-		yyjson_doc *doc = yyjson_read(msgdata, strlen(msgdata), 0);
-		yyjson_val *arr = yyjson_doc_get_root(doc);
+    return ret;
 
-        //yyjson_val *arr = yyjson_obj_get(root, "data"); 
-		yyjson_val *val;
-		yyjson_arr_iter iter;
-		yyjson_arr_iter_init(arr, &iter);
-		while ((val = yyjson_arr_iter_next(&iter)))
-		{		
-			data_len = 0;
-			ptr_value = yyjson_val_write(val, YYJSON_WRITE_NOFLAG, &data_len); 
-			printf("data: %s\n", ptr_value);	
-			printf("len: %lu\n", data_len);  
+}
 
-			std::string jsonString = ptr_value;			
-			if (json_to_proto(jsonString, CameraTimeRule)) 
-			{
-				printf("======>> json_to_proto done\n");
-				list.push_back(CameraTimeRule);
-			} 
-			else
-			{
-				printf("======>> json_to_proto fail\n");
-			    yyjson_doc_free(doc);
-			    free(msgdata);				
-				return false;
-			} 		
-		}
+bool dbapi_get_timeranges(char *datactls, std::vector<protomsg::TimeRange> & list)
+{
+    const char * flag_key = NULL;
 
-		// Free the doc
-        yyjson_doc_free(doc);
-	}
+    const char * data_key = NULL;
 
-    free(msgdata);
-	free_reply_msg(repmsg);
+	bool ret = bus_dbapi_get_list(datactls, flag_key, data_key, list);
+
+    return ret;
+
+}
+
+bool dbapi_get_camera_rules(void *handle, std::vector<protomsg::CameraAndRules> &list) {
+    const char *topic = DATA_URL_PREFIX("/camera/rule/findAll");
+
+    bool ret = bus_dbapi_get_list(handle, topic, list);
 
     return true;
 }
-
-bool dbapi_get_camera_rules(void *handle, std::vector<protomsg::CameraAndRules> & list) {
-    const char *topic = DATA_URL_PREFIX("/camera/rule/findAll");
-
-     return true;;
-}
-

--
Gitblit v1.8.0