|
|
deabd5f7f5
|
feat(exam): 优化考试判卷逻辑并完善相关接口
- 新增获取未完成判卷数量接口 getExamUnfinishedCount
- 修改定时任务 autoJudgeExamWords 使用未完成判卷数量判断
- Mapper 添加 selectUnfinishedCount 方法,SQL查询未完成记录数
- 优化文件上传判卷时日志输出,增加“上传文件成功”日志
- 修正判卷时未识别学生和考试的提示信息
- 移除学生查询页面中班级和年级ID显示,仅保留名称显示
- 测试类中添加判卷方法调用测试逻辑
- 配置文件增加 Sa-Token 相关日志调试配置
|
2026-01-04 18:52:50 +08:00 |
|
|
|
679241588f
|
style(ui): 优化页面布局和样式细节
- admid页面将主区域拆分为两栏布局,调整新增用户按钮颜色统一为primary
- admid页面生成邀请码区域样式微调,增加标题字体大小并统一边距
- 全局主色从#409eff更改为#2563eb,更新顶部加载条颜色
- class页和learningPlan页整体布局调整,包含容器内间距、面板样式统一及按钮样式修改
- uploadpng页布局调整,容器添加内边距,使用panel-shell统一面板样式
- header组件logo图片添加width和height属性,调整导航栏最小高度及z-index提升层级
- 修改CSS变量定义,统一主色调、圆角和背景样式,实现暗黑模式和浅色模式背景渐变效果
- 移除一些多余的class名和调整padding,统一整体界面空间分布和层次感
|
2026-01-04 12:11:39 +08:00 |
|
|
|
fe7128dd4e
|
feat(layout): 为多页面添加侧边栏布局组件
- 在admid页面和class页面包裹el-container,插入Sidebar侧边栏组件
- 在LearningPlan和PlanTTS页面同样新增侧边栏布局
- 重构Header组件样式,采用fluent风格透明卡片和按钮样式
- 增加main.css中panel-shell的样式定义以支持新布局视觉效果
- 优化部分按钮及菜单交互样式,提升整体一致性与视觉体验
|
2026-01-04 11:10:29 +08:00 |
|
|
|
1184ea7895
|
feat(student): 添加学习分析功能组件及相关交互
- 在班级页面列表操作栏增加“学情分析”按钮,点击弹出学情分析对话框
- 新增StudyAnalysis组件,封装学习分析生成与展示逻辑
- 学生详情页替换原有学习分析区域,统一使用StudyAnalysis组件
- 移除学生页原有学习分析相关状态管理和接口调用,简化代码
- 通过定时器模拟加载进度条,提升生成学习分析时的用户体验
|
2026-01-04 10:17:59 +08:00 |
|
|
|
e468be74b7
|
feat(exam): 添加按班级、年级、学生姓名筛选考试结果功能
- 在ExamWordsResultReqVO中新增classId、gradeId、studentName字段
- 修改ExamWordsJudgeService接口及实现,支持按筛选条件获取考试结果
- 在ExamWordsJudgeResultDOMapper中添加按学生ID列表分页查询方法
- 扩展StudentDOMapper,新增按班级、年级和姓名查询学生列表方法
- 修改ExamWordsController,支持从请求体接收筛选参数
- 修改前端exam.js,调用接口时传递筛选参数
- 在uploadpng.vue页面新增筛选表单,支持班级、年级、学生姓名输入
- 增加班级和年级选项数据的获取
- 实现筛选查询、重置功能及班级切换自动同步年级
- 在App.vue中配置Element Plus中文语言环境
- 调整配置文件,更新学习计划模板路径
- 修改接口权限配置,关闭plan/word/voice路径的鉴权
|
2025-12-31 19:21:19 +08:00 |
|
|
|
36e5231c6c
|
feat(plan): 添加学生学案查看及下载功能
- 在学生列表表格中新增“查看学案”按钮,支持查看对应学生的学案列表
- 新增StudentPlanListDialog组件,实现学案列表展示和学案文件下载
- 后端新增查询学生学案接口,支持按学生ID获取未完成学案列表
- 后端数据层和服务层添加按学生ID查询学案的方法
- 调整计划生成相关逻辑,优化学案数据字段命名
- Vue前端调用新增接口,实现学生学案列表动态加载与下载操作
- 完善学案状态显示和列表交互体验
|
2025-12-31 16:20:52 +08:00 |
|
|
|
868e0bb7bd
|
feat(plan): 支持学案生成状态轮询与进度显示
- 新增接口检查学案是否正在生成,防止重复生成任务
- 使用 Redis 缓存标识学案生成状态,设置 12 分钟过期时间
- 生成学案时记录状态至 Redis,生成完成后自动清除
- Vue 学案列表新增学案生成进度条显示与已生成标签
- 新增组件事件监听生成成功,触发轮询检测学案状态
- 轮询间隔 10 秒,动态更新学案生成进度,最高至 95%
- 路由离开与组件卸载时停止所有轮询,防止内存泄漏
- 优化学案生成逻辑,新增小测试卷自动关联及数据入库
- 更新配置文件模板路径,提高文档管理一致性
|
2025-12-31 15:41:53 +08:00 |
|
|
|
6277e3ab42
|
fix(permission): 修复权限路由跳转逻辑
- 调整判断条件,允许未登录用户访问 /plan/tts 路径
- 防止未登录时强制跳转到登录页,提升用户体验
- 修正 application-dev.yml 中 speech 配置缩进问题,保证配置正确解析
|
2025-12-30 11:59:47 +08:00 |
|
|
|
0f5169c1d7
|
refactor(ai): 重构AI客户端类并添加句子分析接口
- 将 DifyArticleClient 重命名为 DifyClient,调整相关调用引用
- 增加 sendSentenceAnalyze 方法,实现批量词汇句子分析功能
- 更新配置文件,新增 analyzeKey 和 sentenceKey 两个AI接口密钥配置
- 修改LessonPlansServiceImpl中生成连词成句功能,调用新句子分析接口
- 优化LessonPlanConstant常量,调整部分键名格式,去除空格
- 修改相关测试类适配 DifyClient 改动
- 相关VO类添加学生姓名和试题名称字段,丰富展示数据
- 更新前端table组件,替换显示学生姓名、班级名、年级名等信息字段
- 调整路由首页路径为“/”,修改Header组件对应链接
- 其他若干细节修改,如异常日志优化、时间格式展示等
|
2025-12-30 10:30:26 +08:00 |
|
|
|
5ebf40101d
|
refactor(class): 优化班级页面布局与删除功能
- 调整学生查询区域样式,使其占用两行空间
- 移除年级和单元列表中的删除按钮及新增操作相关代码
- 新增删除学生与班级前的确认弹窗提示,防止误操作
- 捕获删除确认框的取消或关闭事件,避免错误提示
- 主动导入 Element Plus 组件库样式文件,保证样式完整
- 修正角色同步代码中 Redis 写入方式,避免二次序列化问题
|
2025-12-29 15:55:36 +08:00 |
|
|
|
5858bf2ecc
|
feat(admin): 新增邀请码生成及注册校验功能
- 在管理员页面新增邀请码生成面板,支持限制使用次数和有效期
- 新增后端接口支持创建邀请码,邀请码存储在Redis并设置过期时间
- 用户注册接口新增邀请码参数,校验邀请码有效性和剩余使用次数
- 注册时成功使用邀请码后,Redis中对应邀请码的使用次数减1
- 登录接口及相关服务层逻辑新增邀请码字段支持
- 后端权限配置增加/admin路径的root角色校验
- 优化角色权限同步时Redis存储格式为列表类型
- 调整SaToken相关接口实现以支持角色ID转换逻辑
|
2025-12-29 15:44:05 +08:00 |
|
|
|
bddf6c0936
|
feat(student): 添加学习分析生成进度显示
- 在分析生成期间显示进度条和提示信息
- 引入 analyzeProgress 变量动态更新进度百分比
- 使用定时器模拟进度增长,达到 90% 后等待完成
- 分析完成后将进度设置为 100% 并清除定时器
- 调整模板逻辑,区分加载中和结果显示状态
|
2025-12-29 14:50:27 +08:00 |
|
|
|
340bc5b5e3
|
feat(auth): 实现登录注册功能和路由权限控制
- 新增 Login.vue 实现登录与注册界面,支持手机号、密码、验证码等验证
- 添加登录状态保持并在登录成功后设置 token
- 修改路由配置,新增 /login 路由,并调整默认班级页路由为 /class
- 移除 Header 组件中原有登录按钮,改为通过路由控制访问权限
- 实现路由前置守卫,根据 token 自动跳转登录页或班级页
- 添加验证码发送功能及倒计时禁用按钮逻辑
- 完善表单校验规则,区分登录和注册模式验证字段
|
2025-12-29 14:45:44 +08:00 |
|
|
|
2d76ed507e
|
feat(tts): 集成OpenAI语音合成功能并支持计划单词语音生成
- 新增TTS工具类TTSUtil,实现文本到语音的转换并通过HTTP响应返回音频流
- 在LessonPlanController添加获取计划单词列表及单词语音生成接口
- 前端新增PlanTTS页面,实现计划单词TTS的加载、生成、播放及下载功能
- 路由新增PlanTTS路由,支持访问TTS生成功能页面
- 配置文件application-dev.yml新增OpenAI TTS相关配置
- WordExportUtil生成计划文档时嵌入对应页面二维码图片
- 引入spring-ai-openai相关依赖支持OpenAI模型调用
- 新增单词语音相关请求与响应VO类,方便接口数据传输
- 新增计划单词获取接口plan/word/voice对应前端api
- 新增计划单词语音合成接口plan/word/voice/tts对应前端api
- 添加二维码生成逻辑,用于生成计划文档中的二维码图片链接
- 添加单元测试模版VoiceTest,预留TTS工具类测试接口
|
2025-12-29 12:44:16 +08:00 |
|
|
|
494ab77486
|
feat(plan): 支持学案生成时指定单词数
- 在 AddLessonPlanReqVO 中新增 wordSize 字段
- 修改 LessonPlansService 接口及实现,支持 wordSize 参数
- 优化学案生成逻辑,按指定单词数切分词汇列表
- 更新前端 LessonPlanDialog,添加单词数输入框
- 修改生成学案接口及调用,传递 wordSize 参数
- 增加查询学生词汇掌握详情接口及实现
- 添加学生词汇统计展示组件及页面集成
- 调整词汇相关 Mapper,修正记忆强度条件范围
- 更新权限配置,允许访问学生单词详情接口
|
2025-12-27 17:21:25 +08:00 |
|
|
|
0b0311d2d9
|
refactor(exam): 优化考试单词生成逻辑并新增期中期末类型
- 调整考试类型选择,增加“期中”和“期末”选项
- 删除旧的gradeId和level参数,简化接口参数为studentId和type
- 新增考试类型常量:期中(2)、期末(3)
- 实现期中考试和期末考试生成逻辑,分别根据年级及单元名称筛选词汇
- 调整服务层方法签名及调用,支持新考试类型生成流程
- 扩展Mapper接口,支持按单元名称和单元ID查询词汇
- 优化导出逻辑,导出文件名和压缩包名称根据考试标题动态生成
- 调整测试代码,适配新的方法参数和实现细节
|
2025-12-25 18:05:43 +08:00 |
|
|
|
aff862d161
|
feat(student): 新增学生词汇掌握详情及热力图展示功能
- 新增FindStudentMasteryDetailReqVO和FindStudentMasteryDetailRspVO数据类
- 学生接口新增/ student/mastery/detail,用于查询学生词汇掌握详情
- StudentService及实现类添加查询词汇掌握详情的方法
- WordMasteryLogDOMapper新增selectAllByStudentId方法支持查询
- SaTokenConfigure增加对新接口的免认证配置
- 前端api新增getStudentWordMastery方法
- 学生页面新增WordMasteryHeatmap组件并展示词汇掌握热力图
- 创建WordMasteryHeatmap组件,支持动态请求数据及Echarts热力图渲染
- 热力图按记忆强度排序,提供丰富的鼠标悬停提示信息
|
2025-12-24 16:26:22 +08:00 |
|
|
|
260c2c79f1
|
feat(student): 实现学生学习分析功能
- 新增AnalyzeStudentStudyReqVO用于分析请求参数封装
- StudentService接口新增analyzeStudentStudy方法及其实现
- 实现分析逻辑,查询最近7天学生考试及单词掌握记录,构造分析数据
- 通过DifyArticleClient调用外部AI服务生成学习分析结果
- 使用Redis缓存分析结果,设置3天过期
- 新增ExamWordsJudgeResultDetail和WordMasteryDetail数据模型
- Mapper新增支持根据学生ID和时间范围查询考试结果和单词掌握日志
- DifyArticleClient新增sendStudentAnalyze方法调用分析接口
- 前端学生页面新增学习分析面板及调用接口,支持超时设置
- 修改路由权限配置,允许访问学习分析接口
- 添加markdown-it库支持分析结果富文本渲染
- 移除RoleServiceImpl中redis设置过期时间,改为永久保存
|
2025-12-24 15:22:18 +08:00 |
|
|
|
4135b72648
|
feat(admin): 实现用户管理列表及新增用户功能
- 新增用户列表页面,实现分页查询和条件筛选
- 增加新增用户弹窗表单,支持姓名、手机号及密码录入和校验
- 后端新增 AdminController 提供用户列表查询和创建接口
- 完善 UserService 和 RoleService,支持分页用户数据获取及用户角色映射
- 丰富数据库 Mapper 增加用户及用户角色相关查询插入操作
- 定时任务 UserRoleTask 调整调用角色服务更新权限缓存
- 前端接口封装新建用户相关请求便于调用
- 使用密码加密存储新建用户密码保障安全
|
2025-12-24 11:25:27 +08:00 |
|
|
|
5404f295e4
|
feat(auth): 实现用户菜单及登出功能
- 在Header组件添加用户下拉菜单,支持显示用户名和操作选项
- 新增点击文档隐藏菜单的事件监听与清理
- 实现登出功能,调用后端登出接口,清理登录状态并跳转主页
- 路由新增管理员页面/admid及其组件admid.vue
- 删除unused的首页index.vue页面文件
- 后端新增登出接口/logout,支持用户会话注销
- 修正登录服务实现,修复密码匹配逻辑错误
- 客户端api新增logout接口调用后端登出功能
|
2025-12-24 10:25:45 +08:00 |
|
|
|
bc4c74f881
|
feat(user): 实现用户角色权限管理和登录态完善
- 新增异步任务支持,启用@EnableAsync注解
- 添加用户信息响应VO类FindUserInfoRspVO
- 修改MyBatis逆向生成配置,调整映射的表为user_role_rel
- 全局异常处理新增未登录异常处理方法
- Vue头部组件Header.vue完善登录状态显示,显示用户名或登录按钮
- 新增获取用户信息的前端API接口getUserInfo
- 新增UserController,提供获取当前用户信息接口
- UserDOMapper新增selectById方法及对应XML配置
- 设计角色与用户角色关系数据对象及MyBatis映射文件
- 新增RoleDO和UserRoleRelDO数据对象及对应Mapper接口和XML映射
- 实现UserService及其实现类UserServiceImpl,支持推送角色权限到Redis
- 新增定时任务UserRoleTask,定时同步权限数据到Redis
- 配置SaToken权限拦截器,设置登录校验及排除路径
- 实现StpInterface接口,自定义权限与角色列表获取逻辑
- 响应码枚举中添加未登录状态码NOT_LOGIN
|
2025-12-22 19:03:02 +08:00 |
|
|
|
f4498e5676
|
feat(auth): 实现基于阿里云短信验证码的登录注册功能
- 新增阿里云短信发送客户端配置及属性绑定类
- 集成阿里云短信服务实现验证码发送功能
- 基于 Sa-Token 完成登录状态管理和 token 生成
- 实现手机号验证码登录、密码登录及验证码注册支持
- 添加密码加密 Bean,使用 BCrypt 保障密码安全
- 新增 Redis 缓存验证码,实现验证码有效期和校验
- Vue 前端新增登录弹窗组件,支持三种登录模式切换
- 统一 Axios 请求添加 Token 请求头及响应错误提示
- 更新配置文件,加入 Sa-Token 相关配置项
- 调整后端数据库实体生成配置,新增用户表映射
- 添加前端依赖包 @vueuse/integrations 和 universal-cookie
- 新增前端 Cookie 操作逻辑,用于 Token 的存取管理
- 优化 Header 组件,增加 Login 按钮触发登录弹窗
|
2025-12-22 17:26:21 +08:00 |
|
|
|
515bd8fae2
|
feat(exam): 实现考试阶段单词判卷与学生水平智能诊断
- 新增ActionType枚举定义系统动作类型
- 新增DiagnosisResult和ZoneStats数据模型支持诊断结果及区域统计
- 优化ExamWordsJudgeServiceImpl判卷逻辑,支持识别图片、更新考试判卷结果
- 基于分区词汇掌握情况,实现学生当前水平年级的智能判定
- 实现基于多分区准确率的升级、降级、复习和触发重测等动作建议
- 更新学生实际年级actualGradeId并展示在学生详情页面
- 修正ExamWordsConstant年级常量及年级名称映射方法
- 优化前端生成试题对年级和难度的校验逻辑,简化参数传递
- 修改服务端端口及API代理配置,保持一致性
- 调整相关数据库Mapper,支持批量查询和更新实际年级字段
- 修改错误信息字段命名,统一为msg
- 增删改代码注释与日志,提升容错性和可读性
|
2025-12-22 14:11:11 +08:00 |
|
|
|
065da854ee
|
feat(exam): 支持按单个学生和考试类型生成考试试题
- 修改生成试题按钮仅在选中特定一个学生时可用,避免多选时误操作
- 在考试生成对话框新增“类型”选择项,支持“摸底”和“期中|期末”类型
- 调整后台接口,使用单个学生ID和考试类型替代学生ID列表参数
- 优化考试生成服务,新增摸底考试生成逻辑,按年级分区随机抽词汇
- 考试相关数据对象新增类型字段,保持数据完整性和一致性
- 修改考试判卷服务,将错误信息字段统一为msg,避免字段混淆
- 调整数据库操作,支持单个学生考试与词汇随机获取
- 同步更新测试用例和词汇库数据插入逻辑,确保环境一致性
- 修复界面生成按钮状态和对话框提交按钮的校验逻辑,提升用户体验
|
2025-12-18 17:21:37 +08:00 |
|
|
|
7a66548aed
|
feat(plan): 添加学生学案历史查询及展示功能
- 新增FindStudentPlanHistoryReqVO和FindStudentPlanHistoryListRspVO数据对象
- 将LessonPlansDO及StudentLessonPlansDO中日期类型由Date改为LocalDateTime
- LessonPlansServiceImpl中创建时间使用LocalDateTime.now()
- StudentLessonPlansService及实现类添加按学生ID查询学案历史接口
- StudentLessonPlansDOMapper及XML添加按学生ID查询学案历史SQL映射
- StudentLessonPlansController新增/history接口返回学生学案历史列表
- 前端student.vue新增学案历史图表PlanHistoryChart组件展示学案历史数据
- 新增PlanHistoryChart.vue组件,实现基于echarts的学案历史折线图
- studentLessonPlans.js新增findStudentPlanHistory接口调用后端学案历史数据接口
|
2025-12-18 12:43:48 +08:00 |
|
|
|
a50c9a2b16
|
feat(exam): 添加学生考试历史结果查看功能
- 新增接口获取指定学生的历史考试结果列表
- 数据库层新增根据学生ID查询历史考试记录的查询方法
- 服务层新增获取学生历史考试结果列表的实现
- 前端api新增调用学生考试历史接口的方法
- 学生详情页增加考试历史记录图表展示板块
- 新增考试历史折线图组件,展示正确词数和错误词数的时间变化
- 使用echarts实现折线图并支持点击显示详情
- 更新项目依赖,新增echarts库用于图表展示
|
2025-12-18 11:30:26 +08:00 |
|
|
|
eeeb48d048
|
feat(student): 添加学生详情页及相关路由和跳转按钮
- 在 class.vue 中增加“详情”按钮,可跳转至对应学生详情页
- 使用 vue-router 的 useRouter 实现页面跳转功能
- 添加 /student/:id 路由,绑定学生详情组件 student.vue
- 新增 student.vue 组件,展示学生详细信息
- 精简 Header.vue, 移除多余导航链接,优化界面展示
|
2025-12-17 17:34:41 +08:00 |
|
|
|
26674ab8a9
|
feat(student-plan): 添加完成学案功能
- 新增 FinishStudentPlanReqVO 类用于请求参数封装
- 学生端学习计划页面新增“完成”按钮及其交互状态
- 实现 finishLessonPlan API 调用,用于标记学案完成
- 后端新增 finishStudentPlan 接口,处理学案完成逻辑
- StudentLessonPlansDOMapper 增加 finfishStudentPlan 方法及对应 SQL 更新语句
- StudentLessonPlansService 添加 finishStudentLessonPlan 接口实现统计记忆单词数并更新学案状态
- VocabularyBankDOMapper 和 WordMasteryLogDOMapper 增加相关统计查询方法和 SQL
- 前端完善完成按钮状态和操作反馈,防止重复提交
|
2025-12-17 17:17:49 +08:00 |
|
|
|
fd828442b1
|
feat(plan): 支持学案文件下载功能
- 新增 DownLoadLessonPlanReqVO 请求类用于下载请求封装
- 在前端学案列表增加“下载”按钮,支持单条学案下载操作
- 实现前端下载接口,处理后端返回的 Blob 文件流并触发文件保存
- 后端新增下载接口,根据学案 ID 生成对应的 Word 文档并作为附件响应
- WordExportUtil 中新增按模板生成学案 Word 文档方法,支持工作日和周末模板切换
- LessonPlansService 新增根据 ID 查询学案的方法及对应 Mapper 实现
- 修改学案列表中“学案ID”标签为“计划ID”,提升表述准确性
- 下载过程中添加加载状态和错误信息提示,提升用户体验
|
2025-12-17 15:56:55 +08:00 |
|
|
|
dbe7312633
|
feat(student-plan): 实现学生学案查询功能
- 新增FindStudentPlansReqVO和FindStudentPlansRspVO定义请求和响应数据结构
- 新增LessonPlanItem用于描述单个学案项
- StudentLessonPlansDO模型新增isFinished属性
- 扩展StudentLessonPlansDOMapper,添加分页及按姓名查询学生学案列表方法及统计总数方法
- 扩展LessonPlansDOMapper,新增按学案ID列表批量查询方法
- 实现StudentLessonPlansService及LessonPlansService接口对应查询方法
- 新增StudentLessonPlansController,提供学生学案分页查询接口
- 在前端LearningPlan.vue添加学案查询界面及分页、搜索功能
- 封装studentLessonPlans接口axios方法,支持分页按姓名查询学生学案数据
- 添加单元测试更新验证数据库查询正确性
|
2025-12-17 15:29:36 +08:00 |
|
|
|
49cd146bc3
|
feat(plan): 添加生成学案功能及界面支持
- 新增 AddLessonPlanReqVO 数据模型用于生成学案请求参数封装
- 新增 LessonPlanController 提供生成学案的后端接口,支持异步任务执行
- 新增 LessonPlanDialog 组件,实现前端学案生成弹窗及交互逻辑
- 在班级页面添加生成学案按钮,支持单个学生选择后调用弹窗
- 添加 plan.js 接口调用封装,调用后端生成学案接口
- 完成前后端联动,实现生成学案操作的完整流程和提示信息
|
2025-12-17 11:50:23 +08:00 |
|
|
|
07b9b56e8a
|
feat(unit): 新增单元管理功能及相关接口
- 新增单元的请求和响应VO类,实现分页查询单元列表
- 新增UnitController,提供单元列表查询、添加和删除API接口
- 实现UnitService及其实现类,完成单元相关数据库操作和业务逻辑
- 扩展UnitDOMapper及对应XML,实现单元列表和数量查询功能
- 扩展GradeUnitDOMapper,支持单元与年级关联的插入与删除
- 在enlish-vue中新增单元列表展示、分页、删除及新增对话框功能
- 编写AddUnitDialog组件,实现新增单元UI及逻辑
- 新增unit.js接口封装单元相关的API请求
- 注释掉LessonPlansServiceImpl中的导出Word文档相关代码逻辑调整
- 调整class.vue页面样式和布局,集成单元管理模块并优化查询交互
|
2025-12-17 11:20:04 +08:00 |
|
|
|
7f41036193
|
feat(lessonplan): 实现基于AI的学案自动生成与管理功能
- 新增DifyArticleClient工具类,实现基于Dify API的对话与文本生成功能
- 创建LessonPlansService接口及其实现,实现学案按天生成及存储
- 设计LessonPlansDO和StudentLessonPlansDO数据对象及对应MyBatis映射和数据库操作
- 扩展VocabularyBankDO实体及Mapper,支持查询单元词汇和学生未掌握词汇
- 利用deepoove-poi模板技术生成Word格式的学习计划文档,包含词汇、复习和练习
- 开发StringToPlanMapUtil工具类,解析AI返回结果为结构化学案内容
- 新增JUnit测试用例验证AI对话功能及学案生成逻辑正确性
- 更新Spring Boot配置,添加AI接口地址及密钥等参数
- 在前端Vue项目中新建学案页面,路由配置及导航菜单支持学案访问
|
2025-12-16 19:08:58 +08:00 |
|
|
|
f8169b453e
|
feat(student): 实现学生的新增与删除功能
- 新增AddStudentReqVO和DeleteStudentReqVO请求对象
- 在StudentController中添加新增和删除学生接口
- StudentService及其实现类增加新增和删除学生方法
- 通过StudentDOMapper新增插入和逻辑删除方法
- 新增AddStudentDialog组件,实现学生添加的表单及交互
- 在class.vue页面添加新增学生按钮及删除学生操作列
- API层新增addStudent和deleteStudent接口调用
- 删除学生时更新选中状态及重新加载学生列表
- 初始化新增学生时词汇掌握记录相关数据
|
2025-12-15 16:08:42 +08:00 |
|
|
|
7aebff5f6a
|
feat(class): 添加班级删除功能
- 在班级列表表格中新增“操作”列,添加删除按钮
- 实现删除班级的接口调用逻辑
- 删除成功后刷新班级列表
- 删除当前选中班级时清空选中状态
- 添加成功和失败的用户提示信息
|
2025-12-15 15:36:40 +08:00 |
|
|
|
84239d0199
|
feat(grade): 实现年级管理的新增与删除功能
- 后端新增AddGradeReqVO和DeleteGradeReqVO请求对象
- GradeController添加新增和删除年级两个接口
- GradeService及其实现类实现新增和删除年级逻辑
- MyBatis映射新增插入和删除SQL语句
- 前端API新增addGrade和deleteGrade方法
- class.vue新增年级列表操作列及相关事件处理
- 新增AddGradeDialog组件用于输入新增年级名称
- 增加页面新增按钮及弹窗显示控制
- 实现删除年级的API调用与界面删除操作反馈
|
2025-12-15 15:01:07 +08:00 |
|
|
|
e3b993dd27
|
feat(exam): 实现按学生批量生成并下载试题功能
- 增加学生多选功能和生成试题按钮,支持批量操作
- 新增ExamGenerateDialog组件,提供选择年级和难度界面
- 设计后端接口支持多个学生ID,生成对应的试题文档
- 在后端实现批量生成Word文档并压缩打包下载
- 新增StudentDetail业务对象,完善学生信息展示
- 优化了Mapper接口及XML,支持批量查询学生和班级数据
- 提供前端API封装用于调用试题生成和下载服务
- 实现下载失败时的错误处理与提示机制
|
2025-12-15 14:32:53 +08:00 |
|
|
|
89df9af8c6
|
fix(api): 修正接口路径并优化定时任务逻辑
- 将上传考试单词图片接口路径由 /exam/words/genexam 修改为 /exam/words/submit
- AutoJudgeExamWordsTask 中注入 ExamWordsJudgeService 服务
- 定时任务中调用 examWordsJudgeService.judgeExamWords 方法实现自动判卷
- 注释掉 PngUtil 中调试用的图像保存代码,避免生成多余文件
|
2025-12-15 11:45:49 +08:00 |
|
|
|
e5a1ef1423
|
refactor(router): 调整首页路由指向班级页面
- 将首页路由组件由Index改为Class
- 修改首页路由的meta标题为“班级”
- 删除原有的/class路由配置
- 更新Header组件中“班级”链接指向根路径
- 修改全局路由守卫处理页面标题格式为“标题 - Enlish”
|
2025-12-15 11:22:18 +08:00 |
|
|
|
eb2c0d2f6c
|
feat(student): 添加学生查询功能并支持按姓名过滤
- 学生查询页面新增姓名输入框及查询、重置按钮
- 实现学生列表展示与分页功能
- 支持根据选中班级和年级联动查询学生
- 学生接口新增按姓名条件查询支持
- 服务层及Mapper层方法添加姓名参数过滤功能
- Vue页面同步新增学生相关响应式状态与方法
- 优化表格交互,支持点击行选中高亮及联动查询
|
2025-12-15 11:15:47 +08:00 |
|
|
|
857fa85c74
|
feat(grade): 添加年级列表及分页功能
- 前端新增年级列表展示表格和分页组件,同时支持加载状态显示
- 新增 grade.js 接口调用,支持分页查询年级数据
- 后端新增 GradeController 提供分页查询接口 /grade/list
- 实现 GradeService 新增分页查询和总数量统计方法
- 添加 GradeDOMapper 新增分页查询及计数 SQL 语句
- 定义请求与响应VO类用于年级分页查询接口数据传输
- 页面 onMounted 时同时请求班级列表和年级列表数据,提升数据展示完整性
|
2025-12-15 10:45:15 +08:00 |
|
|
|
ef48923422
|
feat(class): 实现班级列表分页查询功能
- 新增班级后端分页接口及相关服务实现
- 实现班级与年级关联数据查询及映射
- 新增分页请求和响应VO类支持前后端数据传输
- 修改前端class.vue,增加班级列表分页展示组件
- 增加前端分页逻辑及状态管理,支持切换页码和页面大小
- 创建GradeClassDO实体及对应Mapper实现关联查询
- 优化数据库Mapper XML,增加分页查询及计数SQL语句
- 调整MyBatis配置生成grade_class表实体类和Mapper接口
|
2025-12-15 10:27:48 +08:00 |
|
|
|
0ad8edbac1
|
feat(student): 新增学生详情接口及相关服务层支持
- 优化ClassDOMapper,重命名查询方法为selectClassDOById,并移除多余CRUD方法
- 新增ClassService接口及ClassServiceImpl实现,用于通过ID查询班级信息
- 新增GradeDO及GradeDOMapper,实现根据班级ID查询年级信息
- 新增GradeService接口及GradeServiceImpl实现根据班级ID查询年级数据
- StudentDO增加isDeleted和startTime字段,补充学生实体
- StudentDOMapper新增selectStudentById方法实现单个学生信息查询
- StudentService及其实现类新增getStudentById方法提供学生单条数据查询
- StudentController新增/detail接口,实现学生详情查询,返回学生姓名、班级、年级等信息
- 创建FindStudentDetailReqVO和FindStudentDetailRspVO用于请求和响应数据传输
- enlish-vue端新增getStudentDetail接口调用 后台学生详情接口
- 修改ExamWordsDetailCard组件,展示学生姓名及其班级、年级信息,新增fetchStudent异步方法拉取学生详情数据并显示
|
2025-12-14 16:51:45 +08:00 |
|
|
|
6eb46f606e
|
feat(exam): 优化单词详情展示为单词名称显示
- 新增接口通过单词ID批量获取对应单词名称
- 展示正确单词和错误单词时使用获取的单词名称替代ID
- 调整ExamWordsDetailCard组件,新增correctTitles和wrongTitles响应式数据
- 封装fetchTitles方法异步获取单词名称并存入状态
- 修改模板部分渲染,使用单词名称列表动态渲染el-tag标签
- 添加Vocabulary接口相关VO和控制层实现单词名称查询功能
- 新增前端接口调用实现词汇名称数据请求功能
|
2025-12-14 16:01:31 +08:00 |
|
|
|
1ace63cbe0
|
feat(exam): 新增词条结果详情查看功能
- 新增后端接口获取指定试卷词条判定结果详情
- 新增前端API调用对应接口
- 在上传结果列表页面点击表格行可弹出详情弹窗
- 新建ExamWordsDetailCard组件展示详细信息
- 显示正确词条和错误词条列表及相关统计信息
- 完善后端数据层及服务层支持详情查询功能
|
2025-12-14 15:39:41 +08:00 |
|
|
|
c1b3c92244
|
feat(exam): 增加试卷结果分页查询接口及前端显示功能
- 新增ExamWordsResultReqVO和ExamWordsResultRspVO用于请求与响应封装
- ExamWordsController新增getExamWordsResult方法支持分页查询试卷结果
- ExamWordsJudgeService接口及实现中添加分页获取试卷结果方法及统计总数
- Mapper层添加分页查询和统计的SQL语句支持
- Vue前端uploadpng页面优化为两列布局,新增结果集表格与分页控件
- 上传功能改用自定义http-request,上传后自动刷新结果列表
- Class页面调整布局增加额外展示内容
- 删除未使用接口ExamWordsJudge接口及相关引用
- 重命名ExamWordsJudge相关类和测试类以统一命名规范
|
2025-12-14 15:10:46 +08:00 |
|
|
|
9a11a7c094
|
feat(router): 初始化项目路由与页面结构
- 删除默认示例组件 HelloWorld.vue 及相关代码
- 使用 <router-view> 替换 App.vue 中的默认内容
- 引入并应用 Vue Router,实现基础页面路由配置
- 在 main.js 中注册路由插件
- 添加首页组件 index.vue,作为根路径路由的目标组件
- 配置 vite 别名 '@' 指向 src 目录,方便路径引用
- 添加 Element Plus、Flowbite 和 Vue Router 依赖,集成 UI 框架
- 配置自动导入和组件按需加载插件,简化开发流程
- 配置 Tailwind CSS 及 Flowbite 插件,设置样式基础
- 创建主样式文件 main.css 并导入 Tailwind 指令
- 添加 postcss 配置支持 Tailwind 和 autoprefixer
|
2025-12-14 12:06:08 +08:00 |
|
|
|
5585f33f95
|
feat(enlish-vue): 初始化 Vue 前端项目及配置相关文件
- 新增基础 Vue 项目结构,包含 App.vue 和 HelloWorld 组件
- 配置 Vite 作为构建工具,添加 package.json 和 package-lock.json
- 创建入口文件 main.js,初始化 Vue 应用并挂载
- 添加 index.html 作为项目的入口页面
- 更新 .gitignore,忽略 node_modules 和 .vscode 目录
- 添加 enlish-vue.iml 模块配置文件支持集成开发环境
|
2025-12-14 11:38:03 +08:00 |
|