From 9cb3ddbc3161c8813029ec50f7417b2f4e6a5237 Mon Sep 17 00:00:00 2001 From: Hexianren <1979181470@qq.com> Date: Sun, 23 Mar 2025 17:15:27 +0800 Subject: [PATCH] =?UTF-8?q?=E9=94=99=E9=A2=98=E6=A8=A1=E7=B3=8A=E6=90=9C?= =?UTF-8?q?=E7=B4=A2+=E5=93=8D=E5=BA=94=E5=BC=8F=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/action/ToolTemplateAction.java | 8 ++++ .../template/dao/WrongQuestionDao.java | 1 + .../dao/impl/WrongQuestionDaoImpl.java | 37 +++++++++++++++++++ .../service/WrongQuestionService.java | 1 + .../impl/WrongQuestionServiceImpl.java | 5 +++ .../views/HomeWorkManager/HomeWorkManger.vue | 19 ++++++++-- .../src/views/WrongManager/WrongManager.vue | 32 +++++++++------- 7 files changed, 87 insertions(+), 16 deletions(-) diff --git a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java index a06608f..8aa2756 100644 --- a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java +++ b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java @@ -83,6 +83,14 @@ import java.util.*; return R.ok().put("data", wrongQuestion); } + @Action + public R findWrongHomeWork(HttpServletRequest request)throws Exception { + Integer student_id = Integer.parseInt(request.getParameter("student_id")); + String input = String.valueOf(request.getParameter("input")); + List wrongQuestion = wrongQuestionService.findWrongHomeWork(student_id, input); + return R.ok().put("data", wrongQuestion); + } + @Action public R gerWrongQuestion(HttpServletRequest request) throws Exception { Integer homework_id = Integer.parseInt(request.getParameter("homework_id")); diff --git a/HomeWork-java/src/com/wetoband/template/dao/WrongQuestionDao.java b/HomeWork-java/src/com/wetoband/template/dao/WrongQuestionDao.java index 82bf263..516780b 100644 --- a/HomeWork-java/src/com/wetoband/template/dao/WrongQuestionDao.java +++ b/HomeWork-java/src/com/wetoband/template/dao/WrongQuestionDao.java @@ -11,6 +11,7 @@ import java.util.List; public interface WrongQuestionDao { List getWrongHomework(Connection connection, int student_id,int offset,int pageSize) throws SQLException; + List findWrongHomeWork(Connection connection, int studentId, String input) throws SQLException; List getWrongQuestion(Connection connection, int homework_id ,int student_id) throws Exception; void submitWrongQuestion(Connection connection, wrongQuestionSubmit wrongQuestionSubmit); int getWrongHomeworkCount(Connection connection, int student_id ); diff --git a/HomeWork-java/src/com/wetoband/template/dao/impl/WrongQuestionDaoImpl.java b/HomeWork-java/src/com/wetoband/template/dao/impl/WrongQuestionDaoImpl.java index 7dc9c7a..b498a09 100644 --- a/HomeWork-java/src/com/wetoband/template/dao/impl/WrongQuestionDaoImpl.java +++ b/HomeWork-java/src/com/wetoband/template/dao/impl/WrongQuestionDaoImpl.java @@ -50,6 +50,43 @@ public class WrongQuestionDaoImpl implements WrongQuestionDao { return questionList; } + @Override + public List findWrongHomeWork(Connection connection, int student_id, String input) throws SQLException { + // SQL语句 + String sql = "SELECT wrongquestionsubmit.student_id, homework.homework_id, wrongquestionsubmit.addTime, reviewStatus, homework.homework_name, homework.course_name, submit.score " + + "FROM wrongquestionsubmit " + + "JOIN homework ON homework.homework_id = wrongquestionsubmit.homework_id " + + "LEFT JOIN submit ON submit.homework_id = wrongquestionsubmit.homework_id AND submit.student_id = wrongquestionsubmit.student_id " + + "WHERE wrongquestionsubmit.student_id = ? " + + "AND CONCAT(homework.homework_name, homework.course_name) LIKE ?"; + List questionList = new ArrayList<>(); + try (PreparedStatement pstm = connection.prepareStatement(sql)) { + pstm.setInt(1, student_id); + pstm.setString(2, "%"+input+"%"); + try (ResultSet rs = pstm.executeQuery()) { + while (rs.next()) { + wrongQuestionSubmit wrongQuestionSubmit = new wrongQuestionSubmit(); + wrongQuestionSubmit.setHomework_id(rs.getInt("homework_id")); + System.out.println(rs.getTime("addTime")); + wrongQuestionSubmit.setAddTime(rs.getString("addTime")); + if (rs.getInt("reviewStatus") == 1){ + wrongQuestionSubmit.setReviewStatus("已复习"); + }else{ + wrongQuestionSubmit.setReviewStatus("未复习"); + } + wrongQuestionSubmit.setHomework_name(rs.getString("homework_name")); + wrongQuestionSubmit.setCourse_name(rs.getString("course_name")); + wrongQuestionSubmit.setScore(rs.getDouble("score")); + questionList.add(wrongQuestionSubmit); + } + } + } catch (SQLException e) { + throw e; + } + return questionList; + } + + @Override public List getWrongQuestion(Connection connection, int homework_id , int student_id) throws Exception { ArrayList questions = new ArrayList<>(); diff --git a/HomeWork-java/src/com/wetoband/template/service/WrongQuestionService.java b/HomeWork-java/src/com/wetoband/template/service/WrongQuestionService.java index 2257b42..07ed829 100644 --- a/HomeWork-java/src/com/wetoband/template/service/WrongQuestionService.java +++ b/HomeWork-java/src/com/wetoband/template/service/WrongQuestionService.java @@ -11,6 +11,7 @@ import java.util.Map; public interface WrongQuestionService { public List getWrongHomework(int student_id,int offset,int pageSize) throws Exception; + List findWrongHomeWork(int studentId, String input) throws Exception; List getWrongQuestion(int homework_id,int student_id) throws Exception; void submitWrongQuestion(Integer student_id, Integer homework_id, Date submitTimeDate, String userAnswersJson) throws Exception; int getWrongHomeworkCount(int student_id) throws Exception; diff --git a/HomeWork-java/src/com/wetoband/template/service/impl/WrongQuestionServiceImpl.java b/HomeWork-java/src/com/wetoband/template/service/impl/WrongQuestionServiceImpl.java index a4bae72..90f8e8c 100644 --- a/HomeWork-java/src/com/wetoband/template/service/impl/WrongQuestionServiceImpl.java +++ b/HomeWork-java/src/com/wetoband/template/service/impl/WrongQuestionServiceImpl.java @@ -27,6 +27,11 @@ public class WrongQuestionServiceImpl implements WrongQuestionService { return wrongQuestionDao.getWrongHomework(connection,student_id,offset,pageSize); } + public List findWrongHomeWork(int student_id,String input) throws Exception { + final Connection connection = ActionToolBase.getDBConnection(); + return wrongQuestionDao.findWrongHomeWork(connection,student_id,input); + } + @Override public List getWrongQuestion(int homework_id,int student_id) throws Exception { final Connection connection = ActionToolBase.getDBConnection(); diff --git a/HomeWork-vite/src/views/HomeWorkManager/HomeWorkManger.vue b/HomeWork-vite/src/views/HomeWorkManager/HomeWorkManger.vue index 34ea85c..cc58873 100644 --- a/HomeWork-vite/src/views/HomeWorkManager/HomeWorkManger.vue +++ b/HomeWork-vite/src/views/HomeWorkManager/HomeWorkManger.vue @@ -16,7 +16,6 @@ - @@ -26,7 +25,7 @@ -

错题管理

- @@ -14,8 +13,10 @@ - - + + @@ -108,21 +109,13 @@ const filteredWrongQuestions = computed(() => { String(val).toLowerCase().includes(searchQuery.value.toLowerCase()))) { return false } - if (filterValue.value && !String(question[filterValue.value]).toLowerCase().includes(searchQuery.value.toLowerCase())) { +/* if (filterValue.value && !String(question[filterValue.value]).toLowerCase().includes(searchQuery.value.toLowerCase())) { return false - } + } */ return true }) }) -const refreshData = () => { - ElMessage.success('数据已刷新') -} - -const handleSearch = () => { - currentPage.value = 1 -} - const handleSizeChange = (val) => { pageSize.value = val getWrongHomework() @@ -150,6 +143,19 @@ const handleJumpTo = () => { ElMessage.warning('请输入有效的页码') } } + +//模糊搜索错题作业 +const FindWrongHomework = async (searchQuery) => { + await HttpClient.get('findWrongHomeWork', { + student_id: 1, + input: searchQuery + }).then(res => { + wrongQuestions.value = res.data.data + console.log("返回的数据:"+res) + }).catch(err => { + console.log("报错:"+err) + }) +} const getWrongHomework = async () => { await HttpClient.get('getWrongHomework', { student_id: 1, -- Gitee