From d064643c78aaebbc83eb6c360b70efa82047e6bb Mon Sep 17 00:00:00 2001
From: congmu <congmu2024@163.com>
Date: 星期五, 01 十一月 2024 15:02:01 +0800
Subject: [PATCH] common

---
 common.h |  407 +++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 277 insertions(+), 130 deletions(-)

diff --git a/common.h b/common.h
index a93c4bd..3fb2653 100644
--- a/common.h
+++ b/common.h
@@ -1,7 +1,9 @@
 #ifndef COMMON_H
 #define COMMON_H
-#include  <string.h>
-#include <vector>
+#include <iostream>
+#include <cstring>
+#include <QString>
+
 
 enum TypeInfo{
 
@@ -13,15 +15,20 @@
 	RESET_REQ, //閲嶇疆瀵嗙爜璇锋眰
 	RESET_RES, //閲嶇疆瀵嗙爜鍝嶅簲
 
-    //鍘嗗彶鏌ヨ鍒嗘瀽
-    HISTORY_QUERY_REQ, // 鍘嗗彶鏌ヨ璇锋眰
-    HISTORY_QUERY_RES, // 鍘嗗彶鏌ヨ鍝嶅簲
 
     //鏉冮檺绠$悊
     QUERY_PMS_REQ,      // 鎸夊憳宸ョ紪鍙枫�佸悕瀛楁垨鑱屼綅鏌ヨ浜哄憳鏉冮檺淇℃伅璇锋眰
     UPDATE_PMS_REQ,     // 鎸夎鑹瞚d鏇存柊鏉冮檺淇℃伅璇锋眰
     QUERY_PMS_RES,      // 鏌ヨ浜哄憳鍜岃鑹蹭俊鎭殑鍝嶅簲缁撴瀯浣�
     UPDATE_PMS_RES,     // 鏉冮檺鏇存柊缁撴灉鍝嶅簲浣�
+
+    //璁惧绠$悊
+    AD_Req,//娣诲姞璁惧璇锋眰
+	AD_Res,//娣诲姞璁惧鍝嶅簲
+	DD_Req,//鍋滄璁惧璇锋眰
+	DD_Res,//鍋滄璁惧璇锋眰
+	PD_Req,//鏆傚仠璁惧璇锋眰
+	PD_Res,//鏆傚仠璁惧璇锋眰
 
     //鍦板浘鏍囨敞
     MAPMARK_REQ,//鍦板浘鏍囨敞璇锋眰
@@ -39,19 +46,29 @@
     YIELD_REQ,//鐓ょ熆浜ч噺璇锋眰
     YIELD_RES,//鐓ょ熆浜ч噺鍝嶅簲
 
-    //鐢熶骇璁″垝绠$悊
-    ADDPRODUCTIONPLAN_REQ,//娣诲姞涓�琛屾暟鎹殑璇锋眰缁撴瀯浣�
-	ADDPRODUCTIONPLAN_RES,//娣诲姞涓�琛屾暟鎹殑鍝嶅簲缁撴瀯浣�
-	UPDATEPRODUCTIONPLANQUANTITY_REQ,// 鏇存柊鐢熶骇璁″垝锛堣鍒掔敓浜ч噺锛夌殑璇锋眰缁撴瀯浣�
-	UPDATEPRODUCTIONPLANQUANTITY_RES,// 鏇存柊鐢熶骇璁″垝锛堣鍒掔敓浜ч噺锛夌殑鍝嶅簲缁撴瀯浣�
-	UPDATEPRODUCTIONPLANLOG_REQ,//鏇存柊鐢熶骇璁″垝锛堟棩蹇楋級鐨勮姹傜粨鏋勪綋
-	UPDATEPRODUCTIONPLANLOG_RES,//鏇存柊鐢熶骇璁″垝锛堟棩蹇楋級鐨勫搷搴旂粨鏋勪綋
-	PRODUCTIONPLAN_REQ,// 鏌ヨ鐢熶骇璁″垝淇℃伅鐨勮姹傜粨鏋勪綋
-	PRODUCTIONPLAN_RES,// 鏌ヨ鐢熶骇璁″垝淇℃伅鐨勫搷搴旂粨鏋勪綋
-	FORRECENTFOURTEENPRODUCTIONPLANS_REQ,//鏌ヨ杩戝崄鍥涙潯鐨勮姹傜粨鏋勪綋
-	FORRECENTFOURTEENPRODUCTIONPLANS_RES //鏌ヨ杩戝崄鍥涙潯鐨勫搷搴旂粨鏋勪綋
+	//璀︽姤绠$悊
+	WARNING_REQ, // 璀︽姤璇锋眰
+    WARNING_RES, // 璀︽姤鍝嶅簲
 
-    //鑷姩鍗囩骇&鐗堟湰绠$悊
+
+    //鐢熶骇璁″垝绠$悊
+    ADD_PRODUCTION_PLAN_REQ,//娣诲姞涓�琛屾暟鎹殑璇锋眰缁撴瀯浣�
+	ADD_PRODUCTION_PLAN_RES,//娣诲姞涓�琛屾暟鎹殑鍝嶅簲缁撴瀯浣�
+	UPDATE_PRODUCTION_PLAN_QUANTITY_REQ,// 鏇存柊鐢熶骇璁″垝锛堣鍒掔敓浜ч噺锛夌殑璇锋眰缁撴瀯浣�
+	UPDATE_PRODUCTION_PLAN_QUANTITY_RES,// 鏇存柊鐢熶骇璁″垝锛堣鍒掔敓浜ч噺锛夌殑鍝嶅簲缁撴瀯浣�
+	UPDATE_PRODUCTION_PLAN_LOG_REQ,//鏇存柊鐢熶骇璁″垝锛堟棩蹇楋級鐨勮姹傜粨鏋勪綋
+	UPDATE_PRODUCTION_PLAN_LOG_RES,//鏇存柊鐢熶骇璁″垝锛堟棩蹇楋級鐨勫搷搴旂粨鏋勪綋
+	PRODUCTION_PLAN_REQ,// 鏌ヨ鐢熶骇璁″垝淇℃伅鐨勮姹傜粨鏋勪綋
+	PRODUCTION_PLAN_RES,// 鏌ヨ鐢熶骇璁″垝淇℃伅鐨勫搷搴旂粨鏋勪綋
+	FORRECENT_FOURTEEN_PRODUCTION_PLANS_REQ,//鏌ヨ杩戝崄鍥涙潯鐨勮姹傜粨鏋勪綋
+	FORRECENT_FOURTEEN_PRODUCTION_PLANS_RES //鏌ヨ杩戝崄鍥涙潯鐨勫搷搴旂粨鏋勪綋
+
+
+	//鍘嗗彶鏌ヨ鍒嗘瀽
+	HISTORY_QUERY_REQ, // 鍘嗗彶鏌ヨ璇锋眰
+    HISTORY_QUERY_RES, // 鍘嗗彶鏌ヨ鍝嶅簲
+
+    //鑷姩鍗囩骇
     VERSIONNUM_REQ,  // 鐗堟湰鍙疯姹�
     VERSIONNUM_RES,   // 鐗堟湰鍙峰搷搴�
     UPLOAD_FILE_REQ, // 涓婁紶鏂囦欢鐨勮姹�
@@ -67,6 +84,7 @@
     //鏃ュ織
     LOGSEARCH_REQ;//鏃ュ織鏌ヨ璇锋眰
 	LOGSEARCH_RES;//鏃ュ織鏌ヨ鍝嶅簲
+
 		
 };
 
