|
@@ -14,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
+import org.springframework.web.bind.annotation.RequestParam;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
|
|
|
|
@@ -54,12 +55,14 @@ public class SubjectUserController extends BaseExamController {
|
|
|
private ExamService examService;
|
|
|
|
|
|
@RequestMapping(value = "/template")
|
|
|
- public String importFileTemplate(HttpServletResponse response, RedirectAttributes redirectAttributes) {
|
|
|
+ public String importFileTemplate(HttpServletResponse response, @RequestParam Boolean isHeader,
|
|
|
+ RedirectAttributes redirectAttributes) {
|
|
|
try {
|
|
|
- String fileName = "科组长数据导入模板.xlsx";
|
|
|
+ String fileName = isHeader ? "科组长数据导入模板.xlsx" : "复核员数据导入模板.xlsx";
|
|
|
+ String title = isHeader ? "科组长数据" : "复核员数据";
|
|
|
List<SubjectUser> list = new ArrayList<SubjectUser>();
|
|
|
list.add(new SubjectUser());
|
|
|
- new ExportExcel("科组长数据", SubjectUser.class, 2).setDataList(list).write(response, fileName).dispose();
|
|
|
+ new ExportExcel(title, SubjectUser.class, 2).setDataList(list).write(response, fileName).dispose();
|
|
|
return null;
|
|
|
} catch (Exception e) {
|
|
|
addMessage(redirectAttributes, "导入模板下载失败!失败信息:" + e.getMessage());
|
|
@@ -67,9 +70,10 @@ public class SubjectUserController extends BaseExamController {
|
|
|
return "redirect:/admin/user/list";
|
|
|
}
|
|
|
|
|
|
- @Logging(menu = "科组长导入", type = LogType.IMPORT_FILE)
|
|
|
+ @Logging(menu = "科组长/查询员导入", type = LogType.IMPORT_FILE)
|
|
|
@RequestMapping(value = "/import", method = RequestMethod.POST)
|
|
|
- public String importFile(HttpServletRequest request, MultipartFile file, RedirectAttributes redirectAttributes) {
|
|
|
+ public String importFile(HttpServletRequest request, MultipartFile file, @RequestParam Boolean isHeader,
|
|
|
+ RedirectAttributes redirectAttributes) {
|
|
|
WebUser wu = RequestUtils.getWebUser(request);
|
|
|
try {
|
|
|
int successNum = 0;
|
|
@@ -97,14 +101,20 @@ public class SubjectUserController extends BaseExamController {
|
|
|
failureNum++;
|
|
|
continue;
|
|
|
}
|
|
|
- if (user != null && !user.getRole().equals(Role.SUBJECT_HEADER)) {
|
|
|
+ if (user != null && isHeader && !user.getRole().equals(Role.SUBJECT_HEADER)) {
|
|
|
+ failureMsg.append("<br/>用户名 " + subjectUser.getLoginName()
|
|
|
+ + MarkerExcelError.NAMENOTHEADER.getName());
|
|
|
+ failureNum++;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (user != null && !isHeader && !user.getRole().equals(Role.INSPECTOR)) {
|
|
|
failureMsg.append("<br/>用户名 " + subjectUser.getLoginName()
|
|
|
+ MarkerExcelError.NAMENOTHEADER.getName());
|
|
|
failureNum++;
|
|
|
continue;
|
|
|
}
|
|
|
if (user == null) {
|
|
|
- user = getUser(userMap, subjectUser.getLoginName().trim(), schoolId);
|
|
|
+ user = getUser(userMap, subjectUser.getLoginName().trim(), schoolId, isHeader);
|
|
|
}
|
|
|
}
|
|
|
subjectUser = getSubjectUser(subjectUser.getSubjectCode(), user.getId());
|
|
@@ -134,14 +144,14 @@ public class SubjectUserController extends BaseExamController {
|
|
|
return subjectUser;
|
|
|
}
|
|
|
|
|
|
- private User getUser(Map<String, User> saveMap, String loginName, Integer schoolId) {
|
|
|
+ private User getUser(Map<String, User> saveMap, String loginName, Integer schoolId, boolean isHeader) {
|
|
|
User user = saveMap.get(loginName);
|
|
|
if (user == null) {
|
|
|
user = new User();
|
|
|
user.setLoginName(loginName);
|
|
|
user.setName(loginName);
|
|
|
user.setPassword(EncryptUtils.md5(USER_PASSWORD));
|
|
|
- user.setRole(Role.SUBJECT_HEADER);
|
|
|
+ user.setRole(isHeader ? Role.SUBJECT_HEADER : Role.INSPECTOR);
|
|
|
user.setSchoolId(schoolId);
|
|
|
user.setEnable(true);
|
|
|
user.setCreatedTime(new Date());
|