Default Changelist

feature/qzw
秦泽旺 3 months ago
parent 2620d64f1d
commit e902e6d39f

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="SqlDialectMappings">
<file url="PROJECT" dialect="MySQL" />
</component>
</project>

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="VcsDirectoryMappings"> <component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
<mapping directory="$PROJECT_DIR$" vcs="Git" /> <mapping directory="$PROJECT_DIR$" vcs="Git" />
</component> </component>
</project> </project>

@ -4,24 +4,35 @@
* @date : 2019-05-17 00:11 * @date : 2019-05-17 00:11
* @email : liangshanguang2@gmail.com * @email : liangshanguang2@gmail.com
***********************************************************/ ***********************************************************/
package lsgwr.exam.config; package lsgwr.exam.config;// 指定当前类所在的包路径
// 导入所需的类
import lombok.extern.slf4j.Slf4j; import jdk.internal.instrumentation.Logger;
import org.springframework.context.annotation.Bean; import lombok.extern.slf4j.Slf4j;// Lombok库提供的注解用于自动为类添加SLF4J日志记录器
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Bean;// Spring框架提供的注解用于标记配置类
import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.context.annotation.Configuration;// Spring框架提供的注解用于标记配置类。
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.config.annotation.CorsRegistry;// Spring MVC框架提供的接口用于自定义Web MVC配置
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;// Spring MVC框架提供的接口用于自定义Web MVC配置。
// 使用@Configuration注解标记此类为Spring的配置类。
// 使用@Slf4j注解自动为类添加一个名为log的SLF4J日志记录器。
@Configuration @Configuration
@Slf4j @Slf4j
public class CORSConf { public class CORSConf {
// 使用@Bean注解声明一个方法该方法将返回一个对象该对象将被注册为Spring应用上下文中的bean。
// 此处声明的方法返回一个WebMvcConfigurer类型的对象用于配置跨域资源共享CORS
@Bean @Bean
public WebMvcConfigurer corsConfigurer() { public WebMvcConfigurer corsConfigurer() {
// 返回一个新的WebMvcConfigurer匿名类实例。
return new WebMvcConfigurer() { return new WebMvcConfigurer() {
@Override @Override
public void addCorsMappings(CorsRegistry registry) { public void addCorsMappings(CorsRegistry registry) {
Logger log = null;
// 尝试记录日志信息但由于log被初始化为null这行代码会抛出NullPointerException。
log.info("初始化 CORSConfiguration 配置"); log.info("初始化 CORSConfiguration 配置");
// 使用CorsRegistry配置CORS规则
// 允许所有路径("/**")的跨域请求。
// 允许所有HTTP头"*")。
// 允许所有HTTP方法"*")。
// 允许所有来源的跨域请求("*")。
registry.addMapping("/**") registry.addMapping("/**")
.allowedHeaders("*") .allowedHeaders("*")
.allowedMethods("*") .allowedMethods("*")

@ -14,109 +14,32 @@ import java.util.HashMap;// 导入了HashMap用于存储键值对
import java.util.List;// 导入了List用于存储一系列对象 import java.util.List;// 导入了List用于存储一系列对象
// 定义了一个名为ExamService的接口 // 定义了一个名为ExamService的接口
public interface ExamService { public interface ExamService {
/** // 获取所有的问题列表
*
*/
List<QuestionVo> getQuestionAll(); List<QuestionVo> getQuestionAll();
// 根据传入的问题实体更新问题和选项
/**
*
*
* @param questionVo
*/
QuestionVo updateQuestion(QuestionVo questionVo); QuestionVo updateQuestion(QuestionVo questionVo);
// 创建问题
/**
*
*
* @param questionCreateVo
*/
void questionCreate(QuestionCreateVo questionCreateVo); void questionCreate(QuestionCreateVo questionCreateVo);
// 获取问题的选项、分类和难度的下拉列表
/**
*
*
* @return
*/
QuestionSelectionVo getSelections(); QuestionSelectionVo getSelections();
// 根据问题ID获取问题详情
/**
*
*
* @param id id
* @return VO
*/
QuestionDetailVo getQuestionDetail(String id); QuestionDetailVo getQuestionDetail(String id);
// 获取全部考试的列表
/**
*
*/
List<ExamVo> getExamAll(); List<ExamVo> getExamAll();
// 获取所有问题的下拉列表,用于前端创建考试时筛选
/**
* 便
*
* @return
*/
ExamQuestionTypeVo getExamQuestionType(); ExamQuestionTypeVo getExamQuestionType();
// 根据前端组装的参数创建考试
/**
*
*
* @param examCreateVo
* @param userId id
* @return
*/
Exam create(ExamCreateVo examCreateVo, String userId); Exam create(ExamCreateVo examCreateVo, String userId);
// 获取考试卡片列表
/**
*
*
* @return
*/
List<ExamCardVo> getExamCardList(); List<ExamCardVo> getExamCardList();
// 根据考试ID获取考试详情
/**
* id
*
* @param id exam
* @return VO
*/
ExamDetailVo getExamDetail(String id); ExamDetailVo getExamDetail(String id);
// 根据用户提交的作答信息进行判分
/**
*
*
* @param userId
* @param examId
* @param answersMap
* @return
*/
ExamRecord judge(String userId, String examId, HashMap<String, List<String>> answersMap); ExamRecord judge(String userId, String examId, HashMap<String, List<String>> answersMap);
// 根据用户ID获取此用户的所有考试信息
/**
* id
*
* @param userId id
* @return
*/
List<ExamRecordVo> getExamRecordList(String userId); List<ExamRecordVo> getExamRecordList(String userId);
// 获取指定某次考试记录的详情
/**
*
*
* @param recordId id
* @return
*/
RecordDetailVo getRecordDetail(String recordId); RecordDetailVo getRecordDetail(String recordId);
// 更新考试
/**
*
*
* @param examVo
* @param userId
* @return
*/
Exam update(ExamVo examVo, String userId); Exam update(ExamVo examVo, String userId);
} }

@ -4,57 +4,77 @@
* @date : 2019-06-02 13:26 * @date : 2019-06-02 13:26
* @email : liangshanguang2@gmail.com * @email : liangshanguang2@gmail.com
***********************************************************/ ***********************************************************/
package lsgwr.exam.vo; package lsgwr.exam.vo;// 指定当前类所在的包路径
// 导入所需的类
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;// 用于指定JSON属性名与Java属性名的映射
import lombok.Data; import lombok.Data;// Lombok库提供的注解用于自动生成getter、setter、toString等方法
import java.util.List;
import java.util.List;// Java标准库中的接口用于表示一个有序的集合
// 使用@Data注解自动生成getter、setter、toString等方法
@Data @Data
public class QuestionCreateVo { public class QuestionCreateVo {
/** /**
* *
* JSON"name"Java"questionName"
*/ */
@JsonProperty("name") @JsonProperty("name")
private String questionName; private String questionName;
/**
*
* JSON"desc"Java"questionDescription"
*/
@JsonProperty("desc") @JsonProperty("desc")
private String questionDescription; private String questionDescription;
/** /**
* ,5 * , 5
* JSON"score"Java"questionScore"
*/ */
@JsonProperty("score") @JsonProperty("score")
private Integer questionScore = 5; private Integer questionScore = 5;
/** /**
* idtoken * idtoken
* JSON"creator"Java"questionCreatorId"
*/ */
@JsonProperty("creator") @JsonProperty("creator")
private String questionCreatorId; private String questionCreatorId;
/** /**
* id * id
* JSON"level"Java"questionLevelId"
*/ */
@JsonProperty("level") @JsonProperty("level")
private Integer questionLevelId; private Integer questionLevelId;
/** /**
* () * ()
* JSON"type"Java"questionTypeId"
*/ */
@JsonProperty("type") @JsonProperty("type")
private Integer questionTypeId; private Integer questionTypeId;
/** /**
* *
* JSON"category"Java"questionCategoryId"
*/ */
@JsonProperty("category") @JsonProperty("category")
private Integer questionCategoryId; private Integer questionCategoryId;
/** /**
* truefalse * truefalse
* JSON"options"Java"questionOptionCreateVoList"
* QuestionOptionCreateVo
*/ */
@JsonProperty("options") @JsonProperty("options")
private List<QuestionOptionCreateVo> questionOptionCreateVoList; private List<QuestionOptionCreateVo> questionOptionCreateVoList;
/**
* id
*
* questionCreatorId
* tokenidquestionCreatorId
*/
public void setQuestionCreatorId(String userId) {
// TODO: 实现设置题目创建者id的逻辑
}
} }

Loading…
Cancel
Save