@@ -75,6 +93,7 @@
     int len;
 };
 
+//娉ㄥ唽鐧诲綍
 //鐧诲綍璇锋眰 
 	struct LoginReq
 	{
@@ -170,42 +189,7 @@
 	};
 
 
-// 鍘嗗彶鏌ヨ璇锋眰缁撴瀯浣�
-struct HistoryQueryReq {
-    Head head;
-    //鏍规嵁鏃堕棿鑼冨洿鏌ヨ
-    char start_time[32];
-    char end_time[32];
-
-    HistoryQueryReq() {
-        // 鍒濆鍖栨暟鎹ご
-        head.type = HISTORY_QUERY_REQ;
-        head.len = sizeof(HistoryQueryReq);
-        // 鍒濆鍖栨煡璇㈡潯浠跺瓧娈�
-        std::memset(start_time, 0, sizeof(start_time));
-        std::memset(end_time, 0, sizeof(end_time));
-    }
-};
-
-
-// 鍘嗗彶鏌ヨ鍝嶅簲缁撴瀯浣�
-struct HistoryQueryRes {
-    Head head;
-
-    char results[1024][32];
-    int result_count;
-
-    HistoryQueryRes() {
-        // 鍒濆鍖栨暟鎹ご
-        head.type = HISTORY_QUERY_RES;
-        head.len = sizeof(HistoryQueryRes);
-        // 鍒濆鍖栫粨鏋滅浉鍏冲瓧娈�
-        result_count = 0;
-        std::memset(results, 0, sizeof(results));
-    }
-};
-
-
+//鏉冮檺绠$悊
 // 鎸夊憳宸ョ紪鍙枫�佸悕瀛楁垨鑱屼綅鏌ヨ浜哄憳鏉冮檺淇℃伅璇锋眰
 typedef struct QueryPmsRequest{
     Head head;
@@ -214,9 +198,9 @@
     char permissonType[32];
     QueryPmsRequest(){
         head.type=QUERY_PMS_REQ;
-        userNo[32] = {0};
-        name[32] = {0};
-        permissonType[32] = {0};
+        memset(userNo,0,32);
+        memset(permissonType,0,32);
+        memset(name,0,32);
         head.len = sizeof(QueryPmsRequest);
     }
 } QueryPmsRequest;
