240717班级,工业化控制系统,煤矿相关行业,昆仑系统
shy
2024-10-31 ab4ba1172020857faa0b0126f6e22fe60cf27dd1
Merge branch 'master' of ssh://115.28.86.8:29418/~admin/昆仑_1025
2个文件已添加
164 ■■■■■ 已修改文件
Server/马渝杭/code/common.h 164 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Server/马渝杭/log/日志_马渝杭_20241030.doc 补丁 | 查看 | 原始文档 | blame | 历史
Server/ÂíÓ庼/code/common.h
New file
@@ -0,0 +1,164 @@
#ifndef COMMON_H
#define COMMON_H
#include  <string.h>
//私有协议封装
//请求响应结构体有数据头+数据体
//使用枚举来统一各种功能类型】
enum TypeInfo{
    LOGIN_REQ,  //登录请求
    LOGIN_RES,
    VERSIONUPDATA_REQ,  // ç‰ˆæœ¬æ›´æ–°è¯·æ±‚
    VERSIONUPDATA_RES,
    VERSIONNUM_REQ,     //版本号请求
    VERSIONNUM_RES,
    UPLOAD_FILE_REQ,
    UPLOAD_FILE_RES,
    VERSIONINFOENTRY_REQ,    //版本信息条目
    VERSIONINFOENTRY_RES
};
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 PermissionInfo
{
    int admin;  //管理员
    int history; //历史查看
    int version_manager;//版本管理
    int log_search; //日志查看
    int flaw_mark ; //缺陷标记
};
//登录响应
struct LoginRes
{
    Head head;
    char user_name[32];
    int state; // ç™»å½•状态
    PermissionInfo per;
    LoginRes(){
        head.type=LOGIN_RES;
        head.len=sizeof(LoginRes);
    }
};
struct VersionUpdataReq //版本更新请求的结构体
{
    Head head;
    VersionUpdataReq(){
        head.type=VERSIONUPDATA_REQ;
        head.len=sizeof(VersionUpdataReq);
    }
};
struct VersionUpdataRes //版本更新响应的结构体
{
    Head head;
    char version_id[64];    // ç‰ˆæœ¬å·
    char update_date[32];   //更新时间
    char file_path[128];   //服务端提供最新版本的本地路径
    VersionUpdataRes(){
        head.type=VERSIONUPDATA_REQ;
        head.len=sizeof(VersionUpdataReq);
    }
};
struct VersionNumReq    //版本号请求
{
    Head head;
    VersionNumReq(){
        head.type=VERSIONNUM_REQ;
        head.len=sizeof(VersionNumReq);
    }
};
struct VersionNumRes
{
    Head head;
    char version_id[64];
    VersionNumRes(){
        head.type=VERSIONNUM_RES;
        head.len=sizeof(VersionNumRes);
    }
};
//文件传输功能
struct FileInfo
{
    char file_name[256];
    long long file_size;
    char s_filepath[32];
    char content[0];    //柔性数组结构体
};
struct UploadFileReq
{
    Head head;
    FileInfo fileInfo;
    UploadFileReq(){
        head.type=UPLOAD_FILE_REQ;
        head.len=sizeof(UploadFileReq);
    }
};
struct UploadFileRes
{
    Head head;
   int status;
   long long file_size;     //总大小
   long long file_cuesize;  //文件已传大小
    UploadFileRes(){
        head.type=UPLOAD_FILE_RES;
        head.len=sizeof(UploadFileRes);
    }
};
//版本信息录入---版本信息条目
struct VersionInfoEntryReq
{
   Head head;
   char version_id[64];
   char version_id_old[64];
   char s_filepath[32];     //服务器放最新版本的路径
   char version_description[256];   //更新描述
   char version_creattime[32];  //更新时间
   char filename[16][128];      //支持多文件上传
   long long filesize[16];      //文件组的大小
   char c_filepath[16][128];    //客户端的安装路径
   int filenum;     //一次版本更新所需文件个数
   VersionInfoEntryReq(){
        head.type=VERSIONINFOENTRY_REQ;
        head.len=sizeof(VersionInfoEntryReq);
    }
};
//响应
struct VersionInfoEntryRes {
    Head head;
    char version_id_old[64]; // ç‰ˆæœ¬å·
    VersionInfoEntryRes()
    {
        head.type = VERSIONINFOENTRY_RES;
        head.len = sizeof(VersionInfoEntryRes);
    }
};
#endif // COMMON_H
Server/ÂíÓ庼/log/ÈÕÖ¾_ÂíÓ庼_20241030.doc
Binary files differ