| | |
| | | |
| | | #include <string.h> |
| | | |
| | | enum TypeInfo{ |
| | | enum TypeInfo { |
| | | |
| | | //注册登录 |
| | | //注册登录 |
| | | LOGIN_REQ, // 登录请求 |
| | | LOGIN_RES, // 登录响应 |
| | | REGISTER_REQ, //注册请求 |
| | |
| | | RESET_RES, //重置密码响应 |
| | | |
| | | |
| | | //权限管理 |
| | | QUERY_PMS_REQ, // 按员工编号、名字或职位查询人员权限信息请求 |
| | | UPDATE_PMS_REQ, // 按角色id更新权限信息请求 |
| | | QUERY_PMS_RES, // 查询人员和角色信息的响应结构体 |
| | | UPDATE_PMS_RES, // 权限更新结果响应体 |
| | | //权限管理 |
| | | QUERY_PMS_REQ, // 按员工编号、名字或职位查询人员权限信息请求 |
| | | UPDATE_PMS_REQ, // 按角色id更新权限信息请求 |
| | | QUERY_PMS_RES, // 查询人员和角色信息的响应结构体 |
| | | UPDATE_PMS_RES, // 权限更新结果响应体 |
| | | |
| | | //设备管理 |
| | | AD_REQ,//添加设备请求 |
| | | //设备管理 |
| | | AD_REQ,//添加设备请求 |
| | | AD_RES,//添加设备响应 |
| | | MD_REQ,//修改设备请求 |
| | | MD_RES,//修改设备响应 |
| | | QD_REQ,//查询设备请求 |
| | | QD_RES,//查询设备响应 |
| | | |
| | | //地图标注 |
| | | MML_REQ,//地图标注加载请求 |
| | | MML_RES//地图标注加载响应 |
| | | //地图标注 |
| | | MML_REQ,//地图标注加载请求 |
| | | MML_RES,//地图标注加载响应 |
| | | MMI_REQ,//地图标注插入请求 |
| | | MMI_RES//地图标注插入响应 |
| | | MMI_RES,//地图标注插入响应 |
| | | MMD_REQ,//地图标注删除请求 |
| | | MMD_RES//地图标注删除响应 |
| | | 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, // 警报响应 |
| | | DATA_REQ, // 数据请求 |
| | | DATA_RES, // 数据响应 |
| | | THRESHOLD_REQ, //阈值请求 |
| | | THRESHOLD_RES, //阈值响应 |
| | | |
| | | |
| | | //生产计划管理 |
| | | ADD_PDPLAN_REQ,//添加一条生产计划的请求结构体 |
| | | //生产计划管理 |
| | | ADD_PDPLAN_REQ,//添加一条生产计划的请求结构体 |
| | | ADD_PDPLAN_RES,//添加一条生产计划的响应结构体 |
| | | DEL_PDPLAN_REQ,//删除一条生产计划的请求结构体 |
| | | DEL_PDPLAN_RES,//删除一条生产计划的响应结构体 |
| | |
| | | QUERY_MONOUTPUT_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 // 更新文件下载成功的响应 |
| | | //自动升级 |
| | | 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;//日志查询响应 |
| | | //日志 |
| | | LOGSEARCH_REQ,//日志查询请求 |
| | | LOGSEARCH_RES,//日志查询响应 |
| | | |
| | | //历史查询分析 |
| | | HISTORY_DEV_REQ, //历史查询硬件请求 |
| | | HISTORY_DEV_RES, //历史查询硬件响应 |
| | | HISTORY_PRODUCE_REQ, //历史查询生产请求 |
| | | HISTORY_PRODUCE_RES, //历史查询生产响应 |
| | | HISTORY_ENV_REQ, //历史查询环境请求 |
| | | HISTORY_ENV_RES, //历史查询环境响应 |
| | | |
| | | |
| | | }; |
| | | |
| | | struct Head{ |
| | | int type; |
| | | int len; |
| | | struct Head { |
| | | int type; |
| | | int len; |
| | | }; |
| | | |
| | | //注册登录 |
| | |
| | | Head head; |
| | | char userName[32]; |
| | | char password[32]; |
| | | LoginReq(){ |
| | | LoginReq() { |
| | | head.type = LOGIN_REQ; |
| | | head.len = sizeof(LoginReq); |
| | | } |
| | | }; |
| | | |
| | | |
| | | struct Permission |
| | | { |
| | | int admin;//超级管理员 |
| | |
| | | int productPlan;//生产计划 |
| | | char roleName[32]; // 角色名 |
| | | }; |
| | | |
| | | |
| | | //登录响应 |
| | | struct LoginRes |
| | | { |
| | |
| | | char email[50]; |
| | | char capcha[10];//验证码 |
| | | char telephone[32]; |
| | | RegisterReq(){ |
| | | RegisterReq() { |
| | | head.type = REGISTER_REQ; |
| | | head.len = sizeof(RegisterReq); |
| | | } |
| | |
| | | char capcha[10];//验证码 |
| | | char password[32];//新密码 |
| | | char confirmPassword[32];//确认密码 |
| | | ResetReq(){ |
| | | ResetReq() { |
| | | head.type = RESET_REQ; |
| | | head.len = sizeof(ResetReq); |
| | | } |
| | |
| | | |
| | | //权限管理 |
| | | // 按员工编号、名字或职位查询人员权限信息请求 |
| | | 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); |
| | | } |
| | | 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; |
| | | |
| | | // 按角色id更新权限信息请求 |
| | | typedef struct UpdatePmsReq{ |
| | | Head head; |
| | | // 人员表主键id |
| | | 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); |
| | | } |
| | | typedef struct UpdatePmsReq { |
| | | Head head; |
| | | // 人员表主键id |
| | | 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 id; |
| | | typedef struct PmsRes { |
| | | int queryHistory; |
| | | int loggerSearch; |
| | | int mapMark; |
| | | int devManage; |
| | | int productPlan; |
| | | int id; |
| | | |
| | | char userNo[32]; |
| | | char name[32]; |
| | | char userNo[32]; |
| | | char name[32]; |
| | | |
| | | char permissonType[32]; // 角色类型 |
| | | int versionManage; //版本管理 |
| | | int admin; //系统管理员 |
| | | char department[32]; |
| | | char loginTime[32]; |
| | | char registerTime[32]; |
| | | char permissonType[32]; // 角色类型 |
| | | int versionManage; //版本管理 |
| | | int admin; //系统管理员 |
| | | char department[32]; |
| | | char loginTime[32]; |
| | | char registerTime[32]; |
| | | } PmsRes; |
| | | |
| | | // 查询人员和角色信息的响应结构体 |
| | | typedef struct QueryPmsRes{ |
| | | Head head; |
| | | int success; // 1为成功 ,0为失败 |
| | | PmsRes pmsList[0]; |
| | | QueryPmsRes(){ |
| | | head.type=QUERY_PMS_REQ; |
| | | } |
| | | typedef struct QueryPmsRes { |
| | | Head head; |
| | | int success; // 1为成功 ,0为失败 |
| | | PmsRes pmsList[0]; |
| | | QueryPmsRes() { |
| | | head.type = QUERY_PMS_REQ; |
| | | } |
| | | } QueryPmsRes; |
| | | |
| | | // 权限更新结果响应体 |
| | | struct UpdatePmsRes{ |
| | | Head head; |
| | | int success; // 1为成功 ,0为失败 |
| | | UpdatePmsRes(){ |
| | | head.type = UPDATE_PMS_RES; |
| | | head.len = sizeof(UpdatePmsRes); |
| | | } |
| | | struct UpdatePmsRes { |
| | | Head head; |
| | | int success; // 1为成功 ,0为失败 |
| | | UpdatePmsRes() { |
| | | head.type = UPDATE_PMS_RES; |
| | | head.len = sizeof(UpdatePmsRes); |
| | | } |
| | | |
| | | } UpdatePmsRes ; |
| | | } UpdatePmsRes; |
| | | |
| | | |
| | | |
| | |
| | | //设备管理 |
| | | struct DevicesInfo |
| | | { |
| | | int deviceID; |
| | | char deviceName[32];//设备名称 |
| | | char deviceStatus[32];//设备状态 |
| | | char area[32]; // 地区 |
| | | double longitude;//经度 |
| | | double latitude;//纬度 |
| | | char purchasingTime[15];//购买时间 |
| | | char installTime[15];//安装时间 |
| | | char manufacturer[100];//厂家 |
| | | char devicesSerialNumber[32];//设备编码 |
| | | char devicesType[32];//设备类型 |
| | | double longitude;//经度 |
| | | double latitude;//纬度 |
| | | char purchasingTime[15];//购买时间 |
| | | char installTime[15];//安装时间 |
| | | char devicesSerialNumber[32];//设备编码 |
| | | }; |
| | | //添加设备 |
| | | struct ADReq//添加请求 |
| | | { |
| | | Head head; |
| | | char deviceName[32]; |
| | | DevicesInfo devInfo[0]; |
| | | ADReq() { |
| | | head.type = AD_REQ; |
| | | head.len = sizeof(ADReq); |
| | |
| | | struct ADRes//添加响应 |
| | | { |
| | | Head head; |
| | | int type; |
| | | int status; |
| | | ADRes() { |
| | | head.type = AD_RES; |
| | | head.len = sizeof(ADRes); |
| | |
| | | |
| | | }; |
| | | //修改设备 |
| | | struct MDRes//修改请求 |
| | | struct MDReq//修改请求 |
| | | { |
| | | Head head; |
| | | DevicesInfo info; |
| | | MDRes() { |
| | | head.type = MD_RES; |
| | | head.len = sizeof(MDRes); |
| | | } |
| | | }; |
| | | struct MDReq//修改响应 |
| | | { |
| | | Head head; |
| | | int type; |
| | | |
| | | MDReq() { |
| | | head.type = MD_REQ; |
| | | head.len = sizeof(MDReq); |
| | | } |
| | | }; |
| | | struct MDRes//修改响应 |
| | | { |
| | | Head head; |
| | | DevicesInfo info; |
| | | int status; |
| | | MDRes() { |
| | | head.type = MD_RES; |
| | | head.len = sizeof(MDRes); |
| | | } |
| | | }; |
| | | //查询设备 |
| | |
| | | struct QDRes//查询响应 |
| | | { |
| | | Head head; |
| | | int type; |
| | | int status; |
| | | DevicesInfo info[0]; |
| | | QDRes() { |
| | | head.type = QD_RES; |
| | | head.len = sizeof(QDRes); |
| | |
| | | struct MMLReq//地图 |
| | | { |
| | | Head head; |
| | | MMLReq(){ |
| | | MMLReq() { |
| | | head.type = MML_REQ; |
| | | head.len = sizeof(MMLReq); |
| | | } |
| | |
| | | Head head; |
| | | int status;//操作状态 |
| | | MarkInfo info[0]; |
| | | MMLRes(){ |
| | | MMLRes() { |
| | | head.type = MML_RES; |
| | | head.len = sizeof(MMLRes); |
| | | } |
| | |
| | | { |
| | | Head head; |
| | | MarkInfo info[0]; |
| | | MMIReq(){ |
| | | MMIReq() { |
| | | head.type = MMI_REQ; |
| | | head.len = sizeof(MMIReq); |
| | | } |
| | |
| | | Head head; |
| | | int status;//操作状态 |
| | | MarkInfo info[0]; |
| | | MMIRes(){ |
| | | MMIRes() { |
| | | head.type = MMI_RES; |
| | | head.len = sizeof(MMIRes); |
| | | } |
| | |
| | | { |
| | | Head head; |
| | | MarkInfo info[0]; |
| | | MMIReq(){ |
| | | MMDReq() { |
| | | head.type = MMD_REQ; |
| | | head.len = sizeof(MMDReq); |
| | | } |
| | |
| | | Head head; |
| | | int status;//操作状态 |
| | | MarkInfo info[0]; |
| | | MMDRes(){ |
| | | MMDRes() { |
| | | head.type = MMD_RES; |
| | | head.len = sizeof(MMDRes); |
| | | } |
| | |
| | | //环境数据请求 |
| | | struct EnvironmentReq |
| | | { |
| | | Head head; |
| | | 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;//一氧化碳浓度 |
| | | double longitude;//经度 |
| | | double latitude;//纬度 |
| | | 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); |
| | | } |
| | | Head head; |
| | | int status; |
| | | Environment environment[0]; |
| | | EnvironmentRes() { |
| | | head.type = ENVIRONMENT_RES; |
| | | head.len = sizeof(EnvironmentRes); |
| | | } |
| | | }; |
| | | //设备状态请求 |
| | | struct DeviceStatusReq |
| | | { |
| | | Head head; |
| | | 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];//设备状态 |
| | | double longitude;//经度 |
| | | double latitude;//纬度 |
| | | 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); |
| | | } |
| | | Head head; |
| | | int status; |
| | | DeviceStatus deviceStatus[0]; |
| | | DeviceStatusRes() { |
| | | head.type = DEVICESTATUS_RES; |
| | | head.len = sizeof(DeviceStatusRes); |
| | | } |
| | | }; |
| | | //操作日志请求 |
| | | struct MovementRecordReq |
| | | { |
| | | Head head; |
| | | 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];//操作描述 |
| | | double longitude;//经度 |
| | | double latitude;//纬度 |
| | | 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); |
| | | } |
| | | Head head; |
| | | int status; |
| | | MovementRecord movementRecord[0]; |
| | | MovementRecordRes() { |
| | | head.type = MOVEMENTRECORD_RES; |
| | | head.len = sizeof(MovementRecordRes); |
| | | } |
| | | }; |
| | | //警报记录请求 |
| | | struct AlarmRecordReq |
| | | { |
| | | Head head; |
| | | 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];//警报内容 |
| | | double longitude;//经度 |
| | | double latitude;//纬度 |
| | | 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); |
| | | } |
| | | Head head; |
| | | int status; |
| | | AlarmRecord alarmRecord[0]; |
| | | AlarmRecordRes() { |
| | | head.type = ALARMRECORD_RES; |
| | | head.len = sizeof(AlarmRecordRes); |
| | | } |
| | | }; |
| | | //煤矿产量请求 |
| | | struct YieldReq |
| | | { |
| | | Head head; |
| | | 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;//产量 |
| | | int month;//月份 |
| | | int output;//产量 |
| | | }; |
| | | struct YieldRes |
| | | { |
| | | Head head; |
| | | int status; |
| | | Yield yield[0]; |
| | | YieldRes(){ |
| | | head.type = YIELD_RES; |
| | | head.len = sizeof(YieldRes); |
| | | } |
| | | Head head; |
| | | int status; |
| | | Yield yield[0]; |
| | | YieldRes() { |
| | | head.type = YIELD_RES; |
| | | head.len = sizeof(YieldRes); |
| | | } |
| | | }; |
| | | |
| | | //警报管理 |
| | | // 警报请求结构体 |
| | | struct WarningReq { |
| | | Head head; |
| | | |
| | | 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 warningInfo { |
| | | char device_name[32];//设备名称 |
| | | char des[32];//警报描述 |
| | | char time[32];//警报时间 |
| | | float warningdata;//警报数据 |
| | | char type[16];//警报类型 |
| | | char status[16];//警报状态 |
| | | }; |
| | | |
| | | struct Data{ |
| | | float oxygen; // 氧气浓度 |
| | | float carbon; // 一氧化碳浓度 |
| | | float temp; // 温度 |
| | | float humidity; // 湿度 |
| | | struct dataInfo { |
| | | char device_name[32]; |
| | | char type[16];//环境数据类型 |
| | | float data; |
| | | char time[32];//上传数据时间 |
| | | }; |
| | | |
| | | // 警报响应结构体 |
| | | struct WarningRes { |
| | | Head head; |
| | | int status; // 响应状态(比如 0 表示成功,1 表示失败等) |
| | | const char* message; // 响应消息描述 |
| | | struct threshInfo { |
| | | char device_name[32]; |
| | | char type[16];//环境类型 |
| | | float min;//最小阈值 |
| | | float max;//最大阈值 |
| | | char time[32];//阈值修改时间 |
| | | }; |
| | | |
| | | WarningRes(int stat, const char* msg) { |
| | | head.type = WARNING_RES; |
| | | head.len = sizeof(WarningRes); |
| | | status = stat; |
| | | message = msg; |
| | | } |
| | | }; |
| | | //警报请求结构体 |
| | | struct WarningReq { |
| | | Head head; |
| | | warningInfo info[0]; |
| | | |
| | | WarningReq() { |
| | | head.type = WARNING_REQ; |
| | | head.len = sizeof(WarningReq); |
| | | } |
| | | }; |
| | | |
| | | //数据请求结构体 |
| | | struct DataReq { |
| | | Head head; |
| | | dataInfo Info[0]; |
| | | |
| | | DataReq() { |
| | | head.type = DATA_REQ; |
| | | head.len = sizeof(DataReq); |
| | | } |
| | | }; |
| | | |
| | | //阈值请求结构体 |
| | | struct ThresholdReq { |
| | | Head head; |
| | | threshInfo threInfo[0]; |
| | | |
| | | ThresholdReq() { |
| | | head.type = THRESHOLD_REQ; |
| | | head.len = sizeof(ThresholdReq); |
| | | } |
| | | }; |
| | | |
| | | |
| | | //警报响应结构体 |
| | | struct WarningRes { |
| | | Head head; |
| | | int status;// 响应状态 |
| | | warningInfo warninginfo[0]; |
| | | |
| | | WarningRes() { |
| | | head.type = WARNING_RES; |
| | | head.len = sizeof(WarningRes); |
| | | } |
| | | }; |
| | | |
| | | struct DataRes { |
| | | Head head; |
| | | int status;// 响应状态 |
| | | dataInfo datainfo[0]; |
| | | |
| | | DataRes() { |
| | | head.type = DATA_RES; |
| | | head.len = sizeof(DataRes); |
| | | } |
| | | }; |
| | | |
| | | struct ThresholdRes { |
| | | Head head; |
| | | int status;// 响应状态 |
| | | threshInfo threInfo[0]; |
| | | |
| | | ThresholdRes() { |
| | | head.type = THRESHOLD_RES; |
| | | head.len = sizeof(ThresholdRes); |
| | | } |
| | | }; |
| | | |
| | | |
| | | //生产计划管理 |
| | | struct PdplanInfo |
| | | { |
| | | int id;//生产计划编号 |
| | | char planName[32];//生产计划名字 |
| | | int planId;//订单编号 |
| | | char planName[32];//订单名字 |
| | | char startDate[32];//起始日期 |
| | | char closingDate[32];//截至日期 |
| | | char closingDate[32];//交付日期 |
| | | char pdName[8];//产品名 |
| | | double plannedPd;//计划生产量 |
| | | double actualPd;//实际生产量 |
| | | double progress;//生产进度 |
| | |
| | | struct MonoutputInfo |
| | | { |
| | | int month;//月份 |
| | | double output;//月产量 |
| | | double aOutput;//a产品月产量 |
| | | double bOutput;//b产品月产量 |
| | | double cOutput;//c产品月产量 |
| | | }; |
| | | |
| | | //添加一条生产计划的请求结构体 |
| | |
| | | struct QueryPdplanReq |
| | | { |
| | | Head head; |
| | | int id;//生产计划编号 |
| | | char planName[32];//生产计划名字 |
| | | int planId;//订单编号 |
| | | char planName[32];//订单划名字 |
| | | char startDate[32];//起始日期 |
| | | char closingDate[32];//截至日期 |
| | | char closingDate[32];//交付日期 |
| | | char pdName[8];//产品名 |
| | | double plannedPd;//计划生产量 |
| | | double actualPd;//实际生产量 |
| | | double progress;//生产进度 |
| | | int finishOntime;//是否按期完成 |
| | | QueryPdplanReq() { |
| | | head.type = QUERY_PDPLAN_REQ; |
| | |
| | | { |
| | | Head head; |
| | | int month;//月份 |
| | | double output;//月产量 |
| | | double aOutput;//a产品月产量 |
| | | double bOutput;//b产品月产量 |
| | | double cOutput;//c产品月产量 |
| | | QueryMonoutputReq() { |
| | | head.type = QUERY_MONOUTPUT_REQ; |
| | | head.len = sizeof(QueryMonoutputReq); |
| | |
| | | |
| | | |
| | | //历史查询分析 |
| | | // 历史查询请求结构体 |
| | | struct HistoryQueryReq { |
| | | Head head; |
| | | //根据时间范围查询 |
| | | char startTime[32]; |
| | | char endTime[32]; |
| | | //关键字查询 |
| | | char keyWord[32]; |
| | | HistoryQueryReq() { |
| | | // 初始化数据头 |
| | | head.type = HISTORY_QUERY_REQ; |
| | | head.len = sizeof(HistoryQueryReq); |
| | | // 初始化查询条件字段 |
| | | std::memset(startTime, 0, sizeof(startTime)); |
| | | std::memset(endTime, 0, sizeof(endTime)); |
| | | |
| | | } |
| | | //历史查询分析 |
| | | |
| | | struct warningInfo { |
| | | int device_id; |
| | | char des[32]; |
| | | char time[32]; |
| | | float data; |
| | | char type[16]; |
| | | char status[16]; |
| | | }; |
| | | // 历史查询设备信息请求结构体 |
| | | struct HistoryDevReq { |
| | | Head head; |
| | | //根据时间范围查询 |
| | | char startTime[32]; |
| | | char endTime[32]; |
| | | //关键字查询 |
| | | char keyWord[32]; |
| | | HistoryDevReq() { |
| | | // 初始化数据头 |
| | | head.type = HISTORY_DEV_REQ; |
| | | head.len = sizeof(HISTORY_DEV_REQ); |
| | | // 初始化查询条件字段 |
| | | } |
| | | }; |
| | | // 历史查询生产计划请求结构体 |
| | | struct HistoryProReq { |
| | | Head head; |
| | | //根据时间范围查询 |
| | | char startTime[32]; |
| | | char endTime[32]; |
| | | //关键字查询 |
| | | char keyWord[32]; |
| | | HistoryProReq() { |
| | | // 初始化数据头 |
| | | head.type = HISTORY_PRODUCE_REQ; |
| | | head.len = sizeof(HistoryProReq); |
| | | // 初始化查询条件字段 |
| | | } |
| | | }; |
| | | // 历史查询环境信息请求结构体 |
| | | struct HistoryEnvReq { |
| | | Head head; |
| | | //根据时间范围查询 |
| | | char startTime[32]; |
| | | char endTime[32]; |
| | | //关键字查询 |
| | | char keyWord[32]; |
| | | HistoryEnvReq() { |
| | | // 初始化数据头 |
| | | head.type = HISTORY_ENV_REQ; |
| | | head.len = sizeof(HistoryEnvReq); |
| | | // 初始化查询条件字段 |
| | | } |
| | | }; |
| | | |
| | | // 历史查询响应结构体 |
| | | |
| | | // 系统运行状态表相关信息 |
| | | struct HistroyInfo { |
| | | WarningRes warn;//警报查询 |
| | | QDRes dev;//设备查询 |
| | | ProductionPlanRes pro;//生产计划查询 |
| | | //查询设备信息响应结构体 |
| | | struct HistoryDevRes { |
| | | Head head; |
| | | DevicesInfo dev[0]; |
| | | HistoryDevRes() { |
| | | // 初始化数据头 |
| | | head.type = HISTORY_DEV_RES; |
| | | head.len = sizeof(HistoryDevRes); |
| | | } |
| | | }; |
| | | struct HistoryQueryRes { |
| | | Head head; |
| | | HistroyInfo sys[0]; |
| | | HistoryQueryRes() { |
| | | // 初始化数据头 |
| | | head.type = HISTORY_QUERY_RES; |
| | | head.len = sizeof(HistoryQueryRes); |
| | | sys = nullptr; |
| | | } |
| | | //查询生产计划响应结构体 |
| | | struct HistoryProRes { |
| | | Head head; |
| | | PdplanInfo pro[0]; |
| | | HistoryProRes() { |
| | | // 初始化数据头 |
| | | head.type = HISTORY_PRODUCE_RES; |
| | | head.len = sizeof(HistoryProRes); |
| | | } |
| | | }; |
| | | //查询环境信息响应结构体 |
| | | struct HistoryEnvRes { |
| | | Head head; |
| | | warningInfo env[0]; |
| | | HistoryEnvRes() { |
| | | // 初始化数据头 |
| | | head.type = HISTORY_ENV_RES; |
| | | head.len = sizeof(HistoryEnvRes); |
| | | } |
| | | }; |
| | | |
| | | |
| | |
| | | { |
| | | char fileName[256]; |
| | | long long fileSize; |
| | | char s_filepath[128]; |
| | | char s_filepath[128]; |
| | | char content[0]; |
| | | }; |
| | | |
| | |
| | | }; |
| | | |
| | | struct UploadFileRes { // 上传文件的响应 |
| | | Head head; |
| | | bool state = false; |
| | | char fileName[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 versionId[64]; // 版本号 |
| | | char versionIdOld[64]; // 上一个版本号 |
| | | char context[0]; //包含下载文件信息 |
| | | int fileNum; |
| | | Head head; |
| | | char versionId[64]; // 版本号 |
| | | char versionIdOld[64]; // 上一个版本号 |
| | | int fileNum; |
| | | char context[0]; //包含下载文件信息 |
| | | |
| | | VersionInfoEntryReq() |
| | | { |
| | | head.type = VERSION_INFOENTRY_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 = VERSION_INFOENTRY_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 curVersionId[64]; // 版本号 |
| | | VersionUpdateReq() |
| | | { |
| | | head.type = VERSION_UPDATE_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 versionId[64]; // 版本号 |
| | | char updateDate[32]; // 更新时间 |
| | | char versionDescription[1024]; //更新描述 |
| | | Head head; |
| | | bool state = false; |
| | | char versionId[64]; // 版本号 |
| | | char updateDate[32]; // 更新时间 |
| | | char versionDescription[1024]; //更新描述 |
| | | |
| | | VersionUpdateRes() |
| | | { |
| | | head.type = VERSION_UPDATE_RES; |
| | | head.len = sizeof(VersionUpdateRes); |
| | | } |
| | | VersionUpdateRes() |
| | | { |
| | | head.type = VERSION_UPDATE_RES; |
| | | head.len = sizeof(VersionUpdateRes); |
| | | } |
| | | }; |
| | | |
| | | // 版本更新文件下载请求 |
| | | struct FileDownloadsReq { |
| | | Head head; |
| | | char versionId[64]; // 版本号 |
| | | FileDownloadsReq() |
| | | { |
| | | head.type = FILE_DOWNLOADS_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 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); |
| | | } |
| | | 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 fileName[256]; |
| | | long long fileSize; |
| | | DownloadSuccessfullyRes() |
| | | { |
| | | head.type = DOWNLOAD_SUCCESSFULLY_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); |
| | | } |
| | | }; |
| | | |
| | | |
| | | //日志 |
| | | struct ParsedLog { |
| | | char timeStamp[64]; // 时间戳 |
| | | char deviceId[64]; // 设备ID |
| | | char level[16]; // 日志级别 |
| | | char content[256]; // 日志内容 |
| | | char userId[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 timeStamp[64]; // 时间戳 |
| | | char content[256]; // 日志内容 |
| | | char level[16]; //日志级别 |
| | | char deviceId[64]; // 设备ID |
| | | // 无参构造函数 |
| | | 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; |
| | | int status; // 响应状态 (如 0 表示成功,非 0 表示失败) |
| | | char errorMessage[256]; // 错误信息(如果有) |
| | | |
| | | // 无参构造函数 |
| | | LogQueryRes() { |
| | | head.type = LOGSEARCH_RES; |
| | | head.len = sizeof(LogQueryRes); |
| | | } |
| | | Head head; |
| | | int status; // 响应状态 (如 0 表示成功,非 0 表示失败) |
| | | char errorMessage[256]; // 错误信息(如果有) |
| | | |
| | | // 无参构造函数 |
| | | LogQueryRes() { |
| | | head.type = LOGSEARCH_RES; |
| | | head.len = sizeof(LogQueryRes); |
| | | } |
| | | }; |
| | | |
| | | |