From 390dd6aa8f2545d67ac58e8fefbd1d2014a44278 Mon Sep 17 00:00:00 2001 From: yuan <3558860895@qq.com> Date: Sat, 30 Nov 2024 00:29:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=99=E5=B8=88=E7=AB=AF=E5=AE=8C=E5=96=84?= =?UTF-8?q?=E6=89=B9=E6=94=B9=E4=B8=AD=E5=BF=83=EF=BC=8C=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=95=99=E5=B8=88=E7=AB=AF=E6=9F=A5=E7=9C=8B=E8=AF=95=E5=8D=B7?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=EF=BC=8C=E5=AE=8C=E5=96=84=E5=AD=A6=E7=94=9F?= =?UTF-8?q?=E7=AB=AF=E9=83=A8=E5=88=86=E5=8A=9F=E8=83=BD=E7=BC=BA=E5=B0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../student/StudentHomePageController.java | 6 +- .../teacher/TeacherAnswerSheetController.java | 29 ++ .../com/ruoyi/test/domain/DO/Correct.java | 15 + .../com/ruoyi/test/domain/Markedtest.java | 6 +- .../java/com/ruoyi/test/domain/Message.java | 13 + .../com/ruoyi/test/domain/Vo/MessageVo.java | 12 + .../test/domain/Vo/QuestionanswerVo.java | 6 + .../com/ruoyi/test/mapper/MessageMapper.java | 12 + .../ruoyi/test/seriver/IAnswerService.java | 1 + .../test/seriver/IMarkedtestService.java | 3 + .../ruoyi/test/seriver/IMassageService.java | 8 + .../test/seriver/IStudentClassService.java | 3 + .../seriver/ITeacherManageClassService.java | 4 + .../test/seriver/ITeacherSubjectService.java | 2 +- .../seriver/Impl/MarkedtestServiceImpl.java | 61 +++- .../test/seriver/Impl/MessageServiceImpl.java | 31 ++ .../Impl/QuestionanswerServiceImpl.java | 17 +- .../seriver/Impl/StudentClassServiceImpl.java | 24 ++ .../Impl/TeacherManageClassServiceImpl.java | 19 + .../Impl/TeacherSubjectServiceImpl.java | 8 +- .../resources/mapper/MarkedtestMapper.xml | 2 - .../main/resources/mapper/MessageMapper.xml | 21 ++ vue2/vue/src/components/Teacher/Aside.vue | 6 +- vue2/vue/src/main.js | 6 +- vue2/vue/src/router/index.js | 8 +- .../vue/src/views/Student/TestPaperDetail.vue | 65 +++- vue2/vue/src/views/Teacher/Correct.vue | 152 +++++++- vue2/vue/src/views/Teacher/ViewExamPaper.vue | 328 ++++++++++++++++++ 28 files changed, 818 insertions(+), 50 deletions(-) create mode 100644 ruoyi-test/src/main/java/com/ruoyi/test/domain/DO/Correct.java create mode 100644 ruoyi-test/src/main/java/com/ruoyi/test/domain/Message.java create mode 100644 ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/MessageVo.java create mode 100644 ruoyi-test/src/main/java/com/ruoyi/test/mapper/MessageMapper.java create mode 100644 ruoyi-test/src/main/java/com/ruoyi/test/seriver/IMassageService.java create mode 100644 ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/MessageServiceImpl.java create mode 100644 ruoyi-test/src/main/resources/mapper/MessageMapper.xml create mode 100644 vue2/vue/src/views/Teacher/ViewExamPaper.vue diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/student/StudentHomePageController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/student/StudentHomePageController.java index 4d8d387..d8c4347 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/student/StudentHomePageController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/student/StudentHomePageController.java @@ -128,8 +128,8 @@ public class StudentHomePageController { return R.ok(iQuestionanswerService.selectQuestionanswer(id,testid)); } - //主观题自动更改 - @ApiOperation("任务中心主观题批改") + //客观题自动更改 + @ApiOperation("任务中心客观题批改") @GetMapping("task_answerDisplay") public R taskAnswerDisplay(Long id) { SysUser sysUser = SecurityUtils.getLoginUser().getUser(); @@ -143,7 +143,7 @@ public class StudentHomePageController { return R.fail("查不到该学生的考试记录!"); } - @ApiOperation("任务中心批改客观题") + @ApiOperation("任务中心批改主观题") @PostMapping("task_markObjectiveQuestions") public R taskMarkObjectiveQuestions(@RequestBody QuestionAnswerDO questionAnswerDO) { if(iQuestionanswerService.markObjectiveQuestions(questionAnswerDO)!=0){ diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/teacher/TeacherAnswerSheetController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/teacher/TeacherAnswerSheetController.java index ca75ece..0f3a773 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/teacher/TeacherAnswerSheetController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/test/teacher/TeacherAnswerSheetController.java @@ -4,13 +4,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.test.domain.DO.Correct; import com.ruoyi.test.domain.DO.QuestionAnswerDO; import com.ruoyi.test.domain.Markedtest; +import com.ruoyi.test.domain.Message; import com.ruoyi.test.domain.StudentClass; import com.ruoyi.test.domain.TeacherManageClass; +import com.ruoyi.test.domain.Vo.MessageVo; import com.ruoyi.test.seriver.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -43,12 +47,31 @@ public class TeacherAnswerSheetController { @Autowired private ITeacherManageClassService iTeacherManageClassService; + @Autowired + private IMassageService iMassageService; + @ApiOperation("查看学生的考试情况(最新)") @GetMapping("selectQuestionanswer") public R selectQuestionanswer(Long senderId, Long testid) { + System.out.println("==============="+senderId+" "+testid); return R.ok(iQuestionanswerService.selectQuestionanswer(senderId,testid)); } + @ApiOperation("检查是否批改") + @GetMapping("selectMarkedtestList") + public R> selectMarkedtestList() { + SysUser sysUser = SecurityUtils.getLoginUser().getUser(); + List teacherManageClass = iTeacherManageClassService.selectById(sysUser.getUserId()); + List list = iStudentClassService.selectByTeacherIdList(teacherManageClass); + return R.ok(iMarkedtestService.selectByStudentList(sysUser.getUserId(),list)); + } + + @ApiOperation("添加提醒消息") + @PostMapping("addMessage") + public R addMessage(@RequestBody MessageVo messageVo) { + return R.ok(iMassageService.addMessage(messageVo)); + } + @ApiOperation("批改客观题") @PostMapping("markObjectiveQuestions") public R markObjectiveQuestions(@RequestBody QuestionAnswerDO questionAnswerDO) { @@ -58,6 +81,12 @@ public class TeacherAnswerSheetController { return R.fail("批改提交失败!"); } + @ApiOperation("获取某一张的分数") + @GetMapping("getScoreByTestId") + public R getScoreByTestId(Long studentId,Long testId) { + return R.ok(iMarkedtestService.selectmarkedtestByTestid(studentId,testId)); + } + @ApiOperation("试卷批改完毕提交") @PostMapping("addmarkedtest") diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/domain/DO/Correct.java b/ruoyi-test/src/main/java/com/ruoyi/test/domain/DO/Correct.java new file mode 100644 index 0000000..fc46f01 --- /dev/null +++ b/ruoyi-test/src/main/java/com/ruoyi/test/domain/DO/Correct.java @@ -0,0 +1,15 @@ +package com.ruoyi.test.domain.DO; + +import lombok.Data; + +@Data +public class Correct { + + private Long sendId; + private Long testId; + private String subject; + private String name; + private String senderName; + private Integer status; + +} diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/domain/Markedtest.java b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Markedtest.java index 3ecaa99..fe30ac8 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/domain/Markedtest.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Markedtest.java @@ -8,9 +8,9 @@ import lombok.Data; public class Markedtest { private Long senderId; - private long testid; - private double score; - private double totalscore; + private Long testid; + private Double score; + private Double totalscore; private Integer totalquestions; private Integer tquestions; private Integer time; diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/domain/Message.java b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Message.java new file mode 100644 index 0000000..4c95f6f --- /dev/null +++ b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Message.java @@ -0,0 +1,13 @@ +package com.ruoyi.test.domain; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +@Data +@TableName("message") +public class Message { + private Long teacherId; + private Long studentId; + private String source; + private String tf; +} diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/MessageVo.java b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/MessageVo.java new file mode 100644 index 0000000..20e246f --- /dev/null +++ b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/MessageVo.java @@ -0,0 +1,12 @@ +package com.ruoyi.test.domain.Vo; + +import lombok.Data; + +@Data +public class MessageVo { + private Long teacherId; + private Long studentId; + private String source; + private String tf; + private String name; +} diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/QuestionanswerVo.java b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/QuestionanswerVo.java index ec707be..731216e 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/QuestionanswerVo.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/domain/Vo/QuestionanswerVo.java @@ -2,11 +2,15 @@ package com.ruoyi.test.domain.Vo; import lombok.Data; +import java.util.List; +import java.util.Map; + @Data public class QuestionanswerVo { private Long id; private String content; + private List> chance; //学生给的答案 private String idanswer; @@ -20,4 +24,6 @@ public class QuestionanswerVo { private String analysis; + private String type; + } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/mapper/MessageMapper.java b/ruoyi-test/src/main/java/com/ruoyi/test/mapper/MessageMapper.java new file mode 100644 index 0000000..c3f0ce8 --- /dev/null +++ b/ruoyi-test/src/main/java/com/ruoyi/test/mapper/MessageMapper.java @@ -0,0 +1,12 @@ +package com.ruoyi.test.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.test.domain.Message; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface MessageMapper extends BaseMapper { + + int addMessage(@Param("message") Message message); +} diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IAnswerService.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IAnswerService.java index b153ca7..e53bc0a 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IAnswerService.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IAnswerService.java @@ -15,4 +15,5 @@ public interface IAnswerService { Boolean selectBySenderIdAndTestId(Long senderId,Long testid); + } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IMarkedtestService.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IMarkedtestService.java index de5fdcf..9df4668 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IMarkedtestService.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IMarkedtestService.java @@ -1,6 +1,7 @@ package com.ruoyi.test.seriver; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.ruoyi.test.domain.DO.Correct; import com.ruoyi.test.domain.Markedtest; import com.ruoyi.test.domain.StudentClass; @@ -25,4 +26,6 @@ public interface IMarkedtestService { Markedtest selectmarkedtestBySenderIdAndTestid(Long senderId,Long testId); Markedtest selectmarkedtestByTestid(Long id,Long testId); + + List selectByStudentList(Long id,List list); } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IMassageService.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IMassageService.java new file mode 100644 index 0000000..8e07814 --- /dev/null +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IMassageService.java @@ -0,0 +1,8 @@ +package com.ruoyi.test.seriver; + +import com.ruoyi.test.domain.Vo.MessageVo; + +public interface IMassageService { + + int addMessage(MessageVo messageVo); +} diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IStudentClassService.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IStudentClassService.java index 9a86b7b..860c063 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IStudentClassService.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/IStudentClassService.java @@ -15,4 +15,7 @@ public interface IStudentClassService { StudentClass selectById(Long id); + List selectByTeacherIdList(List teacherManageClasses); + + } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/ITeacherManageClassService.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/ITeacherManageClassService.java index 5c0605c..9fb7781 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/ITeacherManageClassService.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/ITeacherManageClassService.java @@ -13,4 +13,8 @@ public interface ITeacherManageClassService { int addclass1(Long teacherid,String grade,String Class1); TeacherManageClass selectByGradeAndClass(String grade,String Class1); + + List selectById(Long teacherid); + + List selectByTeacherId(Long teacherid); } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/ITeacherSubjectService.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/ITeacherSubjectService.java index 1517cda..f213237 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/ITeacherSubjectService.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/ITeacherSubjectService.java @@ -6,6 +6,6 @@ import java.util.List; public interface ITeacherSubjectService { - List select(Long teacherid); + List select(Long teacherid); } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/MarkedtestServiceImpl.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/MarkedtestServiceImpl.java index c4d7285..be3c904 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/MarkedtestServiceImpl.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/MarkedtestServiceImpl.java @@ -4,7 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.system.service.ISysUserService; import com.ruoyi.test.domain.*; +import com.ruoyi.test.domain.DO.Correct; import com.ruoyi.test.domain.DO.QuestionAnswerDO; import com.ruoyi.test.domain.Vo.MarkedtestVo; import com.ruoyi.test.domain.Vo.QuestionanswerVo; @@ -19,9 +21,8 @@ import org.springframework.data.domain.PageRequest; import org.springframework.security.core.parameters.P; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; @Service public class MarkedtestServiceImpl extends ServiceImpl implements IMarkedtestService { @@ -44,13 +45,21 @@ public class MarkedtestServiceImpl extends ServiceImpl selectByStudentList(Long id,List list) { + List teacherSubjectList = iTeacherSubjectService.select(id); + List teacherManageClasses = iTeacherManageClassService.selectByTeacherId(id); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(ExamPaper::getSubject,teacherSubjectList) + .in(ExamPaper::getGrade,teacherManageClasses); + List examPapers = examPaperMapper.selectList(queryWrapper); + List list1 = list.stream() + .flatMap(studentId -> { + List list2 = new ArrayList<>(); + + for(ExamPaper examPaper : examPapers){ + Correct correct = new Correct(); + correct.setSubject(examPaper.getSubject()); + correct.setTestId(examPaper.getId()); + correct.setName(examPaper.getName()); + correct.setSenderName(iSysUserService.selectUserById(studentId).getUserName()); + correct.setSendId(studentId); + + if(iAnswerService.selectBySenderIdAndTestId(studentId,examPaper.getId())){ + LambdaQueryWrapper queryWrapper1 = new LambdaQueryWrapper<>(); + queryWrapper1.eq(Markedtest::getSenderId,studentId) + .eq(Markedtest::getTestid,examPaper.getId()); + if(markedtestMapper.selectCount(queryWrapper1)>0){ + correct.setStatus(0); + }else{ + correct.setStatus(1); + } + }else{ + correct.setStatus(2); + } + list2.add(correct); + } + + return list2.stream(); + }) + .collect(Collectors.toList()); + + return list1; + } + } \ No newline at end of file diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/MessageServiceImpl.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/MessageServiceImpl.java new file mode 100644 index 0000000..fd23da3 --- /dev/null +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/MessageServiceImpl.java @@ -0,0 +1,31 @@ +package com.ruoyi.test.seriver.Impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.system.service.ISysUserService; +import com.ruoyi.test.domain.Message; +import com.ruoyi.test.domain.Vo.MessageVo; +import com.ruoyi.test.mapper.MessageMapper; +import com.ruoyi.test.seriver.IMassageService; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class MessageServiceImpl extends ServiceImpl implements IMassageService { + + @Autowired + private MessageMapper messageMapper; + + @Autowired + private ISysUserService iSysUserService; + + @Override + public int addMessage(MessageVo messageVo) { + Message message = new Message(); + BeanUtils.copyProperties(messageVo,message); + String teahcerName = iSysUserService.selectUserById(message.getTeacherId()).getUserName(); + String source = "教师"+teahcerName+"提醒你请尽快完成"+messageVo.getName(); + message.setSource(source); + return messageMapper.addMessage(message); + } +} diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/QuestionanswerServiceImpl.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/QuestionanswerServiceImpl.java index 76f51f1..eab0d4d 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/QuestionanswerServiceImpl.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/QuestionanswerServiceImpl.java @@ -12,6 +12,7 @@ import com.ruoyi.test.domain.Questionbank; import com.ruoyi.test.domain.Vo.AnswerVo; import com.ruoyi.test.domain.Vo.QuestionanswerVo; import com.ruoyi.test.mapper.QuestionanswerMapper; +import com.ruoyi.test.seriver.IQuestionTypeService; import com.ruoyi.test.seriver.IQuestionanswerService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -24,6 +25,9 @@ public class QuestionanswerServiceImpl extends ServiceImpl list, Answer answer) { QuestionAnswerDO questionAnswerDO = new QuestionAnswerDO(); @@ -44,6 +48,10 @@ public class QuestionanswerServiceImpl extends ServiceImpl> listMap = gson.fromJson(chance,List.class); + questionanswerVo.setChance(listMap); + questionanswerVo.setType(iQuestionTypeService.getQuestiontype(questionbank.getQuestiontype())); // 使用流和 Lambda 表达式查找具有特定键的 HashMap Optional result = dataList.stream() @@ -97,14 +105,14 @@ public class QuestionanswerServiceImpl extends ServiceImpl dataList = gson.fromJson(qa,List.class); + Type listType = new TypeToken>(){}.getType(); + List questionAnswerList = gson.fromJson(qa, listType); QuestionAnswerDO questionAnswerDO = new QuestionAnswerDO(); + questionAnswerDO.setSenderId(senderId); questionAnswerDO.setTestid(questionanswer.getTestid()); - questionAnswerDO.setList(dataList); + questionAnswerDO.setList(questionAnswerList); // System.out.println(questionAnswerDO); return questionAnswerDO; } @@ -117,6 +125,7 @@ public class QuestionanswerServiceImpl extends ServiceImpl implements IStudentClassService { @@ -49,5 +51,27 @@ public class StudentClassServiceImpl extends ServiceImpl selectByTeacherIdList(List teacherManageClasses) { + // 用于存储查询结果的学生ID列表 + List studentIds = teacherManageClasses.stream() + .flatMap(teacherManageClass -> { + // 对每个TeacherManageClass查询符合的学生ID + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(StudentClass::getClass1, teacherManageClass.getClass1()) + .eq(StudentClass::getGrade, teacherManageClass.getGrade()); + + // 执行查询,获取学生ID列表 + List ids = studentClassMapper.selectList(queryWrapper) + .stream() + .map(StudentClass::getStudentid) // 提取学生ID + .collect(Collectors.toList()); + return ids.stream(); + }) + .collect(Collectors.toList()); // 最终返回所有符合条件的学生ID列表 + + return studentIds; + } + } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/TeacherManageClassServiceImpl.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/TeacherManageClassServiceImpl.java index dcfcbb3..0452af9 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/TeacherManageClassServiceImpl.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/TeacherManageClassServiceImpl.java @@ -8,7 +8,9 @@ import com.ruoyi.test.seriver.ITeacherManageClassService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Collections; import java.util.List; +import java.util.stream.Collectors; @Service public class TeacherManageClassServiceImpl extends ServiceImpl implements ITeacherManageClassService { @@ -40,4 +42,21 @@ public class TeacherManageClassServiceImpl extends ServiceImpl selectById(Long teacherid) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(TeacherManageClass::getTeacherid,teacherid); + return teacherManageClassMapper.selectList(queryWrapper); + } + + @Override + public List selectByTeacherId(Long teacherid) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(TeacherManageClass::getTeacherid,teacherid); + return teacherManageClassMapper.selectList(queryWrapper) + .stream() + .map(TeacherManageClass::getGrade) + .collect(Collectors.toList()); + } } diff --git a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/TeacherSubjectServiceImpl.java b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/TeacherSubjectServiceImpl.java index d38c213..f16590f 100644 --- a/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/TeacherSubjectServiceImpl.java +++ b/ruoyi-test/src/main/java/com/ruoyi/test/seriver/Impl/TeacherSubjectServiceImpl.java @@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; +import java.util.stream.Collectors; @Service public class TeacherSubjectServiceImpl extends ServiceImpl implements ITeacherSubjectService { @@ -17,9 +18,12 @@ public class TeacherSubjectServiceImpl extends ServiceImpl select(Long teacherid) { + public List select(Long teacherid) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(TeacherSubject::getTeacherid,teacherid); - return teacherSubjectMapper.selectList(queryWrapper); + return teacherSubjectMapper.selectList(queryWrapper) + .stream() + .map(TeacherSubject::getSubject) + .collect(Collectors.toList()); } } diff --git a/ruoyi-test/src/main/resources/mapper/MarkedtestMapper.xml b/ruoyi-test/src/main/resources/mapper/MarkedtestMapper.xml index 9376eef..3e4e67d 100644 --- a/ruoyi-test/src/main/resources/mapper/MarkedtestMapper.xml +++ b/ruoyi-test/src/main/resources/mapper/MarkedtestMapper.xml @@ -8,7 +8,6 @@ insert into markedtest( sender_id, - sender, testid, score, totalscore, @@ -18,7 +17,6 @@ finishtime )values ( #{markedtest.senderId}, - #{markedtest.sender}, #{markedtest.testid}, #{markedtest.score}, #{markedtest.totalscore}, diff --git a/ruoyi-test/src/main/resources/mapper/MessageMapper.xml b/ruoyi-test/src/main/resources/mapper/MessageMapper.xml new file mode 100644 index 0000000..b2b1215 --- /dev/null +++ b/ruoyi-test/src/main/resources/mapper/MessageMapper.xml @@ -0,0 +1,21 @@ + + + + + + + + + insert into message( + teacher_id, + student_id, + source, + tf + )values ( + #{message.teacherId}, + #{message.studentId}, + #{message.source}, + #{message.tf} + ) + + diff --git a/vue2/vue/src/components/Teacher/Aside.vue b/vue2/vue/src/components/Teacher/Aside.vue index 231a524..5171a70 100644 --- a/vue2/vue/src/components/Teacher/Aside.vue +++ b/vue2/vue/src/components/Teacher/Aside.vue @@ -15,15 +15,15 @@ 主页 - + 试卷中心 - + 分数查询 - + 批改中心 diff --git a/vue2/vue/src/main.js b/vue2/vue/src/main.js index 993941e..c61290c 100644 --- a/vue2/vue/src/main.js +++ b/vue2/vue/src/main.js @@ -1,11 +1,11 @@ -import Vue from 'vue'; -import App from './App.vue'; -import ElementUI from 'element-ui'; import 'element-ui/lib/theme-chalk/index.css'; import './assets/gloable.css'; import store from './store'; // 确保这个路径是正确的 import router from './router'; import request from "@/utils/request"; +import Vue from 'vue'; +import App from './App.vue'; +import ElementUI from 'element-ui'; // 使用 ElementUI 组件库 Vue.use(ElementUI, { size: 'small' }); diff --git a/vue2/vue/src/router/index.js b/vue2/vue/src/router/index.js index 31d2145..4f63915 100644 --- a/vue2/vue/src/router/index.js +++ b/vue2/vue/src/router/index.js @@ -8,6 +8,12 @@ import store from '../store'; // 引入 Vuex store Vue.use(VueRouter); const routes = [ + { + path:'/teacher/viewExamPaper', + name:'ViewExamPaper', + component: () => import(/* webpackChunkName: "about" */ '../views/Teacher/ViewExamPaper.vue'), + meta: { requiresAuth: true } + }, { path: '/teacher/homePage', name: 'HomePage', @@ -73,7 +79,7 @@ const router = new VueRouter({ // 路由守卫 router.beforeEach((to, from, next) => { const userId = to.query.userId; - console.log('userId:', to); + console.log('userId:', store.state.tokens[userId]); // 判断该路由是否需要登录权限 if (to.matched.some(record => record.meta.requiresAuth)) { // 如果未登录,跳转到登录页 diff --git a/vue2/vue/src/views/Student/TestPaperDetail.vue b/vue2/vue/src/views/Student/TestPaperDetail.vue index db3ef6f..45bd247 100644 --- a/vue2/vue/src/views/Student/TestPaperDetail.vue +++ b/vue2/vue/src/views/Student/TestPaperDetail.vue @@ -1,8 +1,6 @@ + + +