diff --git a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java index a06608f23887695c5bba024810cab79ccb07964d..8aa275628c8f7b77521df5a6d3f6631aae11f105 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 82bf2637f16835ae41d9215a8160bc2b4c92000d..516780b3f4b6a7643a02eb4dff5fb78dc3ef5433 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 7dc9c7a696ef6d7696c5637ff7be0ceb2542bdfd..b498a09c9fc12181afc1433882d34067f81a6555 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 2257b42844a09feeb6de904a31165b98883b140e..07ed82989e8b3627270028c3782cc14c59b59644 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 a4bae72a736cfcc4be3abe42e50e27601eb6a55a..90f8e8c171990915c8f1f38cdf37e3cd8359880a 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 34ea85c903bd693b50653dc702e576d65602d31c..cc58873660323335d1d2c6f3fe2ba5a218e5142b 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,