@@ -237,8 +221,7 @@
 } UpdatePmsRequest;
 
 // 鍗曚釜浜哄憳鏉冮檺缁撴瀯浣�
-typedef struct UserAboutPms{
-
+typedef struct PmsRes{
     int queryHistory;
     int loggerSearch;
     int mapMark;
@@ -250,22 +233,20 @@
     char permissonType[32];
     char startDateTime[32];
     char endDateTime[32];
-
 } PmsRes;
 
 // 鏌ヨ浜哄憳鍜岃鑹蹭俊鎭殑鍝嶅簲缁撴瀯浣�
-typedef struct UserAboutPmsResponse{
+typedef struct QueryPmsResponse{
     Head head;
     int success; // 1涓烘垚鍔� ,0涓哄け璐�
-    PmsRes pmsList[100];
-    UserAboutPmsResponse(){
+    char pmsList[0];
+    QueryPmsResponse(){
         head.type=QUERY_PMS_RES;
-        head.len = sizeof(UserAboutPmsResponse);
     }
 } QueryPmsResponse;
 
 // 鏉冮檺鏇存柊缁撴灉鍝嶅簲浣�
-typedef struct UpdatePmsResponse{
+struct UpdatePmsResponse{
     Head head;
     int success; // 1涓烘垚鍔� ,0涓哄け璐�
     UpdatePmsResponse(){
@@ -275,13 +256,108 @@
 
 } UpdatePmsResponse ;
 
-//鍦板浘鏍囨敞璇锋眰 
+
+//璁惧绠$悊
+//娣诲姞璁惧
+struct ADReq
+{
+	Head head;
+	char Device_Name[32];
+	ADReq() {
+		head.type = AD_Req;
+		head.len = sizeof(AD_Req);
+	}
+
+};
+struct ADPermission
+{
+	char Device_Name[32];
+	char Device_Status[32];
+	char Start_Time[32];
+	char Work_Time[32];
+	char Manufacturer[100];
+	char Devices_Type[32];
+};
+struct ADRes
+{
+	Head head;
+
+	ADPermission per;
+	ADRes() {
+		head.type = AD_Res;
+		head.len = sizeof(ADRes);
+	}
+
+};
+
+//鍋滄璁惧
+struct DDReq
+{
+	Head head;
+	char Device_Name[32];
+	DDReq() {
+		head.type = DD_Req;
+		head.len = sizeof(DDReq);
+	}
+};
+struct DDPermission
+{
+	char Device_Name[32];
+	char Device_Status[32];
+	char Start_Time[32];
+	char Work_Time[32];
+	char Manufacturer[100];
+	char Devices_Type[32];
+};
+struct DDRes
+{
+	Head head;
+
+	DDPermission per;
+	DDRes() {
+		head.type = DD_Res;
+		head.len = sizeof(DDRes);
+	}
+};
+
+//鏆傚仠璁惧
+struct PDReq
+{
+	Head head;
+	char Device_Name[32];
+	PDReq() {
+		head.type = PD_Req;
+		head.len = sizeof(PDReq);
+	}
+};
+struct PDPermission
+{
+	char Device_Name[32];
+	char Device_Status[32];
+	char Start_Time[32];
+	char Work_Time[32];
+	char Manufacturer[100];
+	char Devices_Type[32];
+};
+struct PDRes
+{
+	Head head;
+
+	PDPermission per;
+	PDRes() {
+		head.type = PD_Res;
+		head.len = sizeof(PDRes);
+	}
+};
+
+
+//鍦板浘鏍囨敞
 struct MapMarkReq
 {
 	Head head;
-	int marktype;//鎻掑叆銆佸垹闄ゃ��
-	char msg[0];//鏌旀�ф暟缁�
-		LoginReq(){
+	int marktype;//鎻掑叆銆佸垹闄ゃ�佸姞杞�
+	MaskInfo msg[0];//鏌旀�ф暟缁�
+	MapMarkReq(){
 		head.type = MAPMARK_REQ;
 		head.len = sizeof(MapMarkReq);
 	}
@@ -290,18 +366,18 @@
 //鍦板浘鍝嶅簲锛�
 struct MarkInfo
 {
-	int mark_id;//鏍囨敞鐐筰d
-	string latitude;//绾害
-	string longitude;//缁忓害
-	int device_id;//璁惧ID
-	int device_status;//璁惧鐘舵��
-	string device_name;//璁惧鍚嶇О
+	int markId;//鏍囨敞鐐筰d
+	double latitude;//绾害
+	double longitude;//缁忓害
+	int deviceId;//璁惧ID
+	int deviceStatus;//璁惧鐘舵��
+	char deviceName[32];//璁惧鍚嶇О
 };
 	
-struct MapMarkRes  ////鍦板浘鏍囨敞鍝嶅簲
+struct MapMarkRes
 {
 	Head head;
-	int marktype;//鎻掑叆杩樻槸鍒犻櫎
+	int markType;//鎻掑叆杩樻槸鍒犻櫎
 	int status; // 鎿嶄綔鐘舵�乢鎴愬姛/澶辫触
 	MaskInfo info[0];//鏌旀�ф暟缁�
 	MapMarkRes()
@@ -311,7 +387,7 @@
 	};
 };
 
-
+//澶у睆鏄剧ず
 //鐜鏁版嵁璇锋眰
 struct EnvironmentReq
 {
@@ -342,7 +418,7 @@
 {
     Head head;
     char user_Name;//鎿嶄綔鐢ㄦ埛鍚�
-    char alarm_Time[32];//鎿嶄綔鏃堕棿
+    char operate_Time[32];//鎿嶄綔鏃堕棿
     char device_Name[32];//鎿嶄綔璁惧
     char movement[256];//鎿嶄綔鎻忚堪
         MovementRecordReq(){
@@ -374,6 +450,36 @@
     }
 };
 
+//璀︽姤绠$悊
+// 璀︽姤璇锋眰缁撴瀯浣�  
+struct WarningReq {  
+    Head head;  
+    float oxygen;   // 姘ф皵娴撳害  
+    float carbon;   // 涓�姘у寲纰虫祿搴�  
+    float temp;     // 娓╁害  
+    float humidity; // 婀垮害  
+
+    WarningReq() {  
+        head.type = WARNING_REQ;  
+        head.len = sizeof(WarningReq);  
+    }  
+};  
+
+// 璀︽姤鍝嶅簲缁撴瀯浣�  
+struct WarningRes {  
+    Head head;  
+    int status;         // 鍝嶅簲鐘舵�侊紙姣斿 0 琛ㄧず鎴愬姛锛�1 琛ㄧず澶辫触绛夛級  
+    const char* message; // 鍝嶅簲娑堟伅鎻忚堪  
+
+    WarningRes(int stat, const char* msg) {  
+        head.type = WARNING_RES;  
+        head.len = sizeof(WarningRes);  
+        status = stat;  
+        message = msg;  
+    }  
+}; 
+
+//鐢熶骇璁″垝绠$悊
 //娣诲姞涓�琛屾暟鎹殑璇锋眰缁撴瀯浣�
 struct AddProductionPlanReq {
 	Head head;
@@ -384,7 +490,7 @@
 	int predictedProductionQuantity;
 	char logText[256];
 	AddProductionPlanReq() {
-		head.type = ADDPRODUCTIONPLAN_REQ;
+		head.type = ADD_PRODUCTION_PLAN_REQ;
 		head.len = sizeof(AddProductionPlanReq);
 	}
 };
@@ -394,7 +500,7 @@
 	int type;
 	int status; // 鍙互琛ㄧず娣诲姞鏄惁鎴愬姛锛� 0 琛ㄧず澶辫触锛�1 琛ㄧず鎴愬姛
 	AddProductionPlanRes() {
-		head.type = ADDPRODUCTIONPLAN_RES;
+		head.type = ADD_PRODUCTION_PLAN_RES;
 		head.len = sizeof(AddProductionPlanRes);
 	}
 };
@@ -406,7 +512,7 @@
 	int plannedProductionQuantity;
 	char productionDate[32];
 	UpdateProductionPlanQuantityReq() {
-		head.type = UPDATEPRODUCTIONPLANQUANTITY_REQ;
+		head.type = UPDATE_PRODUCTION_PLAN_QUANTITY_REQ;
 		head.len = sizeof(UpdateProductionPlanQuantityReq);
 	}
 };
@@ -416,7 +522,7 @@
 	int type;
 	int status; // 鍙互琛ㄧず鏇存柊鏄惁鎴愬姛锛屼緥濡� 0 琛ㄧず澶辫触锛�1 琛ㄧず鎴愬姛
 	UpdateProductionPlanQuantityRes() {
-		head.type = UPDATEPRODUCTIONPLANQUANTITY_RES;
+		head.type = UPDATE_PRODUCTION_PLAN_QUANTITY_RES;
 		head.len = sizeof(UpdateProductionPlanQuantityRes);
 	}
 };
@@ -429,7 +535,7 @@
 	char logText[256];
 	char productionDate[32];
 	UpdateProductionPlanLogReq() {
-		head.type = UPDATEPRODUCTIONPLANLOG_REQ;
+		head.type = UPDATE_PRODUCTION_PLAN_LOG_REQ;
 		head.len = sizeof(UpdateProductionPlanLogReq);
 	}
 };
@@ -439,7 +545,7 @@
 	int type;
 	int status; // 鍙互琛ㄧず鏇存柊鏄惁鎴愬姛锛屼緥濡� 0 琛ㄧず澶辫触锛�1 琛ㄧず鎴愬姛
 	UpdateProductionPlanLogRes() {
-		head.type = UPDATEPRODUCTIONPLANLOG_RES;
+		head.type = UPDATE_PRODUCTION_PLAN_LOG_RES;
 		head.len = sizeof(UpdateProductionPlanLogRes);
 	}
 };
@@ -457,7 +563,7 @@
 	int predictedProductionQuantity;
 	char logText[256];
 	ProductionPlanReq() {
-		head.type = PRODUCTIONPLAN_REQ;
+		head.type = PRODUCTION_PLAN_REQ;
 		head.len = sizeof(ProductionPlanReq);
 	}
 };
@@ -473,7 +579,7 @@
 	char productionDate[32];
 	char logText[256];
 	ProductionPlanRes() {
-		head.type = PRODUCTIONPLAN_REQ;
+		head.type = PRODUCTION_PLAN_REQ;
 		head.len = sizeof(ProductionPlanRes);
 	}
 };
