From 0e62c15e4b010ffa2d5cff9474f3fd389e369338 Mon Sep 17 00:00:00 2001 From: EricsHu <hrr145632> Date: 星期五, 24 十一月 2023 14:31:46 +0800 Subject: [PATCH] 优化作业、考试、试卷、题库 --- src/main/java/com/qxueyou/scc/admin/examroom/service/impl/ExamRoomService.java | 24 ++++++-- src/main/java/com/qxueyou/scc/admin/classroom/service/impl/ClassRoomService.java | 21 +++++- src/main/java/com/qxueyou/scc/exam/action/ExamPaperController.java | 18 ++++- src/main/java/com/qxueyou/scc/exercise/action/ExerciseInfoController.java | 2 src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java | 22 +++++-- src/main/java/com/qxueyou/scc/exercise/action/ExerciseGroupController.java | 22 ++++++- src/main/java/com/qxueyou/scc/exam/service/impl/ExamService.java | 20 ++++-- src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java | 7 + src/main/java/com/qxueyou/scc/controller/ClassController.java | 2 9 files changed, 104 insertions(+), 34 deletions(-) diff --git a/src/main/java/com/qxueyou/scc/admin/classroom/service/impl/ClassRoomService.java b/src/main/java/com/qxueyou/scc/admin/classroom/service/impl/ClassRoomService.java index d75b99e..05193af 100644 --- a/src/main/java/com/qxueyou/scc/admin/classroom/service/impl/ClassRoomService.java +++ b/src/main/java/com/qxueyou/scc/admin/classroom/service/impl/ClassRoomService.java @@ -3,6 +3,7 @@ import java.util.List; import java.util.Map; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import com.qxueyou.scc.admin.classroom.model.ClassRoom; @@ -93,13 +94,19 @@ @Override public List<ClassRoom> list(String keyword, Short status, Integer pageSize, Integer pageNum) { + //鍒ゆ柇鏄惁鏄暀甯� + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); StringBuffer hql = new StringBuffer(500); - hql.append(" from ClassRoom where name like ? and createId=? "); - List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%',ClientUtils.getUserId()); + hql.append(" from ClassRoom where name like ? "); + List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%'); if(status!=null){ hql.append(" and status = ? "); params.add(status); + } + if (StringUtils.isNotBlank(teacherId)) { + hql.append(" and createId=?"); + params.add(teacherId); } hql.append(" and deleteFlag is false order by createTime desc"); @@ -109,14 +116,20 @@ @Override public int listCount(String keyword, Short status) { + //鍒ゆ柇鏄惁鏄暀甯� + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); StringBuffer hql = new StringBuffer(500); - hql.append(" from ClassRoom where name like ? and createId=? "); - List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%',ClientUtils.getUserId()); + hql.append(" from ClassRoom where name like ? "); + List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%'); if(status!=null){ hql.append(" and status = ? "); params.add(status); } + if (StringUtils.isNotBlank(teacherId)) { + hql.append(" and createId=?"); + params.add(teacherId); + } hql.append(" and deleteFlag is false "); diff --git a/src/main/java/com/qxueyou/scc/admin/examroom/service/impl/ExamRoomService.java b/src/main/java/com/qxueyou/scc/admin/examroom/service/impl/ExamRoomService.java index 399750d..e7b6ffd 100644 --- a/src/main/java/com/qxueyou/scc/admin/examroom/service/impl/ExamRoomService.java +++ b/src/main/java/com/qxueyou/scc/admin/examroom/service/impl/ExamRoomService.java @@ -9,6 +9,7 @@ import com.qxueyou.scc.base.util.CollectionUtils; import com.qxueyou.scc.base.util.TraceUtils; import com.qxueyou.scc.exam.model.ExamInfo; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import java.util.List; @@ -93,14 +94,19 @@ @Override public List<ExamRoom> list(String roomID, String keyword, Short status, Integer pageSize, Integer pageNum) { StringBuffer hql = new StringBuffer(500); - hql.append(" from ExamRoom where createId=? and roomId =? "); - List<Object> params = CollectionUtils.newList(ClientUtils.getUserId(),roomID); - + //鍒ゆ柇鏄惁鏄暀甯� + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); + hql.append(" from ExamRoom where roomId =? "); + List<Object> params = CollectionUtils.newList(roomID); + if (StringUtils.isNotBlank(teacherId)) { + hql.append(" and createId=?"); + params.add(teacherId); + } if(status!=null){ hql.append(" and status = ? "); params.add(status); } - + hql.append(" and deleteFlag is false order by createTime desc"); return findList(hql.toString(),new Pager(pageSize, pageNum),params, ExamRoom.class); @@ -109,13 +115,19 @@ @Override public int listCount(String roomID, String keyword, Short status) { StringBuffer hql = new StringBuffer(500); - hql.append(" from ExamRoom where createId=? and roomId =? "); - List<Object> params = CollectionUtils.newList(ClientUtils.getUserId(),roomID); + //鍒ゆ柇鏄惁鏄暀甯� + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); + hql.append(" from ExamRoom where roomId =? "); + List<Object> params = CollectionUtils.newList(roomID); if(status!=null){ hql.append(" and status = ? "); params.add(status); } + if (StringUtils.isNotBlank(teacherId)) { + hql.append(" and createId=?"); + params.add(teacherId); + } /** * */ diff --git a/src/main/java/com/qxueyou/scc/controller/ClassController.java b/src/main/java/com/qxueyou/scc/controller/ClassController.java index 9297e56..8964ccf 100644 --- a/src/main/java/com/qxueyou/scc/controller/ClassController.java +++ b/src/main/java/com/qxueyou/scc/controller/ClassController.java @@ -374,7 +374,7 @@ "studentCount", "studentCount", "createTime", "createTime", "startTime", "startTime", "endTime","endTime","classTypes", "classTypes", "subjects", "subjectLst", "needJoinAudit", "needJoinAudit", "needQuitAudit", "needQuitAudit", "showAnalysisAfterExer", "showAnalysisAfterExer", "canMultiExer", - "canMultiExer", "needForum", "needForum", "teacherId", "teacherId"))); + "canMultiExer", "needForum", "needForum", "teacherId", "teacherId","chargeClassName","chargeClassName"))); } /** diff --git a/src/main/java/com/qxueyou/scc/exam/action/ExamPaperController.java b/src/main/java/com/qxueyou/scc/exam/action/ExamPaperController.java index 7e68cb0..1f0f236 100644 --- a/src/main/java/com/qxueyou/scc/exam/action/ExamPaperController.java +++ b/src/main/java/com/qxueyou/scc/exam/action/ExamPaperController.java @@ -61,16 +61,23 @@ @RequestMapping(value = "/list", method = RequestMethod.GET) public @ResponseBody Result pageList(String keyword,Short status, Integer pageSize,Integer pageNum){ Result result = new Result(Boolean.TRUE); + //鍒ゆ柇鏄惁鏄暀甯� + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); Pager pager = new Pager(); List<Object> queryParamLst = null; // 鏌ヨ璁板綍鏁� - String hqlCount="from ExamPaperInfo where createId=? and examPaperName like ? and deleteFlag is false"; + String hqlCount="from ExamPaperInfo where examPaperName like ? and deleteFlag is false"; if(status!=null){ hqlCount = hqlCount.concat(" and paperStatus = ?"); - queryParamLst = CollectionUtils.newList(ClientUtils.getUserId(),'%'+(keyword==null?"":keyword.trim())+'%',status); + queryParamLst = CollectionUtils.newList('%'+(keyword==null?"":keyword.trim())+'%',status); }else{ - queryParamLst = CollectionUtils.newList(ClientUtils.getUserId(),'%'+(keyword==null?"":keyword.trim())+'%'); + queryParamLst = CollectionUtils.newList('%'+(keyword==null?"":keyword.trim())+'%'); } + if (StringUtils.isNotBlank(teacherId)) { + hqlCount = hqlCount.concat(" and createId=?"); + queryParamLst.add(teacherId); + } + int totalCount = commonDAO.findCount(hqlCount,queryParamLst); // page璧嬪�� @@ -79,10 +86,13 @@ pager.setPageNum (pageNum!=null&&pageNum>0?pageNum:DEFAULT_PAGE_NUM); StringBuffer hqlBuffer = new StringBuffer(500); - hqlBuffer.append("from ExamPaperInfo where createId=? and examPaperName like ? and deleteFlag is false "); + hqlBuffer.append("from ExamPaperInfo where examPaperName like ? and deleteFlag is false "); if(status!=null){ hqlBuffer.append(" and paperStatus = ? "); } + if (StringUtils.isNotBlank(teacherId)) { + hqlBuffer.append(" and createId=?"); + } hqlBuffer.append(" order by createTime DESC"); List<ExamPaperInfo> list = commonDAO.findList(hqlBuffer.toString(), pager,queryParamLst, ExamPaperInfo.class); diff --git a/src/main/java/com/qxueyou/scc/exam/service/impl/ExamService.java b/src/main/java/com/qxueyou/scc/exam/service/impl/ExamService.java index 19cbfda..65c0a84 100644 --- a/src/main/java/com/qxueyou/scc/exam/service/impl/ExamService.java +++ b/src/main/java/com/qxueyou/scc/exam/service/impl/ExamService.java @@ -62,9 +62,13 @@ @Override public List<ExamInfo> list(String keyword,String classId,String subjectId,Short status, Integer pageSize,Integer pageNum) { StringBuffer hql = new StringBuffer(500); - hql.append("from ExamInfo e where e.examName like ? and e.createId=? "); - List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%',ClientUtils.getUserId()); - + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); + hql.append("from ExamInfo e where e.examName like ? "); + List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%'); + if (StringUtils.isNotBlank(teacherId)) { + hql.append(" and e.createId=?"); + params.add(teacherId); + } if(status!=null){ hql.append(" and e.examStatus = ? "); params.add(status); @@ -87,9 +91,13 @@ @Override public int listCount(String keyword,String classId,String subjectId,Short status) { StringBuffer hql = new StringBuffer(500); - hql.append("from ExamInfo e where e.examName like ? and e.createId=? "); - List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%',ClientUtils.getUserId()); - + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); + hql.append("from ExamInfo e where e.examName like ? "); + List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%'); + if (StringUtils.isNotBlank(teacherId)) { + hql.append(" and e.createId=?"); + params.add(teacherId); + } if(status!=null){ hql.append(" and e.examStatus = ? "); params.add(status); diff --git a/src/main/java/com/qxueyou/scc/exercise/action/ExerciseGroupController.java b/src/main/java/com/qxueyou/scc/exercise/action/ExerciseGroupController.java index 15fcc9a..2226669 100644 --- a/src/main/java/com/qxueyou/scc/exercise/action/ExerciseGroupController.java +++ b/src/main/java/com/qxueyou/scc/exercise/action/ExerciseGroupController.java @@ -63,17 +63,27 @@ */ @RequestMapping(value = "/list", method = RequestMethod.GET) public @ResponseBody Result pageList(String keyword,Short status, Integer pageSize, Integer pageNum) { + //鍒ゆ柇鏄惁鏄暀甯� +// String teacherId = ClientUtils.isAdmin() ? null : teacherService.getTeacherIdByUserId(ClientUtils.getUserId()); + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); + Result result = new Result(Boolean.TRUE); Pager page = new Pager(); List<ExerciseGroup> listResult = null; List<Object> queryParam = null; // 鏌ヨ璁板綍鏁� - String hqlCount = "from ExerciseGroup where createId=? and type=? and name like ? and deleteFlag is false "; + String hqlCount = "from ExerciseGroup where type=? and name like ? and deleteFlag is false "; + + if(status!=null){ hqlCount = hqlCount.concat(" and status = ?"); - queryParam = CollectionUtils.newList(ClientUtils.getUserId(), ExerciseGroup.TYPE_EXERCISE_GROUP_LIB,'%'+(keyword==null?"":keyword.trim())+'%',status); + queryParam = CollectionUtils.newList(ExerciseGroup.TYPE_EXERCISE_GROUP_LIB,'%'+(keyword==null?"":keyword.trim())+'%',status); }else{ - queryParam = CollectionUtils.newList(ClientUtils.getUserId(), ExerciseGroup.TYPE_EXERCISE_GROUP_LIB,'%'+(keyword==null?"":keyword.trim())+'%'); + queryParam = CollectionUtils.newList( ExerciseGroup.TYPE_EXERCISE_GROUP_LIB,'%'+(keyword==null?"":keyword.trim())+'%'); + } + if (StringUtils.isNotBlank(teacherId)) { + hqlCount = hqlCount.concat(" and createId=?"); + queryParam.add(teacherId); } int totalCount = commonDAO.findCount(hqlCount,queryParam); @@ -83,10 +93,14 @@ page.setPageNum(pageNum != null && pageNum > 0 ? pageNum : DEFAULT_PAGE_NUM); StringBuffer hqlBuffer = new StringBuffer(500); - hqlBuffer.append("select g,s.name from ExerciseGroup g,Subject s where g.subjectId=s.subjectId and g.createId=? and g.type=? and g.name like ? and g.deleteFlag is false "); + hqlBuffer.append("select g,s.name from ExerciseGroup g,Subject s where g.subjectId=s.subjectId and g.type=? and g.name like ? and g.deleteFlag is false "); if(status!=null){ hqlBuffer.append(" and g.status = ? "); } + if (StringUtils.isNotBlank(teacherId)) { + hqlBuffer.append(" and g.createId=?"); + } + hqlBuffer.append(" order by g.createTime DESC"); List<Object[]> list = commonDAO.findList(hqlBuffer.toString(), page,queryParam,Object[].class); if(list!=null&& list.size()>0){ diff --git a/src/main/java/com/qxueyou/scc/exercise/action/ExerciseInfoController.java b/src/main/java/com/qxueyou/scc/exercise/action/ExerciseInfoController.java index ee9e96e..d373a91 100644 --- a/src/main/java/com/qxueyou/scc/exercise/action/ExerciseInfoController.java +++ b/src/main/java/com/qxueyou/scc/exercise/action/ExerciseInfoController.java @@ -125,7 +125,7 @@ //-------------------------------------------------鍚庡彴绔帴鍙�----------------------------------------- /** - * 鑰冭瘯鍒楄〃 + * 浣滀笟鍒楄〃 * * @return */ diff --git a/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java b/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java index f71fc0c..ffec783 100644 --- a/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java +++ b/src/main/java/com/qxueyou/scc/exercise/service/impl/ExerciseInfoService.java @@ -100,9 +100,14 @@ @Override public List<ExerciseInfo> list(String keyword,String classId,Short status,Integer pageSize,Integer pageNum) { StringBuffer hql = new StringBuffer(500); - hql.append("from ExerciseInfo e where e.name like ? and e.createId =? "); - List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%',ClientUtils.getUserId()); - + //鍒ゆ柇鏄惁鏄暀甯� + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); + hql.append("from ExerciseInfo e where e.name like ? "); + List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%'); + if (StringUtils.isNotBlank(teacherId)) { + hql.append(" and e.createId =?"); + params.add(teacherId); + } if(status!=null){ hql.append(" and e.status = ? "); params.add(status); @@ -120,9 +125,14 @@ @Override public int listCount(String keyword,String classId, Short status) { StringBuffer hql = new StringBuffer(500); - hql.append("from ExerciseInfo e where e.name like ? and e.createId =? "); - List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%',ClientUtils.getUserId()); - + //鍒ゆ柇鏄惁鏄暀甯� + String teacherId = ClientUtils.isAdmin() ? null : ClientUtils.getUserId(); + hql.append("from ExerciseInfo e where e.name like ? "); + List<Object> params = CollectionUtils.newList('%' + keyword.trim() + '%'); + if (StringUtils.isNotBlank(teacherId)) { + hql.append(" and e.createId =?"); + params.add(teacherId); + } if(status!=null){ hql.append(" and e.status = ? "); params.add(status); diff --git a/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java b/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java index d84ceda..c067274 100644 --- a/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java +++ b/src/main/java/com/qxueyou/scc/teach/subject/service/impl/SubjectService.java @@ -496,7 +496,8 @@ // newSubject.setStatus(origSubject.getStatus()); newSubject.setOrigSubjectId(origSubjectId); newSubject.setOrigCopySubjectId(origSubjectId); - newSubject.setType(Subject.TYPE_CLS_SUBJECT); +// newSubject.setType(Subject.TYPE_CLS_SUBJECT); + newSubject.setType(Subject.TYPE_ORG_SUBJECT); newSubject.setTeacherName(teacher.getName()); newSubject.setOrgId(ClientUtils.getOrgId()); save(newSubject); @@ -852,7 +853,9 @@ } else { if (StringUtils.isNotEmpty(teacherId)) { result = this.findListWithMapByHql( - "select distinct origSubjectId as subjectId ,name as subjectName from Subject where deleteFlag is false and type=" + Subject.TYPE_CLS_SUBJECT + " and teacherId='" + teacherId + "'", null); +// "select distinct origSubjectId as subjectId ,name as subjectName from Subject where deleteFlag is false and type=" + Subject.TYPE_CLS_SUBJECT + " and teacherId='" + teacherId + "'", null); + "select distinct origSubjectId as subjectId ,name as subjectName from Subject where deleteFlag is false and type=" + Subject.TYPE_ORG_SUBJECT + " and teacherId='" + teacherId + "'", null); + } else { result = this.findListWithMapByHql( "select subjectId as subjectId ,name as subjectName from Subject where deleteFlag is false and type=" + Subject.TYPE_ORG_SUBJECT + " and orgId='" + ClientUtils.getOrgId() + "'", null); -- Gitblit v1.8.0