| | |
| | | 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; |
| | |
| | | ExamRoom newExamRoom = read(ExamRoom.class, examRoom.getExamroomId()); |
| | | |
| | | if (newExamRoom == null) { |
| | | return new Result(false, "考场不存在"); |
| | | return new Result(false, "考场不存在"); |
| | | } |
| | | |
| | | TraceUtils.setUpdateTrace(newExamRoom); |
| | |
| | | @Override |
| | | public Result doRelease(String[] examroomIds) { |
| | | if(examroomIds==null || examroomIds.length==0){ |
| | | return new Result(false, "没有选择要发布的考场"); |
| | | return new Result(false, "没有选择要发布的考场"); |
| | | } |
| | | |
| | | List<ExamRoom> lstClsRoom = this.findByComplexHql("from ExamRoom where examroomId in (:examroomIds)", |
| | |
| | | |
| | | for (ExamRoom room : lstClsRoom) { |
| | | if (ExamInfo.STATUS_DRAFT != room.getStatus()) { |
| | | return new Result(false, "只有草稿状态的考场,才能发布。"); |
| | | return new Result(false, "只有草稿状态的考场,才能发布。"); |
| | | } |
| | | room.setStatus(ExamRoom.STATUS_PUBLISH); |
| | | TraceUtils.setUpdateTrace(room); |
| | |
| | | @Override |
| | | public Result doCancel(String[] examroomIds) { |
| | | if(examroomIds==null || examroomIds.length==0){ |
| | | return new Result(false, "没有选择要撤回的考场"); |
| | | return new Result(false, "没有选择要撤回的考场"); |
| | | } |
| | | |
| | | List<ExamRoom> lstClsRoom = this.findByComplexHql("from ExamRoom where examroomId in (:examroomIds)", |
| | |
| | | |
| | | for (ExamRoom room : lstClsRoom) { |
| | | if (ExamInfo.STATUS_PUBLISH != room.getStatus()) { |
| | | return new Result(false, "只有发布状态的 考场,才能撤回"); |
| | | return new Result(false, "只有发布状态的 考场,才能撤回"); |
| | | } |
| | | room.setStatus(ExamInfo.STATUS_DRAFT); |
| | | TraceUtils.setUpdateTrace(room); |
| | |
| | | @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); |
| | |
| | | @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); |
| | | } |
| | | /** |
| | | * |
| | | */ |