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

---
 common.h | 1427 ++++++++++++++++++++++++++++++++--------------------------
 1 files changed, 786 insertions(+), 641 deletions(-)

diff --git a/common.h b/common.h
index aad25ce..8c1266d 100644
--- a/common.h
+++ b/common.h
@@ -3,9 +3,9 @@
 
 #include <string.h>
 
-enum TypeInfo{
+enum TypeInfo {
 
-    //娉ㄥ唽鐧诲綍
+	//娉ㄥ唽鐧诲綍
 	LOGIN_REQ, // 鐧诲綍璇锋眰
 	LOGIN_RES, // 鐧诲綍鍝嶅簲
 	REGISTER_REQ, //娉ㄥ唽璇锋眰
@@ -14,368 +14,342 @@
 	RESET_RES, //閲嶇疆瀵嗙爜鍝嶅簲
 
 
-    //鏉冮檺绠$悊
-    QUERY_PMS_REQ,      // 鎸夊憳宸ョ紪鍙枫�佸悕瀛楁垨鑱屼綅鏌ヨ浜哄憳鏉冮檺淇℃伅璇锋眰
-    UPDATE_PMS_REQ,     // 鎸夎鑹瞚d鏇存柊鏉冮檺淇℃伅璇锋眰
-    QUERY_PMS_RES,      // 鏌ヨ浜哄憳鍜岃鑹蹭俊鎭殑鍝嶅簲缁撴瀯浣�
-    UPDATE_PMS_RES,     // 鏉冮檺鏇存柊缁撴灉鍝嶅簲浣�
+	//鏉冮檺绠$悊
+	QUERY_PMS_REQ,      // 鎸夊憳宸ョ紪鍙枫�佸悕瀛楁垨鑱屼綅鏌ヨ浜哄憳鏉冮檺淇℃伅璇锋眰
+	UPDATE_PMS_REQ,     // 鎸夎鑹瞚d鏇存柊鏉冮檺淇℃伅璇锋眰
+	QUERY_PMS_RES,      // 鏌ヨ浜哄憳鍜岃鑹蹭俊鎭殑鍝嶅簲缁撴瀯浣�
+	UPDATE_PMS_RES,     // 鏉冮檺鏇存柊缁撴灉鍝嶅簲浣�
 
-    //璁惧绠$悊
-    AD_Req,//娣诲姞璁惧璇锋眰
-	AD_Res,//娣诲姞璁惧鍝嶅簲
-	CD_Req,//鍏抽棴璁惧璇锋眰
-	CD_Res,//鍏抽棴璁惧璇锋眰
-	PD_Req,//鏆傚仠璁惧璇锋眰
-	PD_Res,//鏆傚仠璁惧璇锋眰
+	//璁惧绠$悊
+	AD_REQ,//娣诲姞璁惧璇锋眰
+	AD_RES,//娣诲姞璁惧鍝嶅簲
+	MD_REQ,//淇敼璁惧璇锋眰
+	MD_RES,//淇敼璁惧鍝嶅簲
+	QD_REQ,//鏌ヨ璁惧璇锋眰
+	QD_RES,//鏌ヨ璁惧鍝嶅簲
 
-    //鍦板浘鏍囨敞
-    MAPMARK_REQ,//鍦板浘鏍囨敞璇锋眰
-	MAPMARK_RES//鍦板浘鏍囨敞鍝嶅簲
+	//鍦板浘鏍囨敞
+	MML_REQ,//鍦板浘鏍囨敞鍔犺浇璇锋眰
+	MML_RES,//鍦板浘鏍囨敞鍔犺浇鍝嶅簲	
+	MMI_REQ,//鍦板浘鏍囨敞鎻掑叆璇锋眰
+	MMI_RES,//鍦板浘鏍囨敞鎻掑叆鍝嶅簲	
+	MMD_REQ,//鍦板浘鏍囨敞鍒犻櫎璇锋眰
+	MMD_RES,//鍦板浘鏍囨敞鍒犻櫎鍝嶅簲
 
 	//澶у睆鏄剧ず
 	ENVIRONMENT_REQ,//鐜鏁版嵁璇锋眰
-    ENVIRONMENT_RES,//鐜鏁版嵁鍝嶅簲
-    DEVICESTATUS_REQ,//璁惧鐘舵�佽姹�
-    DEVICESTATUS_RES,//璁惧鐘舵�佸搷搴�
-    MOVEMENTRECORD_REQ,//鎿嶄綔鏃ュ織璇锋眰
-    MOVEMENTRECORD_RES,//鎿嶄綔鏃ュ織鍝嶅簲
-    ALARMRECORD_REQ,//璀︽姤璁板綍璇锋眰
-    ALARMRECORD_RES,//璀︽姤璁板綍鍝嶅簲
-    YIELD_REQ,//鐓ょ熆浜ч噺璇锋眰
-    YIELD_RES,//鐓ょ熆浜ч噺鍝嶅簲
+	ENVIRONMENT_RES,//鐜鏁版嵁鍝嶅簲
+	DEVICESTATUS_REQ,//璁惧鐘舵�佽姹�
+	DEVICESTATUS_RES,//璁惧鐘舵�佸搷搴�
+	MOVEMENTRECORD_REQ,//鎿嶄綔鏃ュ織璇锋眰
+	MOVEMENTRECORD_RES,//鎿嶄綔鏃ュ織鍝嶅簲
+	ALARMRECORD_REQ,//璀︽姤璁板綍璇锋眰
+	ALARMRECORD_RES,//璀︽姤璁板綍鍝嶅簲
+	YIELD_REQ,//鐓ょ熆浜ч噺璇锋眰
+	YIELD_RES,//鐓ょ熆浜ч噺鍝嶅簲
 
 	//璀︽姤绠$悊
 	WARNING_REQ, // 璀︽姤璇锋眰
-    WARNING_RES, // 璀︽姤鍝嶅簲
+	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 //鏌ヨ杩戝崄鍥涙潯鐨勫搷搴旂粨鏋勪綋
+	//鐢熶骇璁″垝绠$悊
+	ADD_PDPLAN_REQ,//娣诲姞涓�鏉$敓浜ц鍒掔殑璇锋眰缁撴瀯浣�
+	ADD_PDPLAN_RES,//娣诲姞涓�鏉$敓浜ц鍒掔殑鍝嶅簲缁撴瀯浣�
+	DEL_PDPLAN_REQ,//鍒犻櫎涓�鏉$敓浜ц鍒掔殑璇锋眰缁撴瀯浣�
+	DEL_PDPLAN_RES,//鍒犻櫎涓�鏉$敓浜ц鍒掔殑鍝嶅簲缁撴瀯浣�
+	UPDATE_PDPLAN_REQ,//鏇存敼涓�鏉$敓浜ц鍒掔殑璇锋眰缁撴瀯浣�
+	UPDATE_PDPLAN_RES,//鏇存敼涓�鏉$敓浜ц鍒掔殑鍝嶅簲缁撴瀯浣�
+	QUERY_PDPLAN_REQ,//鏌ヨ涓�鏉$敓浜ц鍒掔殑璇锋眰缁撴瀯浣�
+	QUERY_PDPLAN_RES,//鏌ヨ涓�鏉$敓浜ц鍒掔殑鍝嶅簲缁撴瀯浣�
 
 
-	//鍘嗗彶鏌ヨ鍒嗘瀽
-	HISTORY_QUERY_REQ, // 鍘嗗彶鏌ヨ璇锋眰
-    HISTORY_QUERY_RES, // 鍘嗗彶鏌ヨ鍝嶅簲
+	ADD_MONOUTPUT_REQ,//娣诲姞鏈堜骇閲忕殑璇锋眰缁撴瀯浣�
+	ADD_MONOUTPUT_RES,//娣诲姞鏈堜骇閲忕殑鍝嶅簲缁撴瀯浣�
+	DEL_MONOUTPUT_REQ,//鍒犻櫎鏈堜骇閲忕殑璇锋眰缁撴瀯浣�
+	DEL_MONOUTPUT_RES,//鍒犻櫎鏈堜骇閲忕殑鍝嶅簲缁撴瀯浣�
+	UPDATE_MONOUTPUT_REQ,//鏇存柊鏈堜骇閲忕殑璇锋眰缁撴瀯浣�
+	UPDATE_MONOUTPUT_RES,//鏇存柊鏈堜骇閲忕殑鍝嶅簲缁撴瀯浣�
+	QUERY_MONOUTPUT_REQ,//鏌ヨ鏈堜骇閲忕殑璇锋眰缁撴瀯浣�
+	QUERY_MONOUTPUT_RES,//鏌ヨ鏈堜骇閲忕殑鍝嶅簲缁撴瀯浣�
 
-    //鑷姩鍗囩骇
-    VERSIONNUM_REQ,  // 鐗堟湰鍙疯姹�
-    VERSIONNUM_RES,   // 鐗堟湰鍙峰搷搴�
-    UPLOAD_FILE_REQ, // 涓婁紶鏂囦欢鐨勮姹�
-    UPLOAD_FILE_RES, // 涓婁紶鏂囦欢鐨勫搷搴�
-    VERSIONINFOENTRY_REQ,       // 鐗堟湰淇℃伅褰曞叆璇锋眰
-    VERSIONINFOENTRY_RES,       //鐗堟湰淇℃伅褰曞叆鍝嶅簲
-    VERSIONUPDATE_REQ, // 鐗堟湰鏇存柊璇锋眰
-    VERSIONUPDATE_RES, // 鐗堟湰鏇存柊鍝嶅簲
-    FILEDOWNLOADS_REQ, // 鐗堟湰鏇存柊鏂囦欢涓嬭浇璇锋眰
-    FILEDOWNLOADS_RES, // 鐗堟湰鏇存柊鏂囦欢涓嬭浇鍝嶅簲
-    DOWNLOADSUCCESSFULLY_RES        // 鏇存柊鏂囦欢涓嬭浇鎴愬姛鐨勫搷搴�
 
-    //鏃ュ織
-    LOGSEARCH_REQ;//鏃ュ織鏌ヨ璇锋眰
-	LOGSEARCH_RES;//鏃ュ織鏌ヨ鍝嶅簲
+	//鑷姩鍗囩骇
+	VERSION_NUM_REQ,  // 鐗堟湰鍙疯姹�
+	VERSION_NUM_RES,   // 鐗堟湰鍙峰搷搴�
+	UPLOAD_FILE_REQ, // 涓婁紶鏂囦欢鐨勮姹�
+	UPLOAD_FILE_RES, // 涓婁紶鏂囦欢鐨勫搷搴�
+	VERSION_INFOENTRY_REQ,       // 鐗堟湰淇℃伅褰曞叆璇锋眰
+	VERSION_INFOENTRY_RES,       //鐗堟湰淇℃伅褰曞叆鍝嶅簲
+	VERSION_UPDATE_REQ, // 鐗堟湰鏇存柊璇锋眰
+	VERSION_UPDATE_RES, // 鐗堟湰鏇存柊鍝嶅簲
+	FILE_DOWNLOADS_REQ, // 鐗堟湰鏇存柊鏂囦欢涓嬭浇璇锋眰
+	FILE_DOWNLOADS_RES, // 鐗堟湰鏇存柊鏂囦欢涓嬭浇鍝嶅簲
+	DOWNLOAD_SUCCESSFULLY_RES,       // 鏇存柊鏂囦欢涓嬭浇鎴愬姛鐨勫搷搴�
 
-		
+	//鏃ュ織
+	LOGSEARCH_REQ,//鏃ュ織鏌ヨ璇锋眰
+	LOGSEARCH_RES,//鏃ュ織鏌ヨ鍝嶅簲
+
 };
 
-struct Head{
-    int type;
-    int len;
+struct Head {
+	int type;
+	int len;
 };
 
 //娉ㄥ唽鐧诲綍
 //鐧诲綍璇锋眰 
-	struct LoginReq
-	{
-		Head head;
-		char user_name[32];
-		char password[32];
-		LoginReq(){
-			head.type = LOGIN_REQ;
-			head.len = sizeof(LoginReq);
-		}
-	};
-	
-	struct Permission
-	{
-		int admin;
-		int log_search; //鏃ュ織鏌ヨ
-		int history; //鍘嗗彶璁板綍
-		int map_change;//鍦板浘
-		int version_manage; // 鐗堟湰绠$悊
-		int warning; //璀︽姤
-		int device_manage; //璁惧绠$悊
-		int pro_plan;//鐢熶骇璁″垝
-		char role_name[32]; // 瑙掕壊鍚�
-	};
-	
-	//鐧诲綍鍝嶅簲
-	struct LoginRes
-	{
-		Head head;
-		char user_name[32];
-		int status; // 鐧诲綍鐘舵��
-		// 鐧诲綍鎴愬姛鏃讹紝璇ヨ处鍙峰搴旂殑鏉冮檺缁勫悎
-		Permission per;
-		LoginRes()
-		{
-			head.type = LOGIN_RES;
-			head.len = sizeof(LoginRes);
-		};
-	};
+struct LoginReq
+{
+	Head head;
+	char userName[32];
+	char password[32];
+	LoginReq() {
+		head.type = LOGIN_REQ;
+		head.len = sizeof(LoginReq);
+	}
+};
 
-	//娉ㄥ唽璇锋眰 
-	struct RegisterReq
-	{
-		Head head;
-		char user_name[32];
-		char password[32];
-		char email[50];
-		int telephone;
-		RegisterReq(){
-			head.type = REGISTER_REQ;
-			head.len = sizeof(RegisterReq);
-		}
-	};
+struct Permission
+{
+	int admin;//瓒呯骇绠$悊鍛�
+	int loggerSearch; //鏃ュ織鏌ヨ
+	int queryHistory; //鍘嗗彶璁板綍
+	int mapMark;//鍦板浘
+	int versionManage; // 鐗堟湰绠$悊
+	int warning; //璀︽姤
+	int devManage; //璁惧绠$悊
+	int productPlan;//鐢熶骇璁″垝
+	char roleName[32]; // 瑙掕壊鍚�
+};
 
-	//娉ㄥ唽鍝嶅簲
-	struct RegisterRes
+//鐧诲綍鍝嶅簲
+struct LoginRes
+{
+	Head head;
+	char userName[32];
+	int status; // 鐧诲綍鐘舵��
+	// 鐧诲綍鎴愬姛鏃讹紝璇ヨ处鍙峰搴旂殑鏉冮檺缁勫悎
+	Permission per;
+	LoginRes()
 	{
-		Head head;
-		char user_name[32];
-		int status; // 娉ㄥ唽鐘舵��
-		//娉ㄥ唽鎴愬姛锛岄粯璁ゆ渶灏忔潈闄愮粍鍚�
-		Permission per;
-		RegisterRes()
-		{
-			head.type = REGISTER_RES;
-			head.len = sizeof(RegisterRes);
-		};
-	};
+		head.type = LOGIN_RES;
+		head.len = sizeof(LoginRes);
+	}
+};
 
-	//閲嶇疆瀵嗙爜璇锋眰 
-	struct ResetReq
+//娉ㄥ唽璇锋眰 
+struct RegisterReq
+{
+	Head head;
+	char userName[32];
+	char password[32];
+	char email[50];
+	char capcha[10];//楠岃瘉鐮�
+	char telephone[32];
+	RegisterReq() {
+		head.type = REGISTER_REQ;
+		head.len = sizeof(RegisterReq);
+	}
+};
+
+//娉ㄥ唽鍝嶅簲
+struct RegisterRes
+{
+	Head head;
+	char userName[32];
+	int status; // 娉ㄥ唽鐘舵��
+	RegisterRes()
 	{
-		Head head;
-		char email[50];
-		char password[32];
-		ResetReq(){
-			head.type = RESET_REQ;
-			head.len = sizeof(ResetReq);
-		}
-	};
+		head.type = REGISTER_RES;
+		head.len = sizeof(RegisterRes);
+	}
+};
 
