Compare commits

..

10 Commits

Binary file not shown.

Binary file not shown.

@ -10,7 +10,7 @@ spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/yf_exam_lite?useSSL=false&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&allowPublicKeyRetrieval=true
url: jdbc:mysql://localhost:3306/yf_exam?useSSL=false&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&allowPublicKeyRetrieval=true
username: root
password: root
# druid相关配置
@ -68,7 +68,7 @@ server:
conf:
upload:
# 物理文件存储位置,以/结束windows已正斜杠d:/exam-upload/
dir: /data/upload/
dir: d:/upload/
# 访问地址,注意不要去除/upload/file/,此节点为虚拟标识符
# 如http://localhost:8101/upload/file/exam.jpg对应物理文件为/data/upload/exam.jpg
url: http://localhost:8101/upload/file/

@ -50670,92 +50670,3 @@ Cookie: Admin-Token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3NjEwNDk3NzE
2025-10-20 20:48:15.904 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : MisfireHandler: scanning for misfires...
2025-10-20 20:48:15.905 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : Found 0 triggers that missed their scheduled fire-time.
2025-10-20 20:48:16.016 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:48:26.016 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:48:29.643 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:48:36.019 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:48:46.018 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:48:56.019 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:48:57.124 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:49:06.021 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:49:11.876 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : Start expire sessions StandardManager at 1760964551876 sessioncount 0
2025-10-20 20:49:11.877 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : End expire sessions StandardManager processingTime 1 expired sessions: 0
2025-10-20 20:49:15.904 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : MisfireHandler: scanning for misfires...
2025-10-20 20:49:15.907 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : Found 0 triggers that missed their scheduled fire-time.
2025-10-20 20:49:16.020 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:49:20.654 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:49:26.021 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:49:36.023 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:49:46.024 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:49:48.523 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:49:56.025 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:50:06.028 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:50:11.885 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : Start expire sessions StandardManager at 1760964611885 sessioncount 0
2025-10-20 20:50:11.885 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : End expire sessions StandardManager processingTime 0 expired sessions: 0
2025-10-20 20:50:13.970 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:50:15.904 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : MisfireHandler: scanning for misfires...
2025-10-20 20:50:15.906 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : Found 0 triggers that missed their scheduled fire-time.
2025-10-20 20:50:16.035 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:50:26.032 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:50:36.032 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:50:39.664 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:50:46.033 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:50:56.034 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:51:04.047 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:51:06.035 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:51:11.893 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : Start expire sessions StandardManager at 1760964671893 sessioncount 0
2025-10-20 20:51:11.893 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : End expire sessions StandardManager processingTime 0 expired sessions: 0
2025-10-20 20:51:15.904 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : MisfireHandler: scanning for misfires...
2025-10-20 20:51:15.907 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : Found 0 triggers that missed their scheduled fire-time.
2025-10-20 20:51:16.036 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:51:26.040 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:51:33.009 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:51:36.038 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:51:46.041 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:51:56.042 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:52:01.693 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:52:06.047 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:52:11.900 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : Start expire sessions StandardManager at 1760964731900 sessioncount 0
2025-10-20 20:52:11.900 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : End expire sessions StandardManager processingTime 0 expired sessions: 0
2025-10-20 20:52:15.904 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : MisfireHandler: scanning for misfires...
2025-10-20 20:52:15.905 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : Found 0 triggers that missed their scheduled fire-time.
2025-10-20 20:52:16.045 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:52:26.046 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:52:28.105 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:52:36.046 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:52:46.049 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:52:55.070 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:52:56.055 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:53:06.050 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:53:11.905 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : Start expire sessions StandardManager at 1760964791905 sessioncount 0
2025-10-20 20:53:11.905 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : End expire sessions StandardManager processingTime 0 expired sessions: 0
2025-10-20 20:53:15.905 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : MisfireHandler: scanning for misfires...
2025-10-20 20:53:15.906 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : Found 0 triggers that missed their scheduled fire-time.
2025-10-20 20:53:16.058 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:53:20.948 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:53:26.053 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:53:36.055 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:53:46.057 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:53:49.860 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:53:56.058 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:54:06.063 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:54:11.908 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : Start expire sessions StandardManager at 1760964851908 sessioncount 0
2025-10-20 20:54:11.908 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : End expire sessions StandardManager processingTime 0 expired sessions: 0
2025-10-20 20:54:13.259 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:54:15.905 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : MisfireHandler: scanning for misfires...
2025-10-20 20:54:15.907 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : Found 0 triggers that missed their scheduled fire-time.
2025-10-20 20:54:16.064 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:54:26.065 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:54:36.068 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:54:39.727 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:54:46.068 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:54:56.080 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:55:06.081 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:55:08.946 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:55:11.915 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : Start expire sessions StandardManager at 1760964911915 sessioncount 0
2025-10-20 20:55:11.915 DEBUG 16624 --- [Catalina-utility-2] org.apache.catalina.session.ManagerBase : End expire sessions StandardManager processingTime 0 expired sessions: 0
2025-10-20 20:55:15.906 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : MisfireHandler: scanning for misfires...
2025-10-20 20:55:15.907 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_MisfireHandler] o.s.s.quartz.LocalDataSourceJobStore : Found 0 triggers that missed their scheduled fire-time.
2025-10-20 20:55:16.085 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:55:26.092 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.
2025-10-20 20:55:34.064 DEBUG 16624 --- [examScheduler_QuartzSchedulerThread] org.quartz.core.QuartzSchedulerThread : batch acquisition of 0 triggers
2025-10-20 20:55:36.095 DEBUG 16624 --- [QuartzScheduler_examScheduler-LAPTOP-2O6L5JE61760963353815_ClusterManager] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Check-in complete.

