/* Describtion : Class for Data Send From Client / Server
* Company : Wuxi Xinje
* Author : Somuns
* DateTime : 2021/1/18
*/
using System;
using System.Collections.Generic;
namespace StuMgmLib
{
public enum ClientFunc
{
// 普通用户允许的操作
///
/// 验证登录
///
VerifyLogin = 1,
///
/// 获取所有课程信息
///
GetCourseInfo,
///
/// 获取用户信息
///
GetUserInfo,
///
/// 修改课程状态
///
ChangeCourseStatus,
// 老师允许的操作
//100
//// 管理员允许的操作
//200
//GetSomeoneUserCInfo = 6,
//SUpdateCourse = 4,
//TUpdateCourse = 5,
}
public enum Lvl
{
NotFound = -1,
Error = -2,
Student = 99,
Teacher = 199,
Admin = 299,
}
public enum CourseStatus
{
}
#region 基本收发类
[Serializable]
public class Request
{
public ClientFunc Func;
public short JobId;
public string Token;
public Request() { }
public Request(ClientFunc func)
{
Func = func;
}
}
[Serializable]
public class Response
{
public bool Res;
public string ErrMsg;
public Response()
{
Res = true;
}
public Response(string errMsg)
{
Res = false;
ErrMsg = errMsg;
}
}
#endregion
#region 用户登录
[Serializable]
public class LoginReq : Request
{
public string Password;
public LoginReq(string password) // Changed
{
Password = password;
}
}
[Serializable]
public class LoginRes : Response
{
public string Token;
public Lvl Level;
public LoginRes(string token, Lvl level)
{
Token = token;
Level = level;
}
}
#endregion
#region 获取所有课程信息
[Serializable]
public class CourseInfoReq : Request
{
}
[Serializable]
public class CourseInfoRes : Response
{
///
/// 课程ID
///
public short Id;
public short Pid;
///
/// 该题所需用时(单位s)
///
public int Time;
public string Name;
public string Content;
public CourseInfoRes(short id, short pid, int time, string name, string content)
{
Id = id;
Pid = pid;
Time = time;
Name = name;
Content = content;
}
}
#endregion
#region 用户信息
[Serializable]
public class UserInfoReq : Request
{
public short User;
public UserInfoReq(short user)
{
short User = user;
}
}
[Serializable]
public class UserInfoRes : Response
{
public short JobId;//工号
public string Name;//姓名
///
/// 各课程的当前状态
///
public string Status;
public UserInfoRes(short jobId, string name, string status)
{
short JobId = jobId;
string Name = name;
string Status = status;
}
// ..public DateTime Entry;
//public string Details;//老师对于该生的描述
}
#endregion
#region 用户课程状态修改
public class CrsStasReq : Request
{
///
/// 需要修改者的工号
///
public short User;
///
/// 需要修改的课程
///
public short Id;
public CourseStatus Status;
public CrsStasReq(short user, short id, CourseStatus status)
{
short User = user;
short Id = id;
CourseStatus Status = status;
}
}
public class CrsStasRes : Response
{
}
#endregion
}