-	//閲嶇疆瀵嗙爜鍝嶅簲
-	struct ResetRes
+//閲嶇疆瀵嗙爜璇锋眰 
+struct ResetReq
+{
+	Head head;
+	char email[50];
+	char capcha[10];//楠岃瘉鐮�
+	char password[32];//鏂板瘑鐮�
+	char confirmPassword[32];//纭瀵嗙爜
+	ResetReq() {
+		head.type = RESET_REQ;
+		head.len = sizeof(ResetReq);
+	}
+};
+
+//閲嶇疆瀵嗙爜鍝嶅簲
+struct ResetRes
+{
+	Head head;
+	char user_name[32];
+	int status; // 閲嶇疆瀵嗙爜鐘舵��
+	ResetRes()
 	{
-		Head head;
-		char user_name[32];
-		int status; // 閲嶇疆瀵嗙爜鐘舵��
-		ResetRes()
-		{
-			head.type = RESET_RES;
-			head.len = sizeof(ResetRes);
-		};
-	};
-
+		head.type = RESET_RES;
+		head.len = sizeof(ResetRes);
+	}
+};
 
 //鏉冮檺绠$悊
 // 鎸夊憳宸ョ紪鍙枫�佸悕瀛楁垨鑱屼綅鏌ヨ浜哄憳鏉冮檺淇℃伅璇锋眰