@ -0,0 +1 @@
java -jar exam-api.jar --spring.config.location=application-local.yml

@ -0,0 +1 @@
java -jar exam-api.jar --spring.config.location=application-local.yml

@ -0,0 +1,10 @@
# 默认忽略的文件
/shelf/
/workspace.xml
# 基于编辑器的 HTTP 客户端请求
/httpRequests/
# 依赖于环境的 Maven 主目录路径
/mavenHomeManager.xml
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 管理项目的JDK配置及编译输出路径 -->
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 管理项目的模块Module信息 -->
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/mapper.iml" filepath="$PROJECT_DIR$/.idea/mapper.iml" />
</modules>
<!-- fileurl模块配置文件的虚拟路径filepath模块配置文件的实际物理路径使用IDEA内置变量PROJECT_DIR指向项目根目录 -->
</component>
</project>

@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 数据库表exam_depart的基础操作映射 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.exam.mapper.ExamDepartMapper">
<!-- 通用查询映射结果 -->
<!-- 实体类ExamDepart与数据库表的字段通过BaseResultMap进行映射 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.exam.entity.ExamDepart">
<id column="id" property="id" />
<result column="exam_id" property="examId" />

@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 考试系统的数据库操作 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.exam.mapper.ExamMapper">
<!-- 通用查询映射结果 -->
<!-- 实体类Exam与数据库表的字段通过BaseResultMap进行映射 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.exam.entity.Exam">
<id column="id" property="id" />
<result column="title" property="title" />
@ -24,6 +27,7 @@
</sql>
<!-- 阅卷视图ReviewResultMap,扩展自BaseResultMap -->
<resultMap id="ReviewResultMap"
type="com.yf.exam.modules.exam.dto.response.ExamReviewRespDTO"
extends="BaseResultMap">
@ -38,6 +42,7 @@
</resultMap>
<!-- 分页查询 -->
<select id="paging" resultMap="ListResultMap">
SELECT * FROM el_exam
<where>
@ -58,6 +63,7 @@
</where>
</select>
<!-- 阅卷统计 -->
<select id="reviewPaging" resultMap="ReviewResultMap">
SELECT ex.*,
(SELECT COUNT(DISTINCT user_id) FROM el_paper WHERE exam_id=ex.id) as examUser,
@ -67,11 +73,14 @@
</select>
<!-- 在线考试视图OnlineResultMap,扩展自BaseResultMap -->
<resultMap id="OnlineResultMap"
type="com.yf.exam.modules.exam.dto.response.ExamOnlineRespDTO"
extends="BaseResultMap">
</resultMap>
<!-- 在线考试查询,实现权限控制 -->
<!-- 开放类型为全公开1或混合类型3时可见,当为部门考试2需匹配用户的部门权限 -->
<select id="online" resultMap="OnlineResultMap">
SELECT ex.*
FROM el_exam ex
@ -79,6 +88,7 @@
LEFT JOIN sys_user uc ON uc.depart_id=dept.depart_id
WHERE ex.state=0 AND (ex.open_type=1 OR ex.open_type=3 OR uc.id='{{userId}}')
<!-- 支持按标题模糊搜索和按开放类型筛选 -->
<if test="query!=null">
<if test="query.title!=null and query.title!=''">
AND ex.title LIKE CONCAT('%',#{query.title},'%')

@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 考试与题库的关联配置 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.exam.mapper.ExamRepoMapper">
<!-- 通用查询映射结果 -->
<!-- BaseResultMap映射ExamRepo实体类,ExamRepo实体类映射了考试与题库的关联配置包含考试ID、题库ID、单选/多选/判断题的数量 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.exam.entity.ExamRepo">
<id column="id" property="id" />
<result column="exam_id" property="examId" />
@ -20,6 +22,7 @@
`id`,`exam_id`,`repo_id`,`radio_count`,`radio_score`,`multi_count`,`multi_score`,`judge_count`,`judge_score`
</sql>
<!-- ExtResultMap扩展自BaseResultMap通过子查询获取题库中各题型的总数 -->
<resultMap id="ExtResultMap" type="com.yf.exam.modules.exam.dto.ext.ExamRepoExtDTO" extends="BaseResultMap">
<result column="totalRadio" property="totalRadio" />
<result column="totalMulti" property="totalMulti" />

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 考试系统中试卷数据的操作 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.paper.mapper.PaperMapper">
<!-- 实体类Paper与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.paper.entity.Paper">
<id column="id" property="id" />
@ -29,12 +31,16 @@
</sql>
<!-- ListResultMap用于返回分页列表数据PaperListRespDTO,扩展自BaseResultMap -->
<resultMap id="ListResultMap"
extends="BaseResultMap"
type="com.yf.exam.modules.paper.dto.response.PaperListRespDTO">
<result column="real_name" property="realName" />
</resultMap>
<!-- 分页查询 -->
<!-- 支持动态筛选条件考试ID、用户ID、部门ID、状态、用户姓名模糊搜索 -->
<!-- 结果按创建时间倒序排列 -->
<select id="paging" resultMap="ListResultMap">
SELECT pp.*,uc.real_name FROM el_paper pp
LEFT JOIN sys_user uc ON pp.user_id=uc.id

@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 试卷题目答案的查询操作 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.paper.mapper.PaperQuAnswerMapper">
<!-- 通用查询映射结果 -->
<!-- 实体类PaperQuAnswer与数据库表的字段通过BaseResultMap进行映射 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.paper.entity.PaperQuAnswer">
<id column="id" property="id" />
<result column="paper_id" property="paperId" />
@ -19,6 +21,7 @@
`id`,`paper_id`,`answer_id`,`qu_id`,`is_right`,`checked`,`sort`,`abc`
</sql>
<!-- ListResultMap用于关联查询答案的详细内容,扩展自BaseResultMap -->
<resultMap id="ListResultMap"
type="com.yf.exam.modules.paper.dto.ext.PaperQuAnswerExtDTO"
extends="BaseResultMap">
@ -27,6 +30,7 @@
</resultMap>
<!-- 查询指定试卷和题目的答案列表,返回基础信息及答案的文本内容(content)和图片(image) -->
<select id="list" resultMap="ListResultMap">
SELECT pa.`id`,pa.`paper_id`,pa.`answer_id`,pa.`qu_id`,pa.`checked`,pa.`sort`,pa.`abc`,qa.content,qa.image
FROM el_paper_qu_answer pa
@ -35,6 +39,7 @@
ORDER BY pa.sort ASC
</select>
<!-- 在 list 基础上增加返回 is_right 字段,用于前端展示正确答案的状态 -->
<select id="listForShow" resultMap="ListResultMap">
SELECT pa.`id`,pa.`paper_id`,pa.`answer_id`,pa.`qu_id`,pa.`checked`,pa.`sort`,pa.`abc`,qa.content,qa.is_right,qa.image
FROM el_paper_qu_answer pa

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 试卷题目的数据库操作 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.paper.mapper.PaperQuMapper">
<!-- 实体类PaperQu与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.paper.entity.PaperQu">
<id column="id" property="id" />
@ -23,6 +25,7 @@
<!-- 计算总分 -->
<!-- 计算客观题总分 -->
<select id="sumObjective" resultType="int">
SELECT IFNULL(SUM(actual_score),0) as total
FROM el_paper_qu
@ -31,6 +34,7 @@
AND qu_type &lt; 4
</select>
<!-- 计算主观题总分 -->
<select id="sumSubjective" resultType="int">
SELECT IFNULL(SUM(actual_score),0) as total
FROM el_paper_qu
@ -38,6 +42,7 @@
AND qu_type=4
</select>
<!-- 试卷题目详情查询ListResultMap,扩展自BaseResultMap -->
<resultMap id="ListResultMap" extends="BaseResultMap" type="com.yf.exam.modules.paper.dto.ext.PaperQuDetailDTO">
<result column="image" property="image" />
@ -47,6 +52,7 @@
</resultMap>
<!-- 通过联合查询获取试卷题目详细信息结果按sort字段顺序排列 -->
<select id="listByPaper" resultMap="ListResultMap">
SELECT pq.*,eq.content,eq.image
FROM el_paper_qu pq

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 数据库表qu_answer的基础操作映射 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.qu.mapper.QuAnswerMapper">
<!-- 实体类QuAnswer与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.qu.entity.QuAnswer">
<id column="id" property="id" />

@ -1,8 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 题目Qu模块的数据库操作 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.qu.mapper.QuMapper">
<!-- 通用查询映射结果 -->
<!-- 实体类Qu与数据库表的字段通过BaseResultMap进行映射 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.qu.entity.Qu">
<id column="id" property="id" />
<result column="qu_type" property="quType" />
@ -22,6 +24,7 @@
<!-- 随机取数据 -->
<!-- 按类型和题库随机抽取题目,支持排除指定题目 -->
<select id="listByRandom" resultMap="BaseResultMap">
SELECT a.*
FROM el_qu a
@ -36,6 +39,7 @@
</select>
<!-- 通过listForExport导出题目及其答案和关联题库 -->
<resultMap id="ExportResultMap" type="com.yf.exam.modules.qu.dto.export.QuExportDTO">
<id column="q_id" property="qId" />
<result column="qu_type" property="quType" />
@ -75,6 +79,7 @@
</where>
</sql>
<!-- 分页查询,支持按题目类型、题库、内容筛选 -->
<select id="paging" resultMap="BaseResultMap">
SELECT q.*
FROM el_qu q

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 数据库表qu_repo的基础操作映射 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.qu.mapper.QuRepoMapper">
<!-- 实体类QuRepo与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.qu.entity.QuRepo">
<id column="id" property="id" />

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 试卷题库的查询操作 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.repo.mapper.RepoMapper">
<!-- 实体类Repo与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.repo.entity.Repo">
<id column="id" property="id" />
@ -18,6 +20,7 @@
</sql>
<!-- 分页查询扩展映射,为分页查询结果增加关联表字段,用于前端展示,扩展自BaseResultMap -->
<resultMap id="ListResultMap"
type="com.yf.exam.modules.repo.dto.response.RepoRespDTO"
extends="BaseResultMap">
@ -26,6 +29,7 @@
<result column="judge_count" property="judgeCount" />
</resultMap>
<!-- 分页查询,统计题目数量,按题型筛选 -->
<select id="paging" resultMap="ListResultMap">
SELECT `id`, `code`, `title`, `remark`, `create_time`, `update_time`,
(SELECT COUNT(0) FROM el_qu_repo WHERE repo_id=repo.id AND qu_type=1) AS radio_count,

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 部门查询操作 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.sys.depart.mapper.SysDepartMapper">
<!-- 实体类SysDepart与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.sys.depart.entity.SysDepart">
<id column="id" property="id" />
@ -18,16 +20,19 @@
</sql>
<!-- 树形结构查询,扩展自BaseResultMap,返回的结果包含所有下级部门 -->
<resultMap id="TreeResultMap"
type="com.yf.exam.modules.sys.depart.dto.response.SysDepartTreeDTO"
extends="BaseResultMap">
<collection property="children" column="id" select="findChildren"></collection>
</resultMap>
<!-- 通过parent_id关联当前部门ID递归获取所有子部门 -->
<select id="findChildren" resultMap="TreeResultMap">
SELECT * FROM sys_depart WHERE parent_id=#{id}
</select>
<!-- 从顶级部门parent_id='0')开始,支持按部门名称模糊搜索 -->
<select id="paging" resultMap="TreeResultMap">
SELECT * FROM sys_depart WHERE parent_id='0'
<if test="query!=null">

