|
@@ -28,13 +28,17 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
|
import cn.com.qmth.stmms.admin.dto.MarkerDTO;
|
|
import cn.com.qmth.stmms.admin.dto.MarkerDTO;
|
|
import cn.com.qmth.stmms.admin.dto.SubjectUserDTO;
|
|
import cn.com.qmth.stmms.admin.dto.SubjectUserDTO;
|
|
import cn.com.qmth.stmms.admin.exam.BaseExamController;
|
|
import cn.com.qmth.stmms.admin.exam.BaseExamController;
|
|
|
|
+import cn.com.qmth.stmms.biz.exam.model.Exam;
|
|
|
|
+import cn.com.qmth.stmms.biz.exam.model.ExamStudent;
|
|
import cn.com.qmth.stmms.biz.exam.model.ExamSubject;
|
|
import cn.com.qmth.stmms.biz.exam.model.ExamSubject;
|
|
import cn.com.qmth.stmms.biz.exam.model.MarkGroup;
|
|
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.Marker;
|
|
import cn.com.qmth.stmms.biz.exam.model.SubjectUser;
|
|
import cn.com.qmth.stmms.biz.exam.model.SubjectUser;
|
|
|
|
+import cn.com.qmth.stmms.biz.exam.query.ExamStudentSearchQuery;
|
|
import cn.com.qmth.stmms.biz.exam.query.MarkerSearchQuery;
|
|
import cn.com.qmth.stmms.biz.exam.query.MarkerSearchQuery;
|
|
import cn.com.qmth.stmms.biz.exam.service.ExamQuestionService;
|
|
import cn.com.qmth.stmms.biz.exam.service.ExamQuestionService;
|
|
import cn.com.qmth.stmms.biz.exam.service.ExamService;
|
|
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.ExamSubjectService;
|
|
import cn.com.qmth.stmms.biz.exam.service.MarkGroupService;
|
|
import cn.com.qmth.stmms.biz.exam.service.MarkGroupService;
|
|
import cn.com.qmth.stmms.biz.exam.service.MarkerService;
|
|
import cn.com.qmth.stmms.biz.exam.service.MarkerService;
|
|
@@ -81,6 +85,9 @@ public class UserController extends BaseExamController {
|
|
@Autowired
|
|
@Autowired
|
|
private ExamService examService;
|
|
private ExamService examService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private ExamStudentService studentService;
|
|
|
|
+
|
|
@Logging(menu = "查询用户", type = LogType.QUERY)
|
|
@Logging(menu = "查询用户", type = LogType.QUERY)
|
|
@RequestMapping("/list")
|
|
@RequestMapping("/list")
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
@@ -146,10 +153,16 @@ public class UserController extends BaseExamController {
|
|
user.setCreatedTime(new Date());
|
|
user.setCreatedTime(new Date());
|
|
user.setUpdatedTime(new Date());
|
|
user.setUpdatedTime(new Date());
|
|
userService.save(user);
|
|
userService.save(user);
|
|
- if (user.getRole() == Role.SUBJECT_HEADER || user.getRole() == Role.INSPECTOR
|
|
|
|
- || user.getRole() == Role.COLLEGE_ADMIN) {
|
|
|
|
|
|
+ if (user.getRole() == Role.SUBJECT_HEADER || user.getRole() == Role.INSPECTOR) {
|
|
subjectUserService.updateByUserId(user.getId(), getSubjectCodeSet(subjectCodeString));
|
|
subjectUserService.updateByUserId(user.getId(), getSubjectCodeSet(subjectCodeString));
|
|
}
|
|
}
|
|
|
|
+ if (user.getRole() == Role.COLLEGE_ADMIN) {
|
|
|
|
+ int examId = getSessionExamId(request);
|
|
|
|
+ subjectUserService.updateByUserId(user.getId(),
|
|
|
|
+ getSubjectCodeSetByCollege(examId, subjectCodeString));
|
|
|
|
+ user.setDescription(subjectCodeString);
|
|
|
|
+ userService.save(user);
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
model.addAttribute("user", user);
|
|
model.addAttribute("user", user);
|
|
model.addAttribute("roleList", ROLE_LIST);
|
|
model.addAttribute("roleList", ROLE_LIST);
|
|
@@ -169,6 +182,12 @@ public class UserController extends BaseExamController {
|
|
if (previous.getRole() == Role.SUBJECT_HEADER || user.getRole() == Role.INSPECTOR) {
|
|
if (previous.getRole() == Role.SUBJECT_HEADER || user.getRole() == Role.INSPECTOR) {
|
|
subjectUserService.updateByUserId(previous.getId(), getSubjectCodeSet(subjectCodeString));
|
|
subjectUserService.updateByUserId(previous.getId(), getSubjectCodeSet(subjectCodeString));
|
|
}
|
|
}
|
|
|
|
+ if (user.getRole() == Role.COLLEGE_ADMIN) {
|
|
|
|
+ int examId = getSessionExamId(request);
|
|
|
|
+ subjectUserService.updateByUserId(user.getId(),
|
|
|
|
+ getSubjectCodeSetByCollege(examId, subjectCodeString));
|
|
|
|
+ user.setDescription(subjectCodeString);
|
|
|
|
+ }
|
|
previous.setUpdatedTime(new Date());
|
|
previous.setUpdatedTime(new Date());
|
|
userService.save(previous);
|
|
userService.save(previous);
|
|
} else {
|
|
} else {
|
|
@@ -196,7 +215,7 @@ public class UserController extends BaseExamController {
|
|
} else if (user.getRole() == Role.INSPECTOR && StringUtils.isBlank(subjectCodeString)) {
|
|
} else if (user.getRole() == Role.INSPECTOR && StringUtils.isBlank(subjectCodeString)) {
|
|
message = "复核员必须绑定科目代码";
|
|
message = "复核员必须绑定科目代码";
|
|
} else if (user.getRole() == Role.COLLEGE_ADMIN && StringUtils.isBlank(subjectCodeString)) {
|
|
} else if (user.getRole() == Role.COLLEGE_ADMIN && StringUtils.isBlank(subjectCodeString)) {
|
|
- message = "学院管理员必须绑定科目代码";
|
|
|
|
|
|
+ message = "学院管理员必须绑定学院";
|
|
}
|
|
}
|
|
return message;
|
|
return message;
|
|
}
|
|
}
|
|
@@ -217,6 +236,22 @@ public class UserController extends BaseExamController {
|
|
return set;
|
|
return set;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private Set<String> getSubjectCodeSetByCollege(int examId, String college) {
|
|
|
|
+ Set<String> set = new HashSet<>();
|
|
|
|
+ try {
|
|
|
|
+ List<String> subject = studentService.findDistinctSubjectCodeByCollege(examId, college);
|
|
|
|
+ for (String value : subject) {
|
|
|
|
+ value = StringUtils.trimToNull(value);
|
|
|
|
+ if (value != null) {
|
|
|
|
+ set.add(value);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
+ return set;
|
|
|
|
+ }
|
|
|
|
+
|
|
@Logging(menu = "导出用户", type = LogType.EXPORT)
|
|
@Logging(menu = "导出用户", type = LogType.EXPORT)
|
|
@RequestMapping(value = "/export", method = RequestMethod.POST)
|
|
@RequestMapping(value = "/export", method = RequestMethod.POST)
|
|
public String exportFile(UserSearchQuery query, HttpServletRequest request, HttpServletResponse response,
|
|
public String exportFile(UserSearchQuery query, HttpServletRequest request, HttpServletResponse response,
|
|
@@ -347,7 +382,7 @@ public class UserController extends BaseExamController {
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
public ModelAndView batchAdd(HttpServletRequest request) {
|
|
public ModelAndView batchAdd(HttpServletRequest request) {
|
|
ModelAndView view = new ModelAndView("modules/user/userAdd");
|
|
ModelAndView view = new ModelAndView("modules/user/userAdd");
|
|
- Role[] roleList = { Role.SUBJECT_HEADER, Role.INSPECTOR, Role.MARKER, Role.COLLEGE_ADMIN };
|
|
|
|
|
|
+ Role[] roleList = { Role.SUBJECT_HEADER, Role.INSPECTOR, Role.MARKER };
|
|
view.addObject("roleList", roleList);
|
|
view.addObject("roleList", roleList);
|
|
int examId = getSessionExamId(request);
|
|
int examId = getSessionExamId(request);
|
|
view.addObject("exam", examService.findById(examId));
|
|
view.addObject("exam", examService.findById(examId));
|
|
@@ -368,4 +403,18 @@ public class UserController extends BaseExamController {
|
|
}
|
|
}
|
|
return "redirect:/admin/user/list";
|
|
return "redirect:/admin/user/list";
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @RequestMapping("/getSubjectCode")
|
|
|
|
+ @RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
|
+ public String get(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes) {
|
|
|
|
+ int examId = getSessionExamId(request);
|
|
|
|
+ List<ExamSubject> list = subjectService.list(examId);
|
|
|
|
+ if (list.size() > 0) {
|
|
|
|
+ model.addAttribute("list", list);
|
|
|
|
+ return "modules/exam/subjectSelect";
|
|
|
|
+ } else {
|
|
|
|
+ model.addAttribute("message", "没有科目");
|
|
|
|
+ return "modules/exam/subjectSelect";
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|