240717班级,工业化控制系统,煤矿相关行业,昆仑系统
1
zhuhang
2024-11-01 87ef42b4f156750f9a80878b7cb15d75b67bf2b1
common.h
@@ -1,7 +1,7 @@
#ifndef COMMON_H
#define COMMON_H
#include  <string.h>
#include <vector>
#include <string.h>
enum TypeInfo{
@@ -13,15 +13,20 @@
   RESET_REQ, //重置密码请求
   RESET_RES, //重置密码响应
    //历史查询分析
    HISTORY_QUERY_REQ, // 历史查询请求
    HISTORY_QUERY_RES, // 历史查询响应
    //权限管理
    QUERY_PMS_REQ,      // 按员工编号、名字或职位查询人员权限信息请求
    UPDATE_PMS_REQ,     // 按角色id更新权限信息请求
    QUERY_PMS_RES,      // 查询人员和角色信息的响应结构体
    UPDATE_PMS_RES,     // 权限更新结果响应体
    //设备管理
    AD_Req,//添加设备请求
   AD_Res,//添加设备响应
   CD_Req,//关闭设备请求
   CD_Res,//关闭设备请求
   PD_Req,//暂停设备请求
   PD_Res,//暂停设备请求
    //地图标注
    MAPMARK_REQ,//地图标注请求
@@ -39,19 +44,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 +82,7 @@
    //日志
    LOGSEARCH_REQ;//日志查询请求
   LOGSEARCH_RES;//日志查询响应
      
};
@@ -75,6 +91,7 @@
    int len;
};
//注册登录
//登录请求 
   struct LoginReq
   {
@@ -170,42 +187,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 +196,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 +219,7 @@
} UpdatePmsRequest;
// 单个人员权限结构体
typedef struct UserAboutPms{
typedef struct PmsRes{
    int queryHistory;
    int loggerSearch;
    int mapMark;
@@ -250,22 +231,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 +254,122 @@
} 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 Manufacturer[100];
   char Devices_Type[32];
   double Longitude;
   double Latitude;
};
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;
   ADRes() {
      head.type = AD_Res;
      head.len = sizeof(ADRes);
   }
};
//关闭设备
struct CDReq
{
   Head head;
   char Device_Name[32];
   CDReq() {
      head.type = CD_Req;
      head.len = sizeof(CDReq);
   }
};
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
{
   Head head;
   char Device_Status[32];
   int status;
   CDPermission per;
   CDRes() {
      head.type = CD_Res;
      head.len = sizeof(CDRes);
   }
};
//暂停设备
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];
   double Longitude;
   double Latitude;
};
struct PDRes
{
   Head head;
   char Device_Status[32];
   char Work_Time[32];
   int status;
   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 +378,18 @@
//地图响应:
struct MarkInfo
{
   int mark_id;//标注点id
   string latitude;//纬度
   string longitude;//经度
   int device_id;//设备ID
   int device_status;//设备状态
   string device_name;//设备名称
   int markId;//标注点id
   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 +399,7 @@
   };
};
//大屏显示
//环境数据请求
struct EnvironmentReq
{
@@ -342,7 +430,7 @@
{
    Head head;
    char user_Name;//操作用户名
    char alarm_Time[32];//操作时间
    char operate_Time[32];//操作时间
    char device_Name[32];//操作设备
    char movement[256];//操作描述
        MovementRecordReq(){
@@ -374,6 +462,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 +502,7 @@
   int predictedProductionQuantity;
   char logText[256];
   AddProductionPlanReq() {
      head.type = ADDPRODUCTIONPLAN_REQ;
      head.type = ADD_PRODUCTION_PLAN_REQ;
      head.len = sizeof(AddProductionPlanReq);
   }
};
@@ -394,7 +512,7 @@
   int type;
   int status; // 可以表示添加是否成功, 0 表示失败,1 表示成功
   AddProductionPlanRes() {
      head.type = ADDPRODUCTIONPLAN_RES;
      head.type = ADD_PRODUCTION_PLAN_RES;
      head.len = sizeof(AddProductionPlanRes);
   }
};
@@ -406,7 +524,7 @@
   int plannedProductionQuantity;
   char productionDate[32];
   UpdateProductionPlanQuantityReq() {
      head.type = UPDATEPRODUCTIONPLANQUANTITY_REQ;
      head.type = UPDATE_PRODUCTION_PLAN_QUANTITY_REQ;
      head.len = sizeof(UpdateProductionPlanQuantityReq);
   }
};
@@ -416,7 +534,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 +547,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 +557,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 +575,7 @@
   int predictedProductionQuantity;
   char logText[256];
   ProductionPlanReq() {
      head.type = PRODUCTIONPLAN_REQ;
      head.type = PRODUCTION_PLAN_REQ;
      head.len = sizeof(ProductionPlanReq);
   }
};
@@ -473,7 +591,7 @@
   char productionDate[32];
   char logText[256];
   ProductionPlanRes() {
      head.type = PRODUCTIONPLAN_REQ;
      head.type = PRODUCTION_PLAN_REQ;
      head.len = sizeof(ProductionPlanRes);
   }
};
@@ -501,13 +619,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;  // 对应系统运行状态表的记录编号
        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 HistoryQueryRes {
    Head head;
   Histroy_Info sys[0];
    HistoryQueryRes() {
        // 初始化数据头
        head.type = HISTORY_QUERY_RES;
        head.len = sizeof(HistoryQueryRes);
    }
};
//自动升级
struct VersionNumReq        // 版本号请求
{
   Head head;
@@ -658,6 +833,7 @@
    }
};
<<<<<<< HEAD
//日志查询
enum Typeinfo{
@@ -676,6 +852,22 @@
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 LogQueryReq {
    Head head;                 // 数据头
    char keyWords[32];            // 存储关键字的数组
>>>>>>> bb11cc624ab058fc3a6541f91f37985b8caae9b6
    // 无参构造函数
    LogQueryReq() {
        head.type = LOGSEARCH_REQ;
@@ -685,14 +877,22 @@
// 日志查询响应结构体
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.len = sizeof(LogQueryRes);
>>>>>>> bb11cc624ab058fc3a6541f91f37985b8caae9b6
    }
};