@ -1,4 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 通用字典查询方法 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.sys.system.mapper.SysDictMapper">

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- SysRole实体类的基础字段映射 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.sys.user.mapper.SysRoleMapper">
<!-- 实体类SysRole与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.sys.user.entity.SysRole">
<id column="id" property="id" />

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 数据库表sys_user的基础操作映射 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.sys.user.mapper.SysUserMapper">
<!-- 实体类SysUser与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.sys.user.entity.SysUser">
<id column="id" property="id" />

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 映射用户与角色的关联关系 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.sys.user.mapper.SysUserRoleMapper">
<!-- 实体类SysUserRole与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.sys.user.entity.SysUserRole">
<id column="id" property="id" />

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 定义了实体类UserBook错题记录与数据库表之间的映射关系 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.user.book.mapper.UserBookMapper">
<!-- 实体类UserBook与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.user.book.entity.UserBook">
<id column="id" property="id" />

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 用户错题记录管理 -->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yf.exam.modules.user.exam.mapper.UserExamMapper">
<!-- 实体类UserExam与数据库表的字段通过BaseResultMap进行映射 -->
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.yf.exam.modules.user.exam.entity.UserExam">
<id column="id" property="id" />
@ -20,6 +22,7 @@
</sql>
<!-- 分页查询扩展映射,为分页查询结果增加关联表字段,用于前端展示,扩展自BaseResultMap -->
<resultMap id="ListResultMap"
type="com.yf.exam.modules.user.exam.dto.response.UserExamRespDTO"
extends="BaseResultMap">
@ -28,6 +31,7 @@
</resultMap>
<!-- 分页查询,支持考试标题模糊搜索和实名模糊匹配 -->
<select id="paging" resultMap="ListResultMap">
SELECT ue.*,ee.title,uc.real_name FROM el_user_exam ue
LEFT JOIN el_exam ee ON ue.exam_id=ee.id

@ -0,0 +1,13 @@
<template>
<div id="app">
<!-- Vue应用的根容器 -->
<router-view />
<!-- Vue Router提供的动态占位组件基于当前路由路径渲染匹配的组件 -->
</div>
</template>
<script>
export default {
name: 'App'
}
</script>

Before

Width:  |  Height:  |  Size: 407 KiB

After

Width:  |  Height:  |  Size: 407 KiB

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Before

Width:  |  Height:  |  Size: 8.7 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

Before

Width:  |  Height:  |  Size: 90 KiB

After

Width:  |  Height:  |  Size: 90 KiB

Before

Width:  |  Height:  |  Size: 359 KiB

After

Width:  |  Height:  |  Size: 359 KiB

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save