@@ -501,13 +607,70 @@
 	char productionDates[14][32];
 	char logTexts[14][256];
 	RecentFourteenProductionPlansRes() {
-		head.type = UPDATEPRODUCTIONPLANQUANTITY_REQ;
+		head.type = UPDATE_PRODUCTION_PLAN_QUANTITY_REQ;
 		head.len = sizeof(RecentFourteenProductionPlansRes);
 	}
 };
 
 
 
+//鍘嗗彶鏌ヨ鍒嗘瀽
+// 鍘嗗彶鏌ヨ璇锋眰缁撴瀯浣�
+struct HistoryQueryReq {
+    Head head;
+    //鏍规嵁鏃堕棿鑼冨洿鏌ヨ
+    char start_time[32];
+    char end_time[32];
+
+    HistoryQueryReq() {
+        // 鍒濆鍖栨暟鎹ご
+        head.type = HISTORY_QUERY_REQ;
+        head.len = sizeof(HistoryQueryReq);
+        // 鍒濆鍖栨煡璇㈡潯浠跺瓧娈�
+        std::memset(start_time, 0, sizeof(start_time));
+        std::memset(end_time, 0, sizeof(end_time));
+    }
+};
+
+// 绯荤粺杩愯鐘舵�佽〃鐩稿叧淇℃伅
+struct Histroy_Info{
+        int sysId;  // 瀵瑰簲绯荤粺杩愯鐘舵�佽〃鐨勮褰曠紪鍙�
+        QString sysDataCollectionTime;  // 鏁版嵁閲囬泦鏃堕棿
+        QString sysDeviceType;  // 璁惧绫诲瀷
+        QString sysDeviceId;  // 璁惧缂栧彿
+        QString sysDeviceStatus;  // 璁惧鐘舵��
+        QString sysSystemStatus;  // 绯荤粺鏁翠綋杩愯鐘舵�佹弿杩�
+
+        int devId;  // 瀵瑰簲璁惧璇︾粏淇℃伅琛ㄧ殑璁板綍缂栧彿
+        QString devDeviceType;  // 璁惧绫诲瀷锛堜笌绯荤粺杩愯鐘舵�佽〃涓殑璁惧绫诲瀷瀵瑰簲锛屽彲鐢ㄤ簬鍏宠仈锛�
+        QString devDeviceId;  // 璁惧缂栧彿锛堜笌绯荤粺杩愯鐘舵�佽〃涓殑璁惧缂栧彿瀵瑰簲锛屽彲鐢ㄤ簬鍏宠仈锛�
+        QString devModel;  // 璁惧鍨嬪彿
+        QString runDeviceStatus;  // 璁惧鐘舵��
+        QString runFaultAlarmTime;  // 鏁呴殰鎶ヨ鏃堕棿
+        QString runFaultDescription;  // 鏁呴殰璇︾粏鎻忚堪
+
+        int safetyId;  // 瀵瑰簲璁惧瀹夊叏鐘舵�佽〃鐨勮褰曠紪鍙�
+        QString safetyDataCollectionTime;  // 鏁版嵁閲囬泦鏃堕棿锛堝彲鐢ㄤ簬鍏宠仈涓嶅悓琛ㄥ湪鍚屼竴鏃堕棿鐐圭殑鏁版嵁鎯呭喌锛�
+        QString safetyDeviceType;  // 璁惧绫诲瀷锛堢敤浜庡叧鑱旓級
+        QString safetyDeviceId;  // 璁惧缂栧彿锛堢敤浜庡叧鑱旓級
+        QString safetyStatus;  // 璁惧瀹夊叏鐘舵��
+        QString safetyParameter;  // 瀹夊叏鍙傛暟
+};
+// 鍘嗗彶鏌ヨ鍝嶅簲缁撴瀯浣�
+// 瀹夊叏鐘舵�佽〃鐩稿叧淇℃伅
+struct HistoryQueryRes {
+    Head head;
+	Histroy_Info sys[0];
+
+    HistoryQueryRes() {
+        // 鍒濆鍖栨暟鎹ご
+        head.type = HISTORY_QUERY_RES;
+        head.len = sizeof(HistoryQueryRes);
+    }
+    
+};
+
+//鑷姩鍗囩骇
 struct VersionNumReq        // 鐗堟湰鍙疯姹�
 {
 	Head head;
@@ -658,54 +821,38 @@
     }
 };
 
