|
@@ -3,13 +3,9 @@ package cn.com.qmth.stmms.mark;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
-import java.util.Set;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
|
-import net.sf.json.JSONArray;
|
|
|
-import net.sf.json.JSONObject;
|
|
|
-
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
@@ -31,10 +27,8 @@ import cn.com.qmth.stmms.biz.exam.model.MarkGroup;
|
|
|
import cn.com.qmth.stmms.biz.exam.model.Marker;
|
|
|
import cn.com.qmth.stmms.biz.exam.model.Tag;
|
|
|
import cn.com.qmth.stmms.biz.exam.service.ExamService;
|
|
|
-import cn.com.qmth.stmms.biz.exam.service.ExamStudentService;
|
|
|
import cn.com.qmth.stmms.biz.exam.service.ExamSubjectService;
|
|
|
import cn.com.qmth.stmms.biz.exam.service.MarkGroupService;
|
|
|
-import cn.com.qmth.stmms.biz.exam.service.MarkerClassService;
|
|
|
import cn.com.qmth.stmms.biz.exam.service.MarkerService;
|
|
|
import cn.com.qmth.stmms.biz.exam.service.TagService;
|
|
|
import cn.com.qmth.stmms.biz.lock.LockService;
|
|
@@ -54,6 +48,8 @@ import cn.com.qmth.stmms.common.enums.LockType;
|
|
|
import cn.com.qmth.stmms.common.enums.MarkMode;
|
|
|
import cn.com.qmth.stmms.common.enums.MarkStatus;
|
|
|
import cn.com.qmth.stmms.common.utils.RequestUtils;
|
|
|
+import net.sf.json.JSONArray;
|
|
|
+import net.sf.json.JSONObject;
|
|
|
|
|
|
@Controller
|
|
|
@RequestMapping("/mark")
|
|
@@ -91,12 +87,6 @@ public class MarkController extends BaseController {
|
|
|
@Autowired
|
|
|
private LockService lockService;
|
|
|
|
|
|
- @Autowired
|
|
|
- private ExamStudentService studentService;
|
|
|
-
|
|
|
- @Autowired
|
|
|
- private MarkerClassService classService;
|
|
|
-
|
|
|
@Value("${slice.image.server}")
|
|
|
private String sliceServer;
|
|
|
|
|
@@ -162,7 +152,8 @@ public class MarkController extends BaseController {
|
|
|
markerService.save(marker);
|
|
|
}
|
|
|
}
|
|
|
- ModelAndView view = new ModelAndView(mode == MarkMode.TRACK ? "modules/mark/markTrack" : "modules/mark/markNew");
|
|
|
+ ModelAndView view = new ModelAndView(
|
|
|
+ mode == MarkMode.TRACK ? "modules/mark/markTrack" : "modules/mark/markNew");
|
|
|
view.addObject("forceMode", forceMode);
|
|
|
view.addObject("sheetView", group.isSheetView());
|
|
|
return view;
|
|
@@ -254,16 +245,12 @@ public class MarkController extends BaseController {
|
|
|
public Task getTask(HttpServletRequest request) {
|
|
|
Marker marker = RequestUtils.getWebUser(request).getMarker();
|
|
|
Task task = null;
|
|
|
- Set<String> classes = null;
|
|
|
- if (marker.getClassCount() != 0) {
|
|
|
- classes = classService.findClassNameByMarkerId(marker.getId());
|
|
|
- }
|
|
|
try {
|
|
|
lockService.watch(LockType.GROUP, marker.getExamId(), marker.getSubjectCode(), marker.getGroupNumber());
|
|
|
lockService.watch(LockType.MARKER, marker.getId());
|
|
|
|
|
|
- MarkGroup group = groupService
|
|
|
- .findOne(marker.getExamId(), marker.getSubjectCode(), marker.getGroupNumber());
|
|
|
+ MarkGroup group = groupService.findOne(marker.getExamId(), marker.getSubjectCode(),
|
|
|
+ marker.getGroupNumber());
|
|
|
if (group == null) {
|
|
|
task = new Task();
|
|
|
task.setExist(false);
|
|
@@ -275,7 +262,7 @@ public class MarkController extends BaseController {
|
|
|
} else if (group.getStatus() == MarkStatus.TRIAL) {
|
|
|
task = getTrialTask(marker);
|
|
|
} else if (group.getStatus() == MarkStatus.FORMAL) {
|
|
|
- task = getFormalTask(marker, classes);
|
|
|
+ task = getFormalTask(marker);
|
|
|
}
|
|
|
if (task == null) {
|
|
|
task = new Task();
|
|
@@ -291,19 +278,14 @@ public class MarkController extends BaseController {
|
|
|
return task;
|
|
|
}
|
|
|
|
|
|
- private Task getFormalTask(Marker marker, Set<String> classes) {
|
|
|
+ private Task getFormalTask(Marker marker) {
|
|
|
int retry = 1;
|
|
|
Task task = null;
|
|
|
while (task == null) {
|
|
|
List<MarkLibrary> list = new ArrayList<MarkLibrary>();
|
|
|
- // 绑定了班级的评卷员
|
|
|
- if (classes != null) {
|
|
|
- list = libraryService.findUnMarked(marker.getExamId(), marker.getSubjectCode(),
|
|
|
- marker.getGroupNumber(), classes, marker.getId(), retry, 20);
|
|
|
- } else {
|
|
|
- list = libraryService.findUnMarked(marker.getExamId(), marker.getSubjectCode(),
|
|
|
- marker.getGroupNumber(), marker.getId(), retry, 20);
|
|
|
- }
|
|
|
+ // 需要判断评卷员是否绑定了班级
|
|
|
+ list = libraryService.findUnMarked(marker.getExamId(), marker.getSubjectCode(), marker.getGroupNumber(),
|
|
|
+ marker.getId(), marker.getClassCount() != null && marker.getClassCount() > 0, retry, 20);
|
|
|
if (list.isEmpty()) {
|
|
|
break;
|
|
|
}
|