-typedef struct QueryPmsRequest{
-    Head head;
-    char userNo[32];
-    char name[32];
-    char permissonType[32];
-    QueryPmsRequest(){
-        head.type=QUERY_PMS_REQ;
-        memset(userNo,0,32);
-        memset(permissonType,0,32);
-        memset(name,0,32);
-        head.len = sizeof(QueryPmsRequest);
-    }
-} QueryPmsRequest;
+typedef struct QueryPmsReq {
+	Head head;
+	char userNo[32];
+	char name[32];
+	char permissonType[32];
+	QueryPmsReq() {
+		head.type = QUERY_PMS_REQ;
+		memset(userNo, 0, 32);
+		memset(permissonType, 0, 32);
+		memset(name, 0, 32);
+		head.len = sizeof(QueryPmsReq);
+	}
+} QueryPmsReq;
 
 // 鎸夎鑹瞚d鏇存柊鏉冮檺淇℃伅璇锋眰
-typedef struct UpdatePmsRequest{
-    Head head;
-    int roleId;
-    int queryHistory;
-    int loggerSearch;
-    int mapMark;
-    int devManage;
-    int productPlan;
-    UpdatePmsRequest(){
-        head.type=QUERY_PMS_RES;
-        head.len = sizeof(UpdatePmsRequest);
-    }
-} UpdatePmsRequest;
+typedef struct UpdatePmsReq {
+	Head head;
+	// 浜哄憳琛ㄤ富閿甶d
+	int id;
+	int queryHistory;
+	int loggerSearch;
+	int mapMark;
+	int devManage;
+	int productPlan;
+	int warningManage;
+	int versionManage; //鐗堟湰绠$悊
+	int admin; //绯荤粺绠$悊鍛�
+	UpdatePmsReq() {
+		head.type = QUERY_PMS_RES;
+		head.len = sizeof(UpdatePmsReq);
+	}
+} UpdatePmsReq;
 