+//鏃ュ織
+struct ParsedLog { 
+    char timestamp[64]; // 鏃堕棿鎴�
+    char device_id[64]; // 璁惧ID
+    char level[16]; 聽 聽 // 鏃ュ織绾у埆
+    char content[256]; 聽// 鏃ュ織鍐呭
+    char source[64]; 聽 聽// 鏉ユ簮妯″潡
+    char user_id[64]; 聽 // 鐢ㄦ埛ID
+};
 
-struct LogQueryRequest {
-    Head header;                // 鏁版嵁澶�
-    std::string* keywords;      // 瀛樺偍澶氫釜鍏抽敭瀛楃殑鏌旀�ф暟缁�
-    size_t keywordCount;         // 鍏抽敭瀛楁暟閲�
-    std::string startDate;       // 寮�濮嬫棩鏈� (鏍煎紡: YYYY-MM-DD)
-    std::string endDate;         // 缁撴潫鏃ユ湡 (鏍煎紡: YYYY-MM-DD)
-    int pageNumber;              // 褰撳墠椤电爜
-    int pageSize;                // 姣忛〉鏉$洰鏁�
-
-    // 鏋勯�犲嚱鏁�
-    LogQueryRequest(int type, int len, std::string* keywords, size_t keywordCount, const std::string& startDate, const std::string& endDate, int pageNumber, int pageSize)
-        : header{type, len}, keywords(keywords), keywordCount(keywordCount), startDate(startDate), endDate(endDate), pageNumber(pageNumber), pageSize(pageSize) {}
-
-    // 鏋愭瀯鍑芥暟
-    ~LogQueryRequest() {
-        delete[] keywords; // 閲婃斁鍔ㄦ�佸垎閰嶇殑鍐呭瓨
+// 鏃ュ織鏌ヨ璇锋眰缁撴瀯浣�
+struct LogQueryReq {
+    Head head;                 // 鏁版嵁澶�
+    char keyWords[32];            // 瀛樺偍鍏抽敭瀛楃殑鏁扮粍
+    // 鏃犲弬鏋勯�犲嚱鏁�
+    LogQueryReq() {
+        head.type = LOGSEARCH_REQ;
+	    head.len = sizeof(LogQueryReq);
     }
 };
 
-//鏃ュ織鏌ヨ鍝嶅簲
-// 瀹氫箟鏃ュ織鏉$洰缁撴瀯浣�
-struct LogEntry {
-    int id;                  // 鏃ュ織鏉$洰 ID
-    string entryTime;       // 涓嬩簳鏃堕棿
-    string name;            // 濮撳悕
-    string exitTime;        // 鍗囦簳鏃堕棿
-    string department;       // 閮ㄩ棬
-    string position;        // 宀椾綅
-    //string workingTime;     // 宸ヤ綔鏃堕棿 鏁版嵁搴撹嚜鍔ㄧ敓鎴�
-
-      // 鏋勯�犲嚱鏁�
-    LogEntry(int id, const string& entryTime, const string& name, 
-              const string& exitTime, const string& department, 
-              const string& position)
-        : id(id), entryTime(entryTime), name(name), 
-          exitTime(exitTime), department(department), position(position) {}
-};
-
-// 瀹氫箟鏃ュ織鏌ヨ鍝嶅簲缁撴瀯浣�
-struct LogQueryResponse {
+// 鏃ュ織鏌ヨ鍝嶅簲缁撴瀯浣�
+struct LogQueryRes {
+    Head head;  
     int status;                    // 鍝嶅簲鐘舵�� (濡� 0 琛ㄧず鎴愬姛锛岄潪 0 琛ㄧず澶辫触)
-    string errorMessage;           // 閿欒淇℃伅锛堝鏋滄湁锛�
-    vector<LogEntry> logEntries;   // 鏃ュ織鏉$洰
-
-    // 鏋勯�犲嚱鏁�
-    LogQueryResponse(int status, const string& errorMessage, const vector<LogEntry>& logEntries)
-        : status(status), errorMessage(errorMessage), logEntries(logEntries) {}
+    char errorMessage[256];        // 閿欒淇℃伅锛堝鏋滄湁锛�
+    
+    // 鏃犲弬鏋勯�犲嚱鏁�
+    LogQueryRes() {
+        head.type = LOGSEARCH_RES;
+		head.len = sizeof(LogQueryRes);
+    }
 };
 
 

--
Gitblit v1.8.0