From 9028e798dc7fbe89fa8110f9847a9e499fee45bb Mon Sep 17 00:00:00 2001 From: Sakura <2337674687@qq.com> Date: Tue, 11 Mar 2025 17:55:36 +0800 Subject: [PATCH 1/3] =?UTF-8?q?3.11-=E5=88=86=E9=A1=B5=E5=99=A8=E5=9F=BA?= =?UTF-8?q?=E6=9C=AC=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../template/action/ToolTemplateAction.java | 16 +++- .../template/dao/WrongQuestionDao.java | 3 +- .../template/dao/impl/HomeWorkDaoImpl.java | 23 +++--- .../dao/impl/WrongQuestionDaoImpl.java | 23 +++++- .../service/WrongQuestionService.java | 3 +- .../impl/WrongQuestionServiceImpl.java | 12 ++- .../target/classes/config.properties | 2 +- HomeWork-java/tempResources/config.properties | 2 +- .../src/views/WrongManager/WrongManager.vue | 77 ++++++++++--------- 9 files changed, 98 insertions(+), 63 deletions(-) diff --git a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java index f493e93..eef5073 100644 --- a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java +++ b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java @@ -66,7 +66,6 @@ import java.util.*; @Action public R getHomeWork(HttpServletRequest request) throws Exception { Integer id =Integer.parseInt(request.getParameter("id")); - System.out.println("123"+request.getParameter("currentPage")); int currentPage = Integer.parseInt(request.getParameter("currentPage")); int pageSize = Integer.parseInt(request.getParameter("pageSize")); int offset = (currentPage-1)*pageSize; @@ -76,14 +75,23 @@ import java.util.*; @Action public R getHomeWorkCount(HttpServletRequest request) throws Exception { - Integer id =Integer.parseInt(request.getParameter("id")); - int count = homeWorkService.getCount(id); + Integer student_id =Integer.parseInt(request.getParameter("id")); + int count = homeWorkService.getCount(student_id); + return R.ok().put("data",count); + } + @Action + public R getWrongHomeworkCount(HttpServletRequest request) throws Exception { + int student_id =Integer.parseInt(request.getParameter("student_id")); + int count = wrongQuestionService.getWrongHomeworkCount(student_id); return R.ok().put("data",count); } @Action public R getWrongHomework(HttpServletRequest request) throws Exception { Integer student_id =Integer.parseInt(request.getParameter("student_id")); - List wrongQuestion = wrongQuestionService.getWrongHomework(student_id); + int currentPage = Integer.parseInt(request.getParameter("currentPage")); + int pageSize = Integer.parseInt(request.getParameter("pageSize")); + int offset = (currentPage-1)*pageSize; + List wrongQuestion = wrongQuestionService.getWrongHomework(student_id,offset,pageSize); return R.ok().put("data",wrongQuestion); } diff --git a/HomeWork-java/src/com/wetoband/template/dao/WrongQuestionDao.java b/HomeWork-java/src/com/wetoband/template/dao/WrongQuestionDao.java index 82b71ca..82bf263 100644 --- a/HomeWork-java/src/com/wetoband/template/dao/WrongQuestionDao.java +++ b/HomeWork-java/src/com/wetoband/template/dao/WrongQuestionDao.java @@ -10,7 +10,8 @@ import java.sql.SQLException; import java.util.List; public interface WrongQuestionDao { - List getWrongHomework(Connection connection, int student_id) throws SQLException; + List getWrongHomework(Connection connection, int student_id,int offset,int pageSize) 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/HomeWorkDaoImpl.java b/HomeWork-java/src/com/wetoband/template/dao/impl/HomeWorkDaoImpl.java index 3de27ea..1e5681f 100644 --- a/HomeWork-java/src/com/wetoband/template/dao/impl/HomeWorkDaoImpl.java +++ b/HomeWork-java/src/com/wetoband/template/dao/impl/HomeWorkDaoImpl.java @@ -17,12 +17,7 @@ public class HomeWorkDaoImpl extends BaseDaoImpl implements HomeWorkDa @Override public int getCount(Connection connection, int id) throws SQLException { int count = 0; - String sql ="SELECT COUNT(*)\n" + - "FROM\n" + - " homework\n" + - " JOIN teacher ON homework.teacher_id = teacher.id\n" + - " LEFT JOIN submit ON submit.student_id = ? \n" + - " AND homework.homework_id = submit.homework_id;"; + String sql ="SELECT COUNT(homework_id) AS count FROM submit WHERE student_id = ?"; try (PreparedStatement pstm = connection.prepareStatement(sql)){ pstm.setInt(1, id); try (ResultSet rs = pstm.executeQuery()){ @@ -39,18 +34,22 @@ public class HomeWorkDaoImpl extends BaseDaoImpl implements HomeWorkDa @Override public List getHomeWork(Connection connection, int id,int offset, int pageSize) throws SQLException { - // SQL语句 - String sql ="SELECT homework.*,teacher.name,submit.submitStatus,submit.score FROM homework " + - "JOIN teacher ON homework.teacher_id = teacher.id " + - "LEFT JOIN submit ON submit.student_id = ? AND homework.homework_id = submit.homework_id " + + String sql = "SELECT " + + " homework.*, " + + " teacher.NAME, " + + " submit.submitStatus, " + + " submit.score " + + "FROM " + + " homework " + + " RIGHT JOIN submit ON submit.student_id = ? " + + " INNER JOIN teacher ON teacher.id = submit.teacher_id " + + " AND homework.homework_id = submit.homework_id " + "LIMIT ?, ?"; List homeworkList = new ArrayList<>(); try (PreparedStatement pstm = connection.prepareStatement(sql)) { pstm.setInt(1, id); - System.out.println(offset); - System.out.println(pageSize); pstm.setInt(2, offset); pstm.setInt(3, pageSize); try (ResultSet rs = pstm.executeQuery()) { 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 315d879..c0edfb4 100644 --- a/HomeWork-java/src/com/wetoband/template/dao/impl/WrongQuestionDaoImpl.java +++ b/HomeWork-java/src/com/wetoband/template/dao/impl/WrongQuestionDaoImpl.java @@ -14,16 +14,19 @@ import java.util.List; @Repository public class WrongQuestionDaoImpl implements WrongQuestionDao { @Override - public List getWrongHomework(Connection connection, int student_id) throws SQLException { + public List getWrongHomework(Connection connection, int student_id,int offset,int pageSize) 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 = ?"; + "WHERE wrongquestionsubmit.student_id = ? " + + "LIMIT ?, ?"; List questionList = new ArrayList<>(); try (PreparedStatement pstm = connection.prepareStatement(sql)) { pstm.setInt(1, student_id); + pstm.setInt(2, offset); + pstm.setInt(3, pageSize); try (ResultSet rs = pstm.executeQuery()) { while (rs.next()) { wrongQuestionSubmit wrongQuestionSubmit = new wrongQuestionSubmit(); @@ -119,4 +122,20 @@ public class WrongQuestionDaoImpl implements WrongQuestionDao { throw new RuntimeException("Failed to submit homework", e); } } + + @Override + public int getWrongHomeworkCount(Connection connection, int student_id) { + String sql = "SELECT COUNT(homework_id) AS count FROM homework_wrongquestion WHERE student_id = ?"; + int count = 0; + try(PreparedStatement pstm = connection.prepareStatement(sql)) { + pstm.setInt(1, student_id); + ResultSet rs = pstm.executeQuery(); + while (rs.next()) { + count = rs.getInt("count"); + } + } catch (SQLException e) { + throw new RuntimeException(e); + } + return count; + } } diff --git a/HomeWork-java/src/com/wetoband/template/service/WrongQuestionService.java b/HomeWork-java/src/com/wetoband/template/service/WrongQuestionService.java index b69f1fc..2257b42 100644 --- a/HomeWork-java/src/com/wetoband/template/service/WrongQuestionService.java +++ b/HomeWork-java/src/com/wetoband/template/service/WrongQuestionService.java @@ -10,7 +10,8 @@ import java.util.List; import java.util.Map; public interface WrongQuestionService { - public List getWrongHomework(int student_id) throws Exception; + public List getWrongHomework(int student_id,int offset,int pageSize) 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 4c578aa..a4bae72 100644 --- a/HomeWork-java/src/com/wetoband/template/service/impl/WrongQuestionServiceImpl.java +++ b/HomeWork-java/src/com/wetoband/template/service/impl/WrongQuestionServiceImpl.java @@ -19,12 +19,12 @@ import java.util.Map; @Service @NoArgsConstructor -public class WrongQuestionServiceImpl implements WrongQuestionService { +public class WrongQuestionServiceImpl implements WrongQuestionService { @Autowired private WrongQuestionDao wrongQuestionDao; - public List getWrongHomework(int student_id) throws Exception { + public List getWrongHomework(int student_id,int offset,int pageSize) throws Exception { final Connection connection = ActionToolBase.getDBConnection(); - return wrongQuestionDao.getWrongHomework(connection,student_id); + return wrongQuestionDao.getWrongHomework(connection,student_id,offset,pageSize); } @Override @@ -45,4 +45,10 @@ public class WrongQuestionServiceImpl implements WrongQuestionService { wrongQuestionDao.submitWrongQuestion(connection,wrongQuestionSubmit); } + + @Override + public int getWrongHomeworkCount(int student_id) throws Exception { + final Connection connection = ActionToolBase.getDBConnection(); + return wrongQuestionDao.getWrongHomeworkCount(connection,student_id); + } } diff --git a/HomeWork-java/target/classes/config.properties b/HomeWork-java/target/classes/config.properties index 49cc81a..b061f9a 100644 --- a/HomeWork-java/target/classes/config.properties +++ b/HomeWork-java/target/classes/config.properties @@ -17,7 +17,7 @@ HTTP_SOCKET_TIMEOUT_SECOND=6 HTTP_LONG_CONNECTION_TIMEOUT_SECOND=60 JDBC_DRIVER=com.mysql.jdbc.Driver -JDBC_URL=jdbc:mysql://8.138.182.34:3306/homework?useUnicode=true&characterEncoding=utf8 +JDBC_URL=jdbc:mysql://8.138.41.70:3306/homework?useUnicode=true&characterEncoding=utf8 #JDBC_URL=jdbc:mysql://192.168.88.47:3306/blp?useUnicode=true&characterEncoding=utf8 JDBC_USERNAME=root diff --git a/HomeWork-java/tempResources/config.properties b/HomeWork-java/tempResources/config.properties index 49cc81a..b061f9a 100644 --- a/HomeWork-java/tempResources/config.properties +++ b/HomeWork-java/tempResources/config.properties @@ -17,7 +17,7 @@ HTTP_SOCKET_TIMEOUT_SECOND=6 HTTP_LONG_CONNECTION_TIMEOUT_SECOND=60 JDBC_DRIVER=com.mysql.jdbc.Driver -JDBC_URL=jdbc:mysql://8.138.182.34:3306/homework?useUnicode=true&characterEncoding=utf8 +JDBC_URL=jdbc:mysql://8.138.41.70:3306/homework?useUnicode=true&characterEncoding=utf8 #JDBC_URL=jdbc:mysql://192.168.88.47:3306/blp?useUnicode=true&characterEncoding=utf8 JDBC_USERNAME=root diff --git a/HomeWork-vite/src/views/WrongManager/WrongManager.vue b/HomeWork-vite/src/views/WrongManager/WrongManager.vue index ec3ce43..e252c7e 100644 --- a/HomeWork-vite/src/views/WrongManager/WrongManager.vue +++ b/HomeWork-vite/src/views/WrongManager/WrongManager.vue @@ -1,18 +1,16 @@