diff --git a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java index 469d47a8cdab59a33eff6dc1f6ec5094b360912d..65c71bd1425ec4ceed33627d11eb53e56a3135e4 100644 --- a/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java +++ b/HomeWork-java/src/com/wetoband/template/action/ToolTemplateAction.java @@ -68,7 +68,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; @@ -78,14 +77,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 82b71ca135054479b2b9f0b82e595c6a21b1e961..82bf2637f16835ae41d9215a8160bc2b4c92000d 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 c674d8693fa88f187870277a12cf111370f19e18..c7879791a8f3c0b2ff558cb8e9e82f5df93bc139 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()){ @@ -40,16 +35,21 @@ public class HomeWorkDaoImpl extends BaseDaoImpl implements HomeWorkDa 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 315d879fa4eb00646a967f4b31b2922bbe5eca10..7dc9c7a696ef6d7696c5637ff7be0ceb2542bdfd 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(DISTINCT 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 b69f1fc050fcca49c387061074019bbff5c2d1c7..2257b42844a09feeb6de904a31165b98883b140e 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 4c578aab69247f9e1c50c7a1b46060a3f55022fa..a4bae72a736cfcc4be3abe42e50e27601eb6a55a 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 b061f9ab32bc6291cc9d2aed8fdf96eb49a90dbf..49cc81a4ae0e5f90dbcc2869ba3283037f11966f 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.41.70:3306/homework?useUnicode=true&characterEncoding=utf8 +JDBC_URL=jdbc:mysql://8.138.182.34: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 b061f9ab32bc6291cc9d2aed8fdf96eb49a90dbf..49cc81a4ae0e5f90dbcc2869ba3283037f11966f 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.41.70:3306/homework?useUnicode=true&characterEncoding=utf8 +JDBC_URL=jdbc:mysql://8.138.182.34: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 ec3ce431e2c65788ecb0a746fe961cb8e1bb1c73..e252c7e882b549564b62e520c7ec101986e2099f 100644 --- a/HomeWork-vite/src/views/WrongManager/WrongManager.vue +++ b/HomeWork-vite/src/views/WrongManager/WrongManager.vue @@ -1,18 +1,16 @@