diff --git a/backend/src/main/java/lsgwr/exam/controller/UploadDownloadController.java b/backend/src/main/java/lsgwr/exam/controller/UploadDownloadController.java index fca3f8e..35c7cc2 100644 --- a/backend/src/main/java/lsgwr/exam/controller/UploadDownloadController.java +++ b/backend/src/main/java/lsgwr/exam/controller/UploadDownloadController.java @@ -1,37 +1,28 @@ - - - - - - - - - - - - - - - - - - -3. 将文件上传到模型 - `@ModelAttribute` +package lsgwr.exam.controller; + +import lsgwr.exam.qo.DownloadQo; +import lsgwr.exam.qo.UploadModel; +import lsgwr.exam.qo.UploadModel2; +import lsgwr.exam.utils.FileTransUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.io.InputStreamResource; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; + +/*********************************************************** + * @note : 文件上传下载的接口,由于Swagger的问题导致在SwaggerUI + * 里测试不成功,实际上前端是完全没有问题的 + * @author : 梁山广 + * * 为了支持Ajax请求和响应,最简单的解决方案返回一个ResponseEntity。 + * * 以下示例演示了上传文件的三种可能方式: + * * 1. 单文件上传 - `MultipartFile` + * * 2. 多文件上传 - `MultipartFile []` + * * 3. 将文件上传到模型 - `@ModelAttribute` * @version : V1.0 at 2018/7/16 20:43 ***********************************************************/ @RestController diff --git a/backend/src/main/java/lsgwr/exam/vo/ActionVo.java b/backend/src/main/java/lsgwr/exam/vo/ActionVo.java index 98b2a63..902aa24 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ActionVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ActionVo.java @@ -11,12 +11,15 @@ import lombok.Data; @Data public class ActionVo { + // 使用@JsonProperty注解将actionName属性映射到JSON中的action字段 @JsonProperty("action") private String actionName; + // 使用@JsonProperty注解将actionDescription属性映射到JSON中的describe字段 @JsonProperty("describe") private String actionDescription; + // 使用@JsonProperty注解将defaultCheck属性映射到JSON中的defaultCheck字段 @JsonProperty("defaultCheck") private Boolean defaultCheck; } diff --git a/backend/src/main/java/lsgwr/exam/vo/ExamCardVo.java b/backend/src/main/java/lsgwr/exam/vo/ExamCardVo.java index c9e0b9f..903bd54 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ExamCardVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ExamCardVo.java @@ -10,34 +10,27 @@ import lombok.Data; */ @Data public class ExamCardVo { - /** - * 考试ID - */ + //考试ID + @JsonProperty("id") private String examId; - /** - * 考试名称 - */ + //考试名称 + @JsonProperty("title") private String examName; - /** - * 考试头像 - */ + //考试头像 @JsonProperty("avatar") private String examAvatar; - /** - * 考试描述 - */ + //考试描述 + @JsonProperty("content") private String examDescription; - /** - * 考试分数 - */ + //考试分数 + @JsonProperty("score") private Integer examScore; - /** - * 考试限制的时间,单位为分钟 - */ + //考试限制的时间,单位为分钟 + @JsonProperty("elapse") private Integer examTimeLimit; } diff --git a/backend/src/main/java/lsgwr/exam/vo/ExamCreateVo.java b/backend/src/main/java/lsgwr/exam/vo/ExamCreateVo.java index a43f3d1..02d1580 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ExamCreateVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ExamCreateVo.java @@ -23,43 +23,36 @@ public class ExamCreateVo { @JsonProperty("desc") private String examDescription; - /** - * 考试时长,单位分钟 - */ + //试时长,单位分钟 + @JsonProperty("elapse") private Integer examTimeLimit; - /** - * 单选题 - */ + //单选题 + private List radios; - /** - * 多选题 - */ + //多选题 + private List checks; - /** - * 判断题 - */ + //判断题 + private List judges; - /** - * 单选题的分数 - */ + //单选题的分数 + @JsonProperty("radioScore") private Integer examScoreRadio; - /** - * 多选题的分数 - */ + //多选题的分数 + @JsonProperty("checkScore") private Integer examScoreCheck; - /** - * 判断题每题的分数 - */ + //判断题每题的分数 + @JsonProperty("judgeScore") private Integer examScoreJudge; } diff --git a/backend/src/main/java/lsgwr/exam/vo/ExamDetailVo.java b/backend/src/main/java/lsgwr/exam/vo/ExamDetailVo.java index 7e20e7b..5ebc8b2 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ExamDetailVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ExamDetailVo.java @@ -11,24 +11,20 @@ import lombok.Data; @Data public class ExamDetailVo { - /** - * 考试的基本信息对象 - */ + //试的基本信息对象 + private Exam exam; - /** - * 单选题的id数组 - */ + //单选题的id数组 + private String[] radioIds; - /** - * 多选题的id数组 - */ + //多选题的id数组 + private String[] checkIds; - /** - * 判断题的id数组 - */ + //判断题的id数组 + private String[] judgeIds; } diff --git a/backend/src/main/java/lsgwr/exam/vo/ExamPageVo.java b/backend/src/main/java/lsgwr/exam/vo/ExamPageVo.java index 2cac0d1..1274bcb 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ExamPageVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ExamPageVo.java @@ -13,29 +13,23 @@ import java.util.List; @Data public class ExamPageVo { - /** - * 分页时每个分页的大小 - */ + //分页时每个分页的大小 private Integer pageSize; - /** - * 当前是在第几页,注意要比前端传过来地小1 - */ + //当前是在第几页,注意要比前端传过来地小1 + private Integer pageNo; - /** - * 一共有多少条符合条件的记录 - */ + //一共有多少条符合条件的记录 + private Long totalCount; - /** - * 一共有多少页 - */ + //一共有多少页 + private Integer totalPage; - /** - * 当前页的详细数据 - */ + //当前页的详细数据 + @JsonProperty("data") private List examVoList; } diff --git a/backend/src/main/java/lsgwr/exam/vo/ExamQuestionSelectVo.java b/backend/src/main/java/lsgwr/exam/vo/ExamQuestionSelectVo.java index a70a03f..4eab043 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ExamQuestionSelectVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ExamQuestionSelectVo.java @@ -11,9 +11,11 @@ import lombok.Data; @Data public class ExamQuestionSelectVo { + // 问题ID @JsonProperty("id") private String questionId; + // 问题名称 @JsonProperty("name") private String questionName; @@ -23,4 +25,4 @@ public class ExamQuestionSelectVo { */ @JsonProperty("checked") private Boolean checked = false; -} +} \ No newline at end of file diff --git a/backend/src/main/java/lsgwr/exam/vo/ExamQuestionTypeVo.java b/backend/src/main/java/lsgwr/exam/vo/ExamQuestionTypeVo.java index 318cddc..997fc85 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ExamQuestionTypeVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ExamQuestionTypeVo.java @@ -13,12 +13,15 @@ import java.util.List; @Data public class ExamQuestionTypeVo { + // 单选题列表 @JsonProperty("radios") private List examQuestionSelectVoRadioList; + // 多选题列表 @JsonProperty("checks") private List examQuestionSelectVoCheckList; + // 判断题列表 @JsonProperty("judges") private List examQuestionSelectVoJudgeList; } diff --git a/backend/src/main/java/lsgwr/exam/vo/ExamRecordVo.java b/backend/src/main/java/lsgwr/exam/vo/ExamRecordVo.java index 5ac65c9..bc1241f 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ExamRecordVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ExamRecordVo.java @@ -13,18 +13,14 @@ import lombok.Data; @Data public class ExamRecordVo { - /** - * 当前考试记录对应的考试 - */ + //当前考试记录对应的考试 private Exam exam; - /** - * 当前考试对应的内容 - */ + //当前考试对应的内容 + private ExamRecord examRecord; - /** - * 参加考试的用户信息 - */ + //参加考试的用户信息 + private User user; } diff --git a/backend/src/main/java/lsgwr/exam/vo/ExamVo.java b/backend/src/main/java/lsgwr/exam/vo/ExamVo.java index 2947746..7d598ef 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ExamVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/ExamVo.java @@ -17,33 +17,44 @@ import java.util.List; @Data public class ExamVo { + // 考试id @JsonProperty("id") private String examId; + // 考试名称 @JsonProperty("name") private String examName; + // 考试头像 @JsonProperty("avatar") private String examAvatar; + // 考试描述 @JsonProperty("desc") private String examDescription; + // 单选题列表 @JsonProperty("radios") private List examQuestionSelectVoRadioList; + // 多选题列表 @JsonProperty("checks") private List examQuestionSelectVoCheckList; + // 判断题列表 @JsonProperty("judges") private List examQuestionSelectVoJudgeList; + // 考试总分数 @JsonProperty("score") private Integer examScore; + // 单选题分数 @JsonProperty("radioScore") private Integer examScoreRadio; + // 多选题分数 @JsonProperty("checkScore") private Integer examScoreCheck; + // 判断题分数 @JsonProperty("judgeScore") private Integer examScoreJudge; @@ -86,4 +97,4 @@ public class ExamVo { @JsonProperty("updateTime") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date updateTime; -} +} \ No newline at end of file diff --git a/backend/src/main/java/lsgwr/exam/vo/JsonData.java b/backend/src/main/java/lsgwr/exam/vo/JsonData.java index 9fd3ecd..5df765b 100644 --- a/backend/src/main/java/lsgwr/exam/vo/JsonData.java +++ b/backend/src/main/java/lsgwr/exam/vo/JsonData.java @@ -19,43 +19,36 @@ public class JsonData implements Serializable { private static final long serialVersionUID = 1L; - /** - * 状态码 0 表示成功,1表示处理中,-1表示失败 - */ + //状态码 0 表示成功,1表示处理中,-1表示失败 + private Integer code; - /** - * 数据 - */ + //数据 + private Object data; - /** - * 描述 - */ + //描述 + private String msg; - /** - * 成功,传入数据 - */ + //成功,传入数据 + public static JsonData buildSuccess() { return new JsonData(0, null, null); } - /** - * 成功,传入数据 - */ + //成功,传入数据 + public static JsonData buildSuccess(Object data) { return new JsonData(0, data, null); } - /** - * 失败,传入描述信息 - */ + //失败,传入描述信息 + public static JsonData buildError(String msg) { return new JsonData(-1, null, msg); } - /** - * 失败,传入描述信息,状态码 - */ + //失败,传入描述信息,状态码 + public static JsonData buildError(String msg, Integer code) { return new JsonData(code, null, msg); } @@ -71,9 +64,8 @@ public class JsonData implements Serializable { return new JsonData(0, data, msg); } - /** - * 成功,传入数据,及状态码 - */ + //成功,传入数据,及状态码 + public static JsonData buildSuccess(Object data, int code) { return new JsonData(code, data, null); } diff --git a/backend/src/main/java/lsgwr/exam/vo/PageVo.java b/backend/src/main/java/lsgwr/exam/vo/PageVo.java index 604abc3..af9e5c1 100644 --- a/backend/src/main/java/lsgwr/exam/vo/PageVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/PageVo.java @@ -13,12 +13,15 @@ import java.util.List; @Data public class PageVo { + // 使用@JsonProperty注解将actionEntitySet字段映射到JSON中的actionEntitySet字段 @JsonProperty("actionEntitySet") private List actionVoList; + // 使用@JsonProperty注解将permissionId字段映射到JSON中的permissionId字段 @JsonProperty("permissionId") private String pageName; + // 使用@JsonProperty注解将permissionName字段映射到JSON中的permissionName字段 @JsonProperty("permissionName") private String pageDescription; } diff --git a/backend/src/main/java/lsgwr/exam/vo/QuestionCreateSimplifyVo.java b/backend/src/main/java/lsgwr/exam/vo/QuestionCreateSimplifyVo.java index 8eba970..e57ef2e 100644 --- a/backend/src/main/java/lsgwr/exam/vo/QuestionCreateSimplifyVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/QuestionCreateSimplifyVo.java @@ -13,42 +13,35 @@ import java.util.List; @Data public class QuestionCreateSimplifyVo { - /** - * 题目名称 - */ + //题目名称 @JsonProperty("name") private String questionName; @JsonProperty("desc") private String questionDescription; - /** - * 问题的难度的id - */ + //问题的难度的id + @JsonProperty("level") private Integer questionLevelId; - /** - * 问题的类型(单选、多选、判断等) - */ + //问题的类型(单选、多选、判断等) + @JsonProperty("type") private Integer questionTypeId; - /** - * 题目的类别表,从内容角度划分,比如数学、语文、英语等 - */ + //题目的类别表,从内容角度划分,比如数学、语文、英语等 + @JsonProperty("category") private Integer questionCategoryId; - /** - * 创建选项 里添加的内容 - */ + //创建选项 里添加的内容 + @JsonProperty("option") private String option; - /** - * 问题的选项列表,带上了是否是答案的true和false - */ + //问题的选项列表,带上了是否是答案的true和false + @JsonProperty("options") private List questionOptionCreateVoList; } diff --git a/backend/src/main/java/lsgwr/exam/vo/QuestionCreateVo.java b/backend/src/main/java/lsgwr/exam/vo/QuestionCreateVo.java index b565a2e..8ad2ed5 100644 --- a/backend/src/main/java/lsgwr/exam/vo/QuestionCreateVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/QuestionCreateVo.java @@ -13,48 +13,41 @@ import java.util.List; @Data public class QuestionCreateVo { - /** - * 题目名称 - */ + //题目名称 + @JsonProperty("name") private String questionName; @JsonProperty("desc") private String questionDescription; - /** - * 题目的分数,默认值是5 - */ + //题目的分数,默认值是5 + @JsonProperty("score") private Integer questionScore = 5; - /** - * 题目的创建者的id,从token中解析得到 - */ + //题目的创建者的id,从token中解析得到 + @JsonProperty("creator") private String questionCreatorId; - /** - * 问题的难度的id - */ + //问题的难度的id + @JsonProperty("level") private Integer questionLevelId; - /** - * 问题的类型(单选、多选、判断等) - */ + //问题的类型(单选、多选、判断等) + @JsonProperty("type") private Integer questionTypeId; - /** - * 题目的类别表,从内容角度划分,比如数学、语文、英语等 - */ + //题目的类别表,从内容角度划分,比如数学、语文、英语等 + @JsonProperty("category") private Integer questionCategoryId; - /** - * 问题的选项列表,带上了是否是答案的true和false - */ + //问题的选项列表,带上了是否是答案的true和false + @JsonProperty("options") private List questionOptionCreateVoList; } diff --git a/backend/src/main/java/lsgwr/exam/vo/QuestionDetailVo.java b/backend/src/main/java/lsgwr/exam/vo/QuestionDetailVo.java index d6c6fae..53f7321 100644 --- a/backend/src/main/java/lsgwr/exam/vo/QuestionDetailVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/QuestionDetailVo.java @@ -14,30 +14,23 @@ import java.util.List; @Data public class QuestionDetailVo { - /** - * 问题的id - */ + //问题的id + private String id; - /** - * 考试题目 - */ + //考试题目 private String name; - /** - * 考试描述 - */ + //考试描述 + private String description; - /** - * 问题的类型 - */ + //问题的类型 + private String type; - /** - * 问题的选项 - */ + //问题的选项 + private List options; - /** - * 问题的答案,选项的id组成的数组 - */ + //问题的答案,选项的id组成的数组 + private List answers = new ArrayList<>(); } diff --git a/backend/src/main/java/lsgwr/exam/vo/QuestionOptionCreateVo.java b/backend/src/main/java/lsgwr/exam/vo/QuestionOptionCreateVo.java index 470088e..04294c9 100644 --- a/backend/src/main/java/lsgwr/exam/vo/QuestionOptionCreateVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/QuestionOptionCreateVo.java @@ -12,15 +12,12 @@ import lombok.Data; @Data public class QuestionOptionCreateVo { - /** - * 问题的内容 - */ + //问题的内容 @JsonProperty("content") private String questionOptionContent; - /** - * 当前的选项是否是问题大答案 - */ + //当前的选项是否是问题大答案 + @JsonProperty("answer") private Boolean answer = false; diff --git a/backend/src/main/java/lsgwr/exam/vo/QuestionOptionVo.java b/backend/src/main/java/lsgwr/exam/vo/QuestionOptionVo.java index 58cc32a..9db053d 100644 --- a/backend/src/main/java/lsgwr/exam/vo/QuestionOptionVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/QuestionOptionVo.java @@ -11,15 +11,19 @@ import lombok.Data; @Data public class QuestionOptionVo { + // 题目选项ID @JsonProperty("id") private String questionOptionId; + // 题目选项内容 @JsonProperty("content") private String questionOptionContent; + // 是否为答案 @JsonProperty("answer") private Boolean answer = false; + // 题目选项描述 @JsonProperty("description") private String questionOptionDescription; } diff --git a/backend/src/main/java/lsgwr/exam/vo/QuestionPageVo.java b/backend/src/main/java/lsgwr/exam/vo/QuestionPageVo.java index 17ed650..7f0ea60 100644 --- a/backend/src/main/java/lsgwr/exam/vo/QuestionPageVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/QuestionPageVo.java @@ -14,29 +14,24 @@ import java.util.List; @Data public class QuestionPageVo { - /** - * 分页时每个分页的大小 - */ + //分页时每个分页的大小 + private Integer pageSize; - /** - * 当前是在第几页,注意要比前端传过来地小1 - */ + //当前是在第几页,注意要比前端传过来地小1 + private Integer pageNo; - /** - * 一共有多少条符合条件的记录 - */ + //一共有多少条符合条件的记录 + private Long totalCount; - /** - * 一共有多少页 - */ + //一共有多少页 + private Integer totalPage; - /** - * 当前页的详细数据 - */ + //当前页的详细数据 + @JsonProperty("data") private List questionVoList; } diff --git a/backend/src/main/java/lsgwr/exam/vo/QuestionSelectionVo.java b/backend/src/main/java/lsgwr/exam/vo/QuestionSelectionVo.java index dfdbf93..2ebc2ac 100644 --- a/backend/src/main/java/lsgwr/exam/vo/QuestionSelectionVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/QuestionSelectionVo.java @@ -16,12 +16,15 @@ import java.util.List; @Data public class QuestionSelectionVo { + // 问题类型列表 @JsonProperty("types") private List questionTypeList; + // 问题类别列表 @JsonProperty("categories") private List questionCategoryList; + // 问题等级列表 @JsonProperty("levels") private List questionLevelList; } diff --git a/backend/src/main/java/lsgwr/exam/vo/QuestionVo.java b/backend/src/main/java/lsgwr/exam/vo/QuestionVo.java index 5ce1744..dd26b06 100644 --- a/backend/src/main/java/lsgwr/exam/vo/QuestionVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/QuestionVo.java @@ -15,54 +15,50 @@ import java.util.List; @Data public class QuestionVo { + // 使用@JsonProperty注解将属性映射到JSON对象的属性 @JsonProperty("id") private String questionId; + // 使用@JsonProperty注解将属性映射到JSON对象的属性 @JsonProperty("name") private String questionName; + // 使用@JsonProperty注解将属性映射到JSON对象的属性 @JsonProperty("score") private Integer questionScore; - /** - * 根据questionCreatorId查询创建人 - */ + //根据questionCreatorId查询创建人 + @JsonProperty("creator") private String questionCreator; - /** - * 根据questionLevelId查询问题难度 - */ + //根据questionLevelId查询问题难度 + @JsonProperty("level") private String questionLevel; - /** - * 问题难度级别在数据库表question_level中的id - */ + //问题难度级别在数据库表question_level中的id + @JsonProperty("levelId") private int questionLevelId; - /** - * 问题类型,根据questionTypeId获取 - */ + //问题类型,根据questionTypeId获取 + @JsonProperty("type") private String questionType; - /** - * 问题类型在数据库表question_type中的id - */ + //问题类型在数据库表question_type中的id + @JsonProperty("typeId") private int questionTypeId; - /** - * 问题分类,根据questionCategoryId获得 - */ + //问题分类,根据questionCategoryId获得 + @JsonProperty("category") private String questionCategory; - /** - * 问题分类在数据库表question_category中的id - */ + //问题分类在数据库表question_category中的id + @JsonProperty("categoryId") private int questionCategoryId; @@ -70,17 +66,15 @@ public class QuestionVo { @JsonProperty("description") private String questionDescription; - /** - * 问题选项列表,从questionOptionIds获得,需要自己额外给isAnswer赋值 - */ + //问题选项列表,从questionOptionIds获得,需要自己额外给isAnswer赋值 + @JsonProperty("options") private List questionOptionVoList; - /** - * 更新时间,设计表时设置了自动插入当前时间,无需在Java代码中设置了。 - * 同时@DynamicUpdate注解可以时间当数据库数据变化时自动更新,无需人工维护 - */ + //更新时间,设计表时设置了自动插入当前时间,无需在Java代码中设置了。 + //同时@DynamicUpdate注解可以时间当数据库数据变化时自动更新,无需人工维护 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date updateTime; } diff --git a/backend/src/main/java/lsgwr/exam/vo/RecordDetailVo.java b/backend/src/main/java/lsgwr/exam/vo/RecordDetailVo.java index 21501dc..d449ca5 100644 --- a/backend/src/main/java/lsgwr/exam/vo/RecordDetailVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/RecordDetailVo.java @@ -14,22 +14,18 @@ import java.util.List; @Data public class RecordDetailVo { - /** - * 含有考试记录原始信息的对象 - */ + //含有考试记录原始信息的对象 + private ExamRecord examRecord; - /** - * 用户此次考试的作答信息, 键是题目的id,值是选项id的列表 - */ + //用户此次考试的作答信息, 键是题目的id,值是选项id的列表 + private HashMap> answersMap; - /** - * 用户每题作答结果的Map,键是问题的id,值是用户这题是否回答正确,True or False - */ + //用户每题作答结果的Map,键是问题的id,值是用户这题是否回答正确,True or False + private HashMap resultsMap; - /** - * 正确答案,键是题目的id,值是正确答案的id组成的列表 - */ + //正确答案,键是题目的id,值是正确答案的id组成的列表 + private HashMap> answersRightMap; } diff --git a/backend/src/main/java/lsgwr/exam/vo/ResultVO.java b/backend/src/main/java/lsgwr/exam/vo/ResultVO.java index 12aa1bb..ac7b1e8 100644 --- a/backend/src/main/java/lsgwr/exam/vo/ResultVO.java +++ b/backend/src/main/java/lsgwr/exam/vo/ResultVO.java @@ -14,27 +14,28 @@ import lombok.Data; public class ResultVO { + // 构造函数,用于初始化ResultVO对象 public ResultVO(Integer code, String msg, T data) { + // 初始化code属性 this.code = code; + // 初始化msg属性 this.msg = msg; + // 初始化data属性 this.data = data; } public ResultVO() { } - /** - * 错误码 - */ + //错误码 + private Integer code; - /** - * 提示信息 - */ + //提示信息 + private String msg = ""; - /** - * 具体内容 - */ + //具体内容 + private T data; } diff --git a/backend/src/main/java/lsgwr/exam/vo/RoleVo.java b/backend/src/main/java/lsgwr/exam/vo/RoleVo.java index 11ddba1..98de27d 100644 --- a/backend/src/main/java/lsgwr/exam/vo/RoleVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/RoleVo.java @@ -13,15 +13,19 @@ import java.util.List; @Data public class RoleVo { + // 角色名称 @JsonProperty("id") private String roleName; + // 角色描述 @JsonProperty("name") private String roleDescription; + // 角色详情 @JsonProperty("describe") private String roleDetail; + // 角色权限 @JsonProperty("permissions") private List pageVoList; } diff --git a/backend/src/main/java/lsgwr/exam/vo/UserInfoVo.java b/backend/src/main/java/lsgwr/exam/vo/UserInfoVo.java index 4bb6c6f..b66e659 100644 --- a/backend/src/main/java/lsgwr/exam/vo/UserInfoVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/UserInfoVo.java @@ -12,15 +12,19 @@ import lombok.Data; @Data public class UserInfoVo { + // 用户ID @JsonProperty("id") private String userId; + // 用户头像 @JsonProperty("avatar") private String userAvatar; + // 用户昵称 @JsonProperty("name") private String userNickname; + // 用户名 @JsonProperty("username") private String userUsername; @@ -29,18 +33,23 @@ public class UserInfoVo { */ private String password = ""; + // 用户邮箱 @JsonProperty("email") private String userEmail; + // 用户电话 @JsonProperty("telephone") private String userPhone; + // 角色ID @JsonProperty("roleId") private String roleName; + // 用户描述 @JsonProperty("welcome") private String userDescription; + // 角色信息 @JsonProperty("role") private RoleVo roleVo; -} +} \ No newline at end of file diff --git a/backend/src/main/java/lsgwr/exam/vo/UserVo.java b/backend/src/main/java/lsgwr/exam/vo/UserVo.java index 056b93c..f08c655 100644 --- a/backend/src/main/java/lsgwr/exam/vo/UserVo.java +++ b/backend/src/main/java/lsgwr/exam/vo/UserVo.java @@ -11,27 +11,35 @@ import lombok.Data; @Data public class UserVo { + // 用户ID @JsonProperty("id") private String userId; + // 用户名 @JsonProperty("username") private String userUsername; + // 昵称 @JsonProperty("nickname") private String userNickname; + // 角色ID @JsonProperty("role") private Integer userRoleId; + // 头像 @JsonProperty("avatar") private String userAvatar; + // 描述 @JsonProperty("description") private String userDescription; + // 邮箱 @JsonProperty("email") private String userEmail; + // 电话 @JsonProperty("phone") private String userPhone; }