-// 鍗曚釜浜哄憳鏉冮檺缁撴瀯浣�
-typedef struct PmsRes{
-    int queryHistory;
-    int loggerSearch;
-    int mapMark;
-    int devManage;
-    int productPlan;
-    int roleId;
-    char userNo[32];
-    char name[32];
-    char permissonType[32];
-    char startDateTime[32];
-    char endDateTime[32];
+// 鍗曚釜浜哄憳鍜屾潈闄愯仈鍚堟煡璇㈢粨鏋勪綋
+typedef struct PmsRes {
+	int queryHistory;
+	int loggerSearch;
+	int mapMark;
+	int devManage;
+	int productPlan;
+	int id;
+
+	char userNo[32];
+	char name[32];
+
+	char permissonType[32];  // 瑙掕壊绫诲瀷
+	int versionManage; //鐗堟湰绠$悊
+	int admin; //绯荤粺绠$悊鍛�
+	char department[32];
+	char loginTime[32];
+	char registerTime[32];
 } PmsRes;
 
 // 鏌ヨ浜哄憳鍜岃鑹蹭俊鎭殑鍝嶅簲缁撴瀯浣�
-typedef struct QueryPmsResponse{
-    Head head;
-    int success; // 1涓烘垚鍔� ,0涓哄け璐�
-    char pmsList[0];
-    QueryPmsResponse(){
-        head.type=QUERY_PMS_RES;
-    }
-} QueryPmsResponse;
+typedef struct QueryPmsRes {
+	Head head;
+	int success; // 1涓烘垚鍔� ,0涓哄け璐�
+	PmsRes pmsList[0];
+	QueryPmsRes() {
+		head.type = QUERY_PMS_REQ;
+	}
+} QueryPmsRes;
 
 // 鏉冮檺鏇存柊缁撴灉鍝嶅簲浣�
-struct UpdatePmsResponse{
-    Head head;
-    int success; // 1涓烘垚鍔� ,0涓哄け璐�
-    UpdatePmsResponse(){
-        head.type = UPDATE_PMS_RES;
-        head.len = sizeof(UpdatePmsResponse);
-    }
+struct UpdatePmsRes {
+	Head head;
+	int success; // 1涓烘垚鍔� ,0涓哄け璐�
+	UpdatePmsRes() {
+		head.type = UPDATE_PMS_RES;
+		head.len = sizeof(UpdatePmsRes);
+	}
 
-} UpdatePmsResponse ;
+} UpdatePmsRes;
+
+
 
 
 //璁惧绠$悊
+struct DevicesInfo
+{
+	int deviceID;
+	char deviceName[32];//璁惧鍚嶇О
+	char deviceStatus[32];//璁惧鐘舵��
+	char manufacturer[100];//鍘傚
+	char devicesType[32];//璁惧绫诲瀷
+	double longitude;//缁忓害
+	double latitude;//绾害
+	char purchasingTime[15];//璐拱鏃堕棿
+	char installTime[15];//瀹夎鏃堕棿
+	char devicesSerialNumber[32];//璁惧缂栫爜
+};
 //娣诲姞璁惧
-struct ADReq
+struct ADReq//娣诲姞璇锋眰
 {
 	Head head;
-	char Device_Name[32];
+	char deviceName[32];
 	ADReq() {
-		head.type = AD_Req;
-		head.len = sizeof(AD_Req);
+		head.type = AD_REQ;
+		head.len = sizeof(ADReq);
 	}
 
 };
-struct ADPermission
-{
-	char Device_Name[32];
-	char Device_Status[32];
-	char Manufacturer[100];
-	char Devices_Type[32];
-	double Longitude;
-	double Latitude;
-};
-struct ADRes
+
+struct ADRes//娣诲姞鍝嶅簲
 {
 	Head head;
-	char Device_Name[32];
-	char Device_Status[32];
-	char Start_Time[32];
-	char Work_Time[32];
-	char Manufacturer[100];
-	char Devices_Type[32];
-	double Longitude;
-	double Latitude;
-	ADPermission per;
+	int type;
 	ADRes() {
-		head.type = AD_Res;
+		head.type = AD_RES;
 		head.len = sizeof(ADRes);
 	}
 
 };
-
-//鍏抽棴璁惧
-struct CDReq
+//淇敼璁惧
+struct MDRes//淇敼璇锋眰
 {
 	Head head;
-	char Device_Name[32];
-	CDReq() {
-		head.type = CD_Req;
-		head.len = sizeof(CDReq);
+	DevicesInfo info;
+	MDRes() {
+		head.type = MD_RES;
+		head.len = sizeof(MDRes);
 	}
 };
-struct CDPermission
-{
-	char Device_Name[32];
-	char Device_Status[32];
-	char Start_Time[32];
-	char Work_Time[32];
-	char Manufacturer[100];
-	char Devices_Type[32];
-	double Longitude;
-	double Latitude;
-};
-struct CDRes
+struct MDReq//淇敼鍝嶅簲
 {
 	Head head;
-	char Device_Status[32];
-	int status;
-	CDPermission per;
-	CDRes() {
-		head.type = CD_Res;
-		head.len = sizeof(CDRes);
+	int type;
+	MDReq() {
+		head.type = MD_REQ;
+		head.len = sizeof(MDReq);
 	}
 };
-
-//鏆傚仠璁惧
-struct PDReq
+//鏌ヨ璁惧
+struct QDReq//鏌ヨ璇锋眰
 {
 	Head head;
-	char Device_Name[32];
-	PDReq() {
-		head.type = PD_Req;
-		head.len = sizeof(PDReq);
+	DevicesInfo info;
+	QDReq() {
+		head.type = QD_REQ;
+		head.len = sizeof(QDReq);
 	}
 };
-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];
-	double Longitude;
-	double Latitude;
-};
-struct PDRes
+struct QDRes//鏌ヨ鍝嶅簲
 {
 	Head head;
-	char Device_Status[32];
-	char Work_Time[32];
-	int status;
-	PDPermission per;
-	PDRes() {
-		head.type = PD_Res;
-		head.len = sizeof(PDRes);
+	int type;
+	QDRes() {
+		head.type = QD_RES;
+		head.len = sizeof(QDRes);
 	}
 };
 
 
 //鍦板浘鏍囨敞
-struct MapMarkReq
-{
-	Head head;
-	int marktype;//鎻掑叆銆佸垹闄ゃ�佸姞杞�
-	MaskInfo msg[0];//鏌旀�ф暟缁�
-	MapMarkReq(){
-		head.type = MAPMARK_REQ;
-		head.len = sizeof(MapMarkReq);
-	}
-};
-	
-//鍦板浘鍝嶅簲锛�
 struct MarkInfo
 {
 	int markId;//鏍囨敞鐐筰d
@@ -385,242 +359,453 @@
 	int deviceStatus;//璁惧鐘舵��
 	char deviceName[32];//璁惧鍚嶇О
 };
-	
-struct MapMarkRes
+//鍦板浘鏍囨敞鍔犺浇璇锋眰
+struct MMLReq//鍦板浘
 {
 	Head head;
-	int markType;//鎻掑叆杩樻槸鍒犻櫎
-	int status; // 鎿嶄綔鐘舵�乢鎴愬姛/澶辫触
-	MaskInfo info[0];//鏌旀�ф暟缁�
-	MapMarkRes()
-	{
-		head.type = MAPMARK_RES;
-		head.len = sizeof(MapMarkRes);
-	};
+	MMLReq() {
+		head.type = MML_REQ;
+		head.len = sizeof(MMLReq);
+	}
+};
+//鍦板浘鏍囨敞鍔犺浇鍝嶅簲锛�
+struct MMLRes
+{
+	Head head;
+	int status;//鎿嶄綔鐘舵��
+	MarkInfo info[0];
+	MMLRes() {
+		head.type = MML_RES;
+		head.len = sizeof(MMLRes);
+	}
+};
+//鍦板浘鏍囨敞鎻掑叆璇锋眰
+struct MMIReq//鍦板浘
+{
+	Head head;
+	MarkInfo info[0];
+	MMIReq() {
+		head.type = MMI_REQ;
+		head.len = sizeof(MMIReq);
+	}
+};
+//鍦板浘鏍囨敞鎻掑叆鍝嶅簲锛�
+struct MMIRes
+{
+	Head head;
+	int status;//鎿嶄綔鐘舵��
+	MarkInfo info[0];
+	MMIRes() {
+		head.type = MMI_RES;
+		head.len = sizeof(MMIRes);
+	}
+};
+
+//鍦板浘鏍囨敞鍒犻櫎璇锋眰
+struct MMDReq//鍦板浘
+{
+	Head head;
+	MarkInfo info[0];
+	MMDReq() {
+		head.type = MMD_REQ;
+		head.len = sizeof(MMDReq);
+	}
+};
+//鍦板浘鏍囨敞鍒犻櫎鍝嶅簲锛�
+struct MMDRes
+{
+	Head head;
+	int status;//鎿嶄綔鐘舵��
+	MarkInfo info[0];
+	MMDRes() {
+		head.type = MMD_RES;
+		head.len = sizeof(MMDRes);
+	}
 };
 
 //澶у睆鏄剧ず
 //鐜鏁版嵁璇锋眰
 struct EnvironmentReq
 {
-    Head head;
-    float temp;//娓╁害
-    float humidity;//婀垮害
-    float oxygen;//姘ф皵娴撳害
-    float carbon;//涓�姘у寲纰虫祿搴�
-        EnvironmentReq(){
-        head.type = ENVIRONMENT_REQ;
-        head.len = sizeof(EnvironmentReq);
-    }
+	Head head;
+	EnvironmentReq() {
+		head.type = ENVIRONMENT_REQ;
+		head.len = sizeof(EnvironmentReq);
+	}
+};
+//鐜鏁版嵁鍝嶅簲
+struct Environment
+{
+	float temp;//娓╁害
+	float humidity;//婀垮害
+	float oxygen;//姘ф皵娴撳害
+	float carbon;//涓�姘у寲纰虫祿搴�
+};
+struct EnvironmentRes
+{
+	Head head;
+	int status;
+	Environment environment[0];
+	EnvironmentRes() {
+		head.type = ENVIRONMENT_RES;
+		head.len = sizeof(EnvironmentRes);
+	}
 };
 //璁惧鐘舵�佽姹�
 struct DeviceStatusReq
 {
-    Head head;
-    int device_ID;//璁惧缂栧彿
-    char device_Name[32];//璁惧鍚嶇О
-    char device_Status[32];//璁惧鐘舵��
-        DeviceStatusReq(){
-        head.type = DEVICESTATUS_REQ;
-        head.len = sizeof(DeviceStatusReq);
-    }
+	Head head;
+	DeviceStatusReq() {
+		head.type = DEVICESTATUS_REQ;
+		head.len = sizeof(DeviceStatusReq);
+	}
+};
+//璁惧鐘舵�佸搷搴�
+struct DeviceStatus
+{
+	int deviceID;//璁惧缂栧彿
+	char deviceName[32];//璁惧鍚嶇О
+	char deviceStatus[32];//璁惧鐘舵��
+};
+struct DeviceStatusRes
+{
+	Head head;
+	int status;
+	DeviceStatus deviceStatus[0];
+	DeviceStatusRes() {
+		head.type = DEVICESTATUS_RES;
+		head.len = sizeof(DeviceStatusRes);
+	}
 };
 //鎿嶄綔鏃ュ織璇锋眰
 struct MovementRecordReq
 {
-    Head head;
-    char user_Name;//鎿嶄綔鐢ㄦ埛鍚�
-    char operate_Time[32];//鎿嶄綔鏃堕棿
-    char device_Name[32];//鎿嶄綔璁惧
-    char movement[256];//鎿嶄綔鎻忚堪
-        MovementRecordReq(){
-        head.type = MOVEMENTRECORD_REQ;
-        head.len = sizeof(MovementRecordReq);
-    }
+	Head head;
+	MovementRecordReq() {
+		head.type = MOVEMENTRECORD_REQ;
+		head.len = sizeof(MovementRecordReq);
+	}
+};
+//鎿嶄綔鏃ュ織鍝嶅簲
+struct MovementRecord
+{
+	char userName;//鎿嶄綔鐢ㄦ埛鍚�
+	char operateTime[32];//鎿嶄綔鏃堕棿
+	char deviceName[32];//鎿嶄綔璁惧
+	char movement[256];//鎿嶄綔鎻忚堪
+};
+struct MovementRecordRes
+{
+	Head head;
+	int status;
+	MovementRecord movementRecord[0];
+	MovementRecordRes() {
+		head.type = MOVEMENTRECORD_RES;
+		head.len = sizeof(MovementRecordRes);
+	}
 };
 //璀︽姤璁板綍璇锋眰
 struct AlarmRecordReq
 {
-    Head head;
-    char alarm_Time[32];//璀︽姤鏃堕棿
-    char alarm_type[32];//瑙e喅鏃堕棿
-    char alarm_Content[256];//璀︽姤鍐呭
-        AlarmRecordReq(){
-        head.type = ALARMRECORD_REQ;
-        head.len = sizeof(AlarmRecordReq);
-    }
+	Head head;
+	AlarmRecordReq() {
+		head.type = ALARMRECORD_REQ;
+		head.len = sizeof(AlarmRecordReq);
+	}
+};
+//璀︽姤璁板綍鍝嶅簲
+struct AlarmRecord
+{
+	char alarmTime[32];//璀︽姤鏃堕棿
+	char alarmtype[32];//閫氱煡鏃堕棿
+	char alarmContent[256];//璀︽姤鍐呭
+};
+struct AlarmRecordRes
+{
+	Head head;
+	int status;
+	AlarmRecord alarmRecord[0];
+	AlarmRecordRes() {
+		head.type = ALARMRECORD_RES;
+		head.len = sizeof(AlarmRecordRes);
+	}
 };
 //鐓ょ熆浜ч噺璇锋眰
 struct YieldReq
 {
-    Head head;
-    int month;//鏈堜唤
-    int yield;//浜ч噺
-        YieldReq(){
-        head.type = YIELD_REQ;
-        head.len = sizeof(YieldReq);
-    }
+	Head head;
+	YieldReq() {
+		head.type = YIELD_REQ;
+		head.len = sizeof(YieldReq);
+	}
+};
+//鐓ょ熆浜ч噺鍝嶅簲
+struct Yield
+{
+	int month;//鏈堜唤
+	int output;//浜ч噺
+};
+struct YieldRes
+{
+	Head head;
+	int status;
+	Yield yield[0];
+	YieldRes() {
+		head.type = YIELD_RES;
+		head.len = sizeof(YieldRes);
+	}
 };
 
 //璀︽姤绠$悊
 // 璀︽姤璇锋眰缁撴瀯浣�  
-struct WarningReq {  
-    Head head;  
-    float oxygen;   // 姘ф皵娴撳害  
-    float carbon;   // 涓�姘у寲纰虫祿搴�  
-    float temp;     // 娓╁害  
-    float humidity; // 婀垮害  
+struct WarningReq {
+	Head head;
 
-    WarningReq() {  
-        head.type = WARNING_REQ;  
-        head.len = sizeof(WarningReq);  
-    }  
-};  
+	float oxygenWarning;
+	float carbonWarning;
+	float tempWarning;
+	float humidityWarning;
+
+	WarningReq() {
+		head.type = WARNING_REQ;
+		head.len = sizeof(WarningReq);
+	}
+};
+
+
+struct DataThreshold {
+	//闃堝��
+	float oxygenThreshold;
+	float carbonThreshold;
+	float tempThreshold;
+	float humidityThreshold;
+};
+
+struct Data {
+	float oxygen;   // 姘ф皵娴撳害  
+	float carbon;   // 涓�姘у寲纰虫祿搴�  
+	float temp;     // 娓╁害  
+	float humidity; // 婀垮害 
+};
 
 // 璀︽姤鍝嶅簲缁撴瀯浣�  
-struct WarningRes {  
-    Head head;  
-    int status;         // 鍝嶅簲鐘舵�侊紙姣斿 0 琛ㄧず鎴愬姛锛�1 琛ㄧず澶辫触绛夛級  
-    const char* message; // 鍝嶅簲娑堟伅鎻忚堪  
+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;  
-    }  
-}; 
+	WarningRes(int stat, const char* msg) {
+		head.type = WARNING_RES;
+		head.len = sizeof(WarningRes);
+		status = stat;
+		message = msg;
+	}
+};
 
 //鐢熶骇璁″垝绠$悊
-//娣诲姞涓�琛屾暟鎹殑璇锋眰缁撴瀯浣�
-struct AddProductionPlanReq {
-	Head head;
-	int type;
-	char productionDate[32];
-	int productionQuantity;
-	int plannedProductionQuantity;
-	int predictedProductionQuantity;
-	char logText[256];
-	AddProductionPlanReq() {
-		head.type = ADD_PRODUCTION_PLAN_REQ;
-		head.len = sizeof(AddProductionPlanReq);
-	}
+struct PdplanInfo
+{
+	int id;//鐢熶骇璁″垝缂栧彿
+	char planName[32];//鐢熶骇璁″垝鍚嶅瓧
+	char startDate[32];//璧峰鏃ユ湡
+	char closingDate[32];//鎴嚦鏃ユ湡
+	double plannedPd;//璁″垝鐢熶骇閲�
+	double actualPd;//瀹為檯鐢熶骇閲�
+	double progress;//鐢熶骇杩涘害
+	int finishOntime;//鏄惁鎸夋湡瀹屾垚
 };
-//娣诲姞涓�琛屾暟鎹殑鍝嶅簲缁撴瀯浣�
-struct AddProductionPlanRes {
+
+struct MonoutputInfo
+{
+	int month;//鏈堜唤
+	double output;//鏈堜骇閲�
+};
+
+//娣诲姞涓�鏉$敓浜ц鍒掔殑璇锋眰缁撴瀯浣�
+struct AddPdplanReq
+{
 	Head head;
-	int type;
-	int status; // 鍙互琛ㄧず娣诲姞鏄惁鎴愬姛锛� 0 琛ㄧず澶辫触锛�1 琛ㄧず鎴愬姛
-	AddProductionPlanRes() {
-		head.type = ADD_PRODUCTION_PLAN_RES;
-		head.len = sizeof(AddProductionPlanRes);
+	PdplanInfo info[0];
+	AddPdplanReq() {
+		head.type = ADD_PDPLAN_REQ;
+		head.len = sizeof(AddPdplanReq);
 	}
 };
 
-// 鏇存柊鐢熶骇璁″垝锛堣鍒掔敓浜ч噺锛夌殑璇锋眰缁撴瀯浣�
-struct UpdateProductionPlanQuantityReq {
+//娣诲姞涓�鏉$敓浜ц鍒掔殑鍝嶅簲缁撴瀯浣�
+struct AddPdplanRes
+{
 	Head head;
-	int type;
-	int plannedProductionQuantity;
-	char productionDate[32];
-	UpdateProductionPlanQuantityReq() {
-		head.type = UPDATE_PRODUCTION_PLAN_QUANTITY_REQ;
-		head.len = sizeof(UpdateProductionPlanQuantityReq);
+	int status;//琛ㄧず鏄惁娣诲姞鎴愬姛锛�0鍚�1鏄�
+	AddPdplanRes() {
+		head.type = ADD_PDPLAN_RES;
+		head.len = sizeof(AddPdplanRes);
 	}
 };
-// 鏇存柊鐢熶骇璁″垝锛堣鍒掔敓浜ч噺锛夌殑鍝嶅簲缁撴瀯浣�
-struct UpdateProductionPlanQuantityRes {
+
+//鍒犻櫎涓�鏉$敓浜ц鍒掔殑璇锋眰缁撴瀯浣�
+struct DelPdplanReq
+{
 	Head head;
-	int type;
-	int status; // 鍙互琛ㄧず鏇存柊鏄惁鎴愬姛锛屼緥濡� 0 琛ㄧず澶辫触锛�1 琛ㄧず鎴愬姛
-	UpdateProductionPlanQuantityRes() {
-		head.type = UPDATE_PRODUCTION_PLAN_QUANTITY_RES;
-		head.len = sizeof(UpdateProductionPlanQuantityRes);
+	PdplanInfo info[0];
+	DelPdplanReq() {
+		head.type = DEL_PDPLAN_REQ;
+		head.len = sizeof(DelPdplanReq);
+	}
+};
+
+//鍒犻櫎涓�鏉$敓浜ц鍒掔殑鍝嶅簲缁撴瀯浣�
+struct DelPdplanRes
+{
+	Head head;
+	int status;//琛ㄧず鏄惁鍒犻櫎鎴愬姛锛�0鍚�1鏄�
+	DelPdplanRes() {
+		head.type = DEL_PDPLAN_RES;
+		head.len = sizeof(DelPdplanRes);
+	}
+};
+
+//鏇存敼涓�鏉$敓浜ц鍒掔殑璇锋眰缁撴瀯浣�.
+struct UpdatePdplanReq
+{
+	Head head;
+	PdplanInfo info[0];
+	UpdatePdplanReq() {
+		head.type = UPDATE_PDPLAN_REQ;
+		head.len = sizeof(UpdatePdplanReq);
+	}
+};
+
+//鏇存敼涓�鏉$敓浜ц鍒掔殑鍝嶅簲缁撴瀯浣�
+struct UpdatePdplanRes
+{
+	Head head;
+	int status;//琛ㄧず鏄惁鏇存柊鎴愬姛锛�0鍚�1鏄�
+	PdplanInfo info[0];
+	UpdatePdplanRes() {
+		head.type = UPDATE_PDPLAN_RES;
+		head.len = sizeof(UpdatePdplanRes);
+	}
+};
+
+//鏌ヨ涓�鏉$敓浜ц鍒掔殑璇锋眰缁撴瀯浣�
+struct QueryPdplanReq
+{
+	Head head;
+	int id;//鐢熶骇璁″垝缂栧彿
+	char planName[32];//鐢熶骇璁″垝鍚嶅瓧
+	char startDate[32];//璧峰鏃ユ湡
+	char closingDate[32];//鎴嚦鏃ユ湡
+	double plannedPd;//璁″垝鐢熶骇閲�
+	double actualPd;//瀹為檯鐢熶骇閲�
+	int finishOntime;//鏄惁鎸夋湡瀹屾垚
+	QueryPdplanReq() {
+		head.type = QUERY_PDPLAN_REQ;
+		head.len = sizeof(QueryPdplanReq);
+	}
+};
+
+//鏌ヨ涓�鏉$敓浜ц鍒掔殑鍝嶅簲缁撴瀯浣�
+struct QueryPdplanRes
+{
+	Head head;
+	int status;//琛ㄧず鏄惁娣诲姞鎴愬姛锛�0鍚�1鏄�
+	PdplanInfo info[0];
+	QueryPdplanRes() {
+		head.type = QUERY_PDPLAN_RES;
+		head.len = sizeof(QueryPdplanRes);
 	}
 };
 
 
-// 鏇存柊鐢熶骇璁″垝锛堟棩蹇楋級鐨勮姹傜粨鏋勪綋
-struct UpdateProductionPlanLogReq {
+//娣诲姞鏈堜骇閲忕殑璇锋眰缁撴瀯浣�
+struct AddMonoutputReq
+{
 	Head head;
-	int type;
-	char logText[256];
-	char productionDate[32];
-	UpdateProductionPlanLogReq() {
-		head.type = UPDATE_PRODUCTION_PLAN_LOG_REQ;
-		head.len = sizeof(UpdateProductionPlanLogReq);
-	}
-};
-// 鏇存柊鐢熶骇璁″垝璇锋眰锛堟棩蹇楋級鐨勫搷搴旂粨鏋勪綋
-struct UpdateProductionPlanLogRes {
-	Head head;
-	int type;
-	int status; // 鍙互琛ㄧず鏇存柊鏄惁鎴愬姛锛屼緥濡� 0 琛ㄧず澶辫触锛�1 琛ㄧず鎴愬姛
-	UpdateProductionPlanLogRes() {
-		head.type = UPDATE_PRODUCTION_PLAN_LOG_RES;
-		head.len = sizeof(UpdateProductionPlanLogRes);
+	MonoutputInfo info[0];
+	AddMonoutputReq() {
+		head.type = ADD_MONOUTPUT_REQ;
+		head.len = sizeof(AddMonoutputReq);
 	}
 };
 
-
-
-// 鏌ヨ鐢熶骇璁″垝淇℃伅璇锋眰
-struct ProductionPlanReq {
+//娣诲姞鏈堜骇閲忕殑鍝嶅簲缁撴瀯浣�
+struct AddMonoutputRes
+{
 	Head head;
-	int type;
-	int len;
-	char productionDate[32];
-	int productionQuantity;
-	int plannedProductionQuantity;
-	int predictedProductionQuantity;
-	char logText[256];
-	ProductionPlanReq() {
-		head.type = PRODUCTION_PLAN_REQ;
-		head.len = sizeof(ProductionPlanReq);
-	}
-};
-// 鏌ヨ鐢熶骇璁″垝淇℃伅鐨勫搷搴旂粨鏋勪綋
-struct ProductionPlanRes {
-	Head head;
-	int type;
-	int len;
-	int productionQuantity;
-	int plannedProductionQuantity;
-	int predictedProductionQuantity;
-	int roleId;
-	char productionDate[32];
-	char logText[256];
-	ProductionPlanRes() {
-		head.type = PRODUCTION_PLAN_REQ;
-		head.len = sizeof(ProductionPlanRes);
+	int status;//琛ㄧず鏄惁娣诲姞鎴愬姛锛�0鍚�1鏄�
+	AddMonoutputRes() {
+		head.type = ADD_MONOUTPUT_RES;
+		head.len = sizeof(AddMonoutputRes);
 	}
 };
 
-
-
-//鏌ヨ杩戝崄鍥涙潯鐨勮姹傜粨鏋勪綋
-struct RecentFourteenProductionPlansReq {
+//鍒犻櫎鏈堜骇閲忕殑璇锋眰缁撴瀯浣�
+struct DelMonoutputReq
+{
 	Head head;
-	int requestType;
-	RecentFourteenProductionPlansReq() {
-		head.type = RECENTFOURTEENPRODUCTIONPLANS_REQ;
-		head.len = sizeof(RecentFourteenProductionPlansReq);
+	MonoutputInfo info[0];
+	DelMonoutputReq() {
+		head.type = DEL_MONOUTPUT_REQ;
+		head.len = sizeof(DelMonoutputReq);
 	}
 };
-//鏌ヨ杩戝崄鍥涙潯鐨勫搷搴旂粨鏋勪綋
-struct RecentFourteenProductionPlansRes {
+
+//鍒犻櫎鏈堜骇閲忕殑鍝嶅簲缁撴瀯浣�
+struct DelMonoutputRes
+{
 	Head head;
-	int responseType;
-	int responseLength;
-	int productionQuantities[14];
-	int plannedProductionQuantities[14];
-	int predictedProductionQuantities[14];
-	int roleIds[14];
-	char productionDates[14][32];
-	char logTexts[14][256];
-	RecentFourteenProductionPlansRes() {
-		head.type = UPDATE_PRODUCTION_PLAN_QUANTITY_REQ;
-		head.len = sizeof(RecentFourteenProductionPlansRes);
+	int status;//琛ㄧず鏄惁鍒犻櫎鎴愬姛锛�0鍚�1鏄�
+	DelMonoutputRes() {
+		head.type = DEL_MONOUTPUT_RES;
+		head.len = sizeof(DelMonoutputRes);
+	}
+};
+
+//鏇存敼鏈堜骇閲忕殑璇锋眰缁撴瀯浣�.
+struct UpdateMonoutputReq
+{
+	Head head;
+	MonoutputInfo info[0];
+	UpdateMonoutputReq() {
+		head.type = UPDATE_MONOUTPUT_REQ;
+		head.len = sizeof(UpdateMonoutputReq);
+	}
+};
+
+//鏇存敼鏈堜骇閲忕殑鍝嶅簲缁撴瀯浣�
+struct UpdateMonoutputRes
+{
+	Head head;
+	int status;//琛ㄧず鏄惁鏇存柊鎴愬姛锛�0鍚�1鏄�
+	MonoutputInfo info[0];
+	UpdateMonoutputRes() {
+		head.type = UPDATE_MONOUTPUT_RES;
+		head.len = sizeof(UpdateMonoutputRes);
+	}
+};
+
+//鏌ヨ鏈堜骇閲忕殑璇锋眰缁撴瀯浣�
+struct QueryMonoutputReq
+{
+	Head head;
+	int month;//鏈堜唤
+	double output;//鏈堜骇閲�
+	QueryMonoutputReq() {
+		head.type = QUERY_MONOUTPUT_REQ;
+		head.len = sizeof(QueryMonoutputReq);
+	}
+};
+
+//鏌ヨ鏈堜骇閲忕殑鍝嶅簲缁撴瀯浣�
+struct QueryMonoutputRes
+{
+	Head head;
+	int status;//琛ㄧず鏄惁娣诲姞鎴愬姛锛�0鍚�1鏄�
+	MonoutputInfo info[0];
+	QueryMonoutputRes() {
+		head.type = QUERY_MONOUTPUT_RES;
+		head.len = sizeof(QueryMonoutputRes);
 	}
 };
 
@@ -629,65 +814,48 @@
 //鍘嗗彶鏌ヨ鍒嗘瀽
 // 鍘嗗彶鏌ヨ璇锋眰缁撴瀯浣�
 struct HistoryQueryReq {
-    Head head;
-    //鏍规嵁鏃堕棿鑼冨洿鏌ヨ
-    char start_time[32];
-    char end_time[32];
+	Head head;
+	//鏍规嵁鏃堕棿鑼冨洿鏌ヨ
+	char startTime[32];
+	char endTime[32];
+	//鍏抽敭瀛楁煡璇�
+	char keyWord[32];
+	HistoryQueryReq() {
+		// 鍒濆鍖栨暟鎹ご
+		head.type = QUERY_MONOUTPUT_REQ;
+		head.len = sizeof(HistoryQueryReq);
+		// 鍒濆鍖栨煡璇㈡潯浠跺瓧娈�
+		std::memset(startTime, 0, sizeof(startTime));
+		std::memset(endTime, 0, sizeof(endTime));
 
-    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;  // 瀵瑰簲绯荤粺杩愯鐘舵�佽〃鐨勮褰曠紪鍙�
-        char sysDataCollectionTime[50];  // 鏁版嵁閲囬泦鏃堕棿
-        char sysDeviceType[50];  // 璁惧绫诲瀷
-        char sysDeviceId[50];  // 璁惧缂栧彿
-        char sysDeviceStatus[50];  // 璁惧鐘舵��
-        char sysSystemStatus[50];  // 绯荤粺鏁翠綋杩愯鐘舵�佹弿杩�
-
-        int devId;  // 瀵瑰簲璁惧璇︾粏淇℃伅琛ㄧ殑璁板綍缂栧彿
-        char devDeviceType[50];  // 璁惧绫诲瀷锛堜笌绯荤粺杩愯鐘舵�佽〃涓殑璁惧绫诲瀷瀵瑰簲锛屽彲鐢ㄤ簬鍏宠仈锛�
-        char devDeviceId[50];  // 璁惧缂栧彿锛堜笌绯荤粺杩愯鐘舵�佽〃涓殑璁惧缂栧彿瀵瑰簲锛屽彲鐢ㄤ簬鍏宠仈锛�
-        char devModel[50];  // 璁惧鍨嬪彿
-        char runDeviceStatus[50];  // 璁惧鐘舵��
-        char runFaultAlarmTime[50];  // 鏁呴殰鎶ヨ鏃堕棿
-        char runFaultDescription[50];  // 鏁呴殰璇︾粏鎻忚堪
-
-        int safetyId;  // 瀵瑰簲璁惧瀹夊叏鐘舵�佽〃鐨勮褰曠紪鍙�
-        char safetyDataCollectionTime[50];  // 鏁版嵁閲囬泦鏃堕棿锛堝彲鐢ㄤ簬鍏宠仈涓嶅悓琛ㄥ湪鍚屼竴鏃堕棿鐐圭殑鏁版嵁鎯呭喌锛�
-        char safetyDeviceType[50];  // 璁惧绫诲瀷锛堢敤浜庡叧鑱旓級
-        char safetyDeviceId[50];  // 璁惧缂栧彿锛堢敤浜庡叧鑱旓級
-        char safetyStatus[50];  // 璁惧瀹夊叏鐘舵��
-        char safetyParameter[50];  // 瀹夊叏鍙傛暟
+struct HistroyInfo {
+	WarningRes warn;//璀︽姤鏌ヨ
+	QDRes dev;//璁惧鏌ヨ
+	QueryPdplanRes  pro;//鐢熶骇璁″垝鏌ヨ
 };
-// 鍘嗗彶鏌ヨ鍝嶅簲缁撴瀯浣�
-// 瀹夊叏鐘舵�佽〃鐩稿叧淇℃伅
 struct HistoryQueryRes {
-    Head head;
-	Histroy_Info sys[0];
-
-    HistoryQueryRes() {
-        // 鍒濆鍖栨暟鎹ご
-        head.type = HISTORY_QUERY_RES;
-        head.len = sizeof(HistoryQueryRes);
-    }
-    
+	Head head;
+	HistroyInfo sys[0];
+	HistoryQueryRes() {
+		// 鍒濆鍖栨暟鎹ご
+		head.type = QUERY_MONOUTPUT_RES;
+		head.len = sizeof(HistoryQueryRes);
+	}
 };
+
 
 //鑷姩鍗囩骇
 struct VersionNumReq        // 鐗堟湰鍙疯姹�
 {
 	Head head;
 	VersionNumReq() {
-		head.type = VERSIONNUM_REQ;
+		head.type = VERSION_NUM_REQ;
 		head.len = sizeof(VersionNumReq);
 	}
 };
@@ -695,9 +863,9 @@
 struct VersionNumRes        // 鐗堟湰鍙峰搷搴�
 {
 	Head head;
-	char version_id[64]; // 鐗堟湰鍙�
+	char versionId[64]; // 鐗堟湰鍙�
 	VersionNumRes() {
-		head.type = VERSIONNUM_RES;
+		head.type = VERSION_NUM_RES;
 		head.len = sizeof(VersionNumRes);
 	}
 };
@@ -705,9 +873,9 @@
 // 鏂囦欢浼犺緭
 struct FileInfo
 {
-	char file_name[256];
-	long long file_size;
-    char s_filepath[128];
+	char fileName[256];
+	long long fileSize;
+	char s_filepath[128];
 	char content[0];
 };
 
@@ -722,177 +890,154 @@
 };
 
 struct UploadFileRes {      // 涓婁紶鏂囦欢鐨勫搷搴�
-    Head head;
-    bool state = false;
-    char file_name[256];
-    long long file_size;
-    UploadFileRes()
-    {
-        head.type = UPLOAD_FILE_RES;
-        head.len = sizeof(UploadFileRes);
-    }
+	Head head;
+	bool state = false;
+	char fileName[256];
+	long long file_size;
+	UploadFileRes()
+	{
+		head.type = UPLOAD_FILE_RES;
+		head.len = sizeof(UploadFileRes);
+	}
 };
 
 // 鐗堟湰淇℃伅褰曞叆
 // 璇锋眰
 struct VersionInfoEntryReq {
-    Head head;
-    char version_id[64]; // 鐗堟湰鍙�
-    char version_id_old[64]; // 涓婁竴涓増鏈彿
-    char context[0];		//鍖呭惈涓嬭浇鏂囦欢淇℃伅
-    int fileNum;
+	Head head;
+	char versionId[64]; // 鐗堟湰鍙�
+	char versionIdOld[64]; // 涓婁竴涓増鏈彿
+	int fileNum;
+	char context[0];		//鍖呭惈涓嬭浇鏂囦欢淇℃伅
 
-    VersionInfoEntryReq()
-    {
-        head.type = VERSIONINFOENTRY_REQ;
-        head.len = sizeof(VersionInfoEntryReq);
-    }
+	VersionInfoEntryReq()
+	{
+		head.type = VERSION_INFOENTRY_REQ;
+		head.len = sizeof(VersionInfoEntryReq);
+	}
 };
 
 // 鐗堟湰淇℃伅褰曞叆鍝嶅簲
 struct VersionInfoEntryRes {
-    Head head;
-    bool state = false;
-    VersionInfoEntryRes()
-    {
-        head.type = VERSIONINFOENTRY_RES;
-        head.len = sizeof(VersionInfoEntryRes);
-    }
+	Head head;
+	bool state = false;
+	VersionInfoEntryRes()
+	{
+		head.type = VERSION_INFOENTRY_RES;
+		head.len = sizeof(VersionInfoEntryRes);
+	}
 };
 
 // 鐗堟湰鏇存柊璇锋眰
 struct VersionUpdateReq {
-    Head head;
+	Head head;
 
-    char cur_version_id[64]; // 鐗堟湰鍙�
-    VersionUpdateReq()
-    {
-        head.type = VERSIONUPDATE_REQ;
-        head.len = sizeof(VersionUpdateReq);
-    }
+	char curVersionId[64]; // 鐗堟湰鍙�
+	VersionUpdateReq()
+	{
+		head.type = VERSION_UPDATE_REQ;
+		head.len = sizeof(VersionUpdateReq);
+	}
 };
 
 // 鐗堟湰鏇存柊鍝嶅簲
 struct VersionUpdateRes {
-    Head head;
-    bool state = false;
-    char version_id[64]; // 鐗堟湰鍙�
-    char update_date[32]; // 鏇存柊鏃堕棿
-    char version_description[1024]; //鏇存柊鎻忚堪
+	Head head;
+	bool state = false;
+	char versionId[64]; // 鐗堟湰鍙�
+	char updateDate[32]; // 鏇存柊鏃堕棿
+	char versionDescription[1024]; //鏇存柊鎻忚堪
 
-    VersionUpdateRes()
-    {
-        head.type = VERSIONUPDATE_RES;
-        head.len = sizeof(VersionUpdateRes);
-    }
+	VersionUpdateRes()
+	{
+		head.type = VERSION_UPDATE_RES;
+		head.len = sizeof(VersionUpdateRes);
+	}
 };
 
 // 鐗堟湰鏇存柊鏂囦欢涓嬭浇璇锋眰
 struct FileDownloadsReq {
-    Head head;
-    char version_id[64]; // 鐗堟湰鍙�
-    FileDownloadsReq()
-    {
-        head.type = FILEDOWNLOADS_REQ;
-        head.len = sizeof(FileDownloadsReq);
-    }
+	Head head;
+	char versionId[64]; // 鐗堟湰鍙�
+	FileDownloadsReq()
+	{
+		head.type = FILE_DOWNLOADS_REQ;
+		head.len = sizeof(FileDownloadsReq);
+	}
 };
 
 // 鐗堟湰鏇存柊鏂囦欢涓嬭浇鍝嶅簲
 struct FileDownloadsRes {
-    Head head;
-    char version_id[64]; // 鐗堟湰鍙�
-    char filename[128]; //鏂囦欢鍚�
-    long long filesize; //鏂囦欢澶у皬
-    char c_filepath[128];	//瀹㈡埛绔斁鏈�鏂扮増鏈殑鏈湴璺緞
-    int fileNum; // 鏂囦欢鏁伴噺
-    long long all_fileSize; // 鏂囦欢鎬诲ぇ灏�
-    char content[0];
-    FileDownloadsRes()
-    {
-        head.type = FILEDOWNLOADS_RES;
-        head.len = sizeof(FileDownloadsRes);
-    }
+	Head head;
+	char versionId[64]; // 鐗堟湰鍙�
+	char filename[128]; //鏂囦欢鍚�
+	long long filesize; //鏂囦欢澶у皬
+	char c_filepath[128];	//瀹㈡埛绔斁鏈�鏂扮増鏈殑鏈湴璺緞
+	int fileNum; // 鏂囦欢鏁伴噺
+	long long allFileSize; // 鏂囦欢鎬诲ぇ灏�
+	char content[0];
+	FileDownloadsRes()
+	{
+		head.type = FILE_DOWNLOADS_RES;
+		head.len = sizeof(FileDownloadsRes);
+	}
 };
 
 // 鏇存柊鏂囦欢涓嬭浇鎴愬姛鐨勫搷搴�
-struct DownloadSuccessfullyRes{
-    Head head;
-    bool state = false;
-    char file_name[256];
-    long long file_size;
-    DownloadSuccessfullyRes()
-    {
-        head.type = DOWNLOADSUCCESSFULLY_RES;
-        head.len = sizeof(DownloadSuccessfullyRes);
-    }
+struct DownloadSuccessfullyRes {
+	Head head;
+	bool state = false;
+	char fileName[256];
+	long long fileSize;
+	DownloadSuccessfullyRes()
+	{
+		head.type = DOWNLOAD_SUCCESSFULLY_RES;
+		head.len = sizeof(DownloadSuccessfullyRes);
+	}
 };
 
-<<<<<<< HEAD
-//鏃ュ織鏌ヨ
 
-enum Typeinfo{
-	LOGSEARCH_REQ,//鏃ュ織鏌ヨ璇锋眰
-	LOGSEARCH_RES,//鏃ュ織鏌ヨ鍝嶅簲
-
-};
-
-struct Head
-{
-    int type;   // 鍔熻兘绫诲瀷
-    int len;    //灏佸寘闀垮害
-
-};
-// 鏃ュ織鏌ヨ璇锋眰缁撴瀯浣�
-struct LogQueryReq {
-    Head heade;                 // 鏁版嵁澶�
-    char keyWords[0];            // 瀛樺偍澶氫釜鍏抽敭瀛楃殑鏌旀�ф暟缁�
-=======
 //鏃ュ織
-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 ParsedLog {
+	char timeStamp[64]; // 鏃堕棿鎴�
+	char deviceId[64]; // 璁惧ID
+	char level[16];    // 鏃ュ織绾у埆
+	char content[256];  // 鏃ュ織鍐呭
+	char userId[64];    // 鐢ㄦ埛ID
+	char fileName[32];   //鏂囦欢鍚�
+	char functionName[32];  //鍑芥暟鍚�
+	int problemLine;    //浜х敓閿欒琛屽彿
 };
 
 // 鏃ュ織鏌ヨ璇锋眰缁撴瀯浣�
+// 鏃ュ織鏌ヨ璇锋眰缁撴瀯浣�
 struct LogQueryReq {
-    Head head;                 // 鏁版嵁澶�
-    char keyWords[32];            // 瀛樺偍鍏抽敭瀛楃殑鏁扮粍
->>>>>>> bb11cc624ab058fc3a6541f91f37985b8caae9b6
-    // 鏃犲弬鏋勯�犲嚱鏁�
-    LogQueryReq() {
-        head.type = LOGSEARCH_REQ;
-	    head.len = sizeof(LogQueryReq);
-    }
+	Head head;                      // 鏁版嵁澶�
+	char timeStamp[64];             // 鏃堕棿鎴�
+	char content[256];           // 鏃ュ織鍐呭
+	char level[16];                 //鏃ュ織绾у埆
+	char deviceId[64];             // 璁惧ID
+	// 鏃犲弬鏋勯�犲嚱鏁�
+	LogQueryReq() {
+		head.type = LOGSEARCH_REQ;
+		head.len = sizeof(LogQueryReq);
+	}
 };
 
 // 鏃ュ織鏌ヨ鍝嶅簲缁撴瀯浣�
 struct LogQueryRes {
-<<<<<<< HEAD
-    Head heade;  
-=======
-    Head head;  
->>>>>>> bb11cc624ab058fc3a6541f91f37985b8caae9b6
-    int status;                    // 鍝嶅簲鐘舵�� (濡� 0 琛ㄧず鎴愬姛锛岄潪 0 琛ㄧず澶辫触)
-    char errorMessage[256];        // 閿欒淇℃伅锛堝鏋滄湁锛�
-    
-    // 鏃犲弬鏋勯�犲嚱鏁�
-    LogQueryRes() {
-        head.type = LOGSEARCH_RES;
-<<<<<<< HEAD
-	    head.len = sizeof(LogQueryRes);
-=======
+	Head head;
+	int status;                    // 鍝嶅簲鐘舵�� (濡� 0 琛ㄧず鎴愬姛锛岄潪 0 琛ㄧず澶辫触)
+	char errorMessage[256];        // 閿欒淇℃伅锛堝鏋滄湁锛�
+
+	// 鏃犲弬鏋勯�犲嚱鏁�
+	LogQueryRes() {
+		head.type = LOGSEARCH_RES;
 		head.len = sizeof(LogQueryRes);
->>>>>>> bb11cc624ab058fc3a6541f91f37985b8caae9b6
-    }
+	}
 };
 
 
 
 
-#endif // COMMON_H
-
+#endif // COMMON_H
\ No newline at end of file

--
Gitblit v1.8.0