Sfoglia il codice sorgente

重置用户密码时清空随机密码

ting.yin 1 anno fa
parent
commit
d46ee52e7e

+ 1 - 0
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/MarkerController.java

@@ -326,6 +326,7 @@ public class MarkerController extends BaseExamController {
             }
             password = StringEscapeUtils.unescapeHtml(password);
             user.setPassword(EncryptUtils.md5(password));
+            user.setRandomPassword(null);
             user = userService.save(user);
         }
         JSONObject obj = new JSONObject();

+ 45 - 41
stmms-web/src/main/java/cn/com/qmth/stmms/admin/user/UserController.java

@@ -93,10 +93,9 @@ public class UserController extends BaseExamController {
 
     @Autowired
     private ExamStudentService studentService;
-    
+
     @Autowired
     private UserStudentService userStudentService;
-    
 
     @Logging(menu = "查询用户", type = LogType.QUERY)
     @RequestMapping("/list")
@@ -133,15 +132,15 @@ public class UserController extends BaseExamController {
             ModelAndView view = new ModelAndView("modules/user/userEdit");
             view.addObject("user", user);
             if (user.getRole() == Role.SUBJECT_HEADER || user.getRole() == Role.INSPECTOR
-                    || user.getRole() == Role.COLLEGE_ADMIN|| user.getRole() == Role.SCHOOL_VIEWER) {
+                    || user.getRole() == Role.COLLEGE_ADMIN || user.getRole() == Role.SCHOOL_VIEWER) {
                 view.addObject("subjectCodeString",
                         StringUtils.join(subjectUserService.findSubjectCode(user.getId()), SPLIT));
                 view.addObject("examIdString", StringUtils.join(userExamService.findExamIds(user.getId()), SPLIT));
             }
             view.addObject("query", query);
-            if(user.getRole() == Role.SCHOOL_VIEWER) {
-            	int studentCount=userStudentService.countByUserId(id);
-            	view.addObject("studentCount", studentCount);
+            if (user.getRole() == Role.SCHOOL_VIEWER) {
+                int studentCount = userStudentService.countByUserId(id);
+                view.addObject("studentCount", studentCount);
             }
             return view;
         } else {
@@ -153,19 +152,20 @@ public class UserController extends BaseExamController {
     @RequestMapping(value = "/save", method = RequestMethod.POST)
     @RoleRequire(Role.SCHOOL_ADMIN)
     @Transactional
-    public String save(HttpServletRequest request,RedirectAttributes redirectAttributes, Model model, User user,
+    public String save(HttpServletRequest request, RedirectAttributes redirectAttributes, Model model, User user,
             @RequestParam(required = false) String subjectCodeString,
             @RequestParam(required = false) String examIdString,
             @RequestParam(required = false, defaultValue = "1") int pageNumber,
             @RequestParam(required = false) UserSource querySource, @RequestParam(required = false) Role queryRole,
             @RequestParam(required = false) String queryLoginName, @RequestParam(required = false) String queryName,
-            @RequestParam(required = false) Boolean queryEnable,@RequestParam(required = false)MultipartFile studentFile) {
+            @RequestParam(required = false) Boolean queryEnable,
+            @RequestParam(required = false) MultipartFile studentFile) {
         User current = RequestUtils.getWebUser(request).getUser();
         User previous = null;
         if (user.getId() != null) {
             previous = userService.findById(user.getId());
         }
-        AddStudentInfo suc=null;
+        AddStudentInfo suc = null;
         if (previous == null) {
             String message = validate(user, subjectCodeString, examIdString);
             if (message == null) {
@@ -189,21 +189,22 @@ public class UserController extends BaseExamController {
                             getSubjectCodeSetByCollege(examId, user.getDescription()));
                     userService.save(user);
                 }
-                if(user.getRole() == Role.SCHOOL_VIEWER&&!studentFile.isEmpty()) {
-                	suc=addStudent(studentFile, user.getSchoolId(), user.getId());
+                if (user.getRole() == Role.SCHOOL_VIEWER && !studentFile.isEmpty()) {
+                    suc = addStudent(studentFile, user.getSchoolId(), user.getId());
                 }
             } else {
                 model.addAttribute("user", user);
                 model.addAttribute("roleList", ROLE_LIST);
                 if (user.getRole() == Role.SUBJECT_HEADER || user.getRole() == Role.INSPECTOR
-                        || user.getRole() == Role.COLLEGE_ADMIN|| user.getRole() == Role.SCHOOL_VIEWER) {
-                	model.addAttribute("subjectCodeString",
+                        || user.getRole() == Role.COLLEGE_ADMIN || user.getRole() == Role.SCHOOL_VIEWER) {
+                    model.addAttribute("subjectCodeString",
                             StringUtils.join(subjectUserService.findSubjectCode(user.getId()), SPLIT));
-                	model.addAttribute("examIdString", StringUtils.join(userExamService.findExamIds(user.getId()), SPLIT));
+                    model.addAttribute("examIdString",
+                            StringUtils.join(userExamService.findExamIds(user.getId()), SPLIT));
                 }
-                if(user.getRole() == Role.SCHOOL_VIEWER) {
-                	int studentCount=userStudentService.countByUserId(user.getId());
-                	model.addAttribute("studentCount", studentCount);
+                if (user.getRole() == Role.SCHOOL_VIEWER) {
+                    int studentCount = userStudentService.countByUserId(user.getId());
+                    model.addAttribute("studentCount", studentCount);
                 }
                 UserSearchQuery query = new UserSearchQuery();
                 query.setPageNumber(pageNumber);
@@ -222,6 +223,7 @@ public class UserController extends BaseExamController {
             if (StringUtils.isNotBlank(user.getPassword())) {
                 String password = StringEscapeUtils.unescapeHtml(user.getPassword());
                 previous.setPassword(EncryptUtils.md5(password));
+                previous.setRandomPassword(null);
             }
             previous.setEmpno(user.getEmpno());
             previous.setEnable(user.isEnable());
@@ -245,8 +247,8 @@ public class UserController extends BaseExamController {
                 }
                 previous.setUpdatedTime(new Date());
                 userService.save(previous);
-                if(previous.getRole() == Role.SCHOOL_VIEWER&&!studentFile.isEmpty()) {
-                	suc=addStudent(studentFile, previous.getSchoolId(), previous.getId());
+                if (previous.getRole() == Role.SCHOOL_VIEWER && !studentFile.isEmpty()) {
+                    suc = addStudent(studentFile, previous.getSchoolId(), previous.getId());
                 }
             } else {
                 model.addAttribute("user", previous);
@@ -261,14 +263,15 @@ public class UserController extends BaseExamController {
                 query.setEnable(queryEnable);
                 model.addAttribute("query", query);
                 if (user.getRole() == Role.SUBJECT_HEADER || user.getRole() == Role.INSPECTOR
-                        || user.getRole() == Role.COLLEGE_ADMIN|| user.getRole() == Role.SCHOOL_VIEWER) {
-                	model.addAttribute("subjectCodeString",
+                        || user.getRole() == Role.COLLEGE_ADMIN || user.getRole() == Role.SCHOOL_VIEWER) {
+                    model.addAttribute("subjectCodeString",
                             StringUtils.join(subjectUserService.findSubjectCode(user.getId()), SPLIT));
-                	model.addAttribute("examIdString", StringUtils.join(userExamService.findExamIds(user.getId()), SPLIT));
+                    model.addAttribute("examIdString",
+                            StringUtils.join(userExamService.findExamIds(user.getId()), SPLIT));
                 }
-                if(user.getRole() == Role.SCHOOL_VIEWER) {
-                	int studentCount=userStudentService.countByUserId(user.getId());
-                	model.addAttribute("studentCount", studentCount);
+                if (user.getRole() == Role.SCHOOL_VIEWER) {
+                    int studentCount = userStudentService.countByUserId(user.getId());
+                    model.addAttribute("studentCount", studentCount);
                 }
                 return "modules/user/userEdit";
             }
@@ -276,21 +279,21 @@ public class UserController extends BaseExamController {
         String enable = queryEnable == null ? "" : queryEnable.toString();
         String role = queryRole == null ? "" : String.valueOf(queryRole.getValue());
         String source = querySource == null ? "" : String.valueOf(querySource.getValue());
-        if(suc!=null) {
-        	addMessage(redirectAttributes, "成功绑定考生"+suc.getSuccess()+"条,失败"+suc.getFailed()+"条(已绑定或无效的准考证号)");
+        if (suc != null) {
+            addMessage(redirectAttributes, "成功绑定考生" + suc.getSuccess() + "条,失败" + suc.getFailed() + "条(已绑定或无效的准考证号)");
         }
         return "redirect:/admin/user/list?pageNumber=" + pageNumber + "&source=" + source + "&role=" + role
                 + "&loginName=" + queryLoginName + "&name=" + queryName + "&enable=" + enable;
     }
-    
-    private AddStudentInfo addStudent(MultipartFile file,Integer schoolId,Integer userId) {
-		try {
-			ImportExcel ei = new ImportExcel(file, 1, 0);
-			List<UserStudentVo> list = ei.getDataList(UserStudentVo.class);
-			return userStudentService.addStudent(list, schoolId, userId);
-		} catch (Exception e) {
-			throw new RuntimeException(e);
-		}
+
+    private AddStudentInfo addStudent(MultipartFile file, Integer schoolId, Integer userId) {
+        try {
+            ImportExcel ei = new ImportExcel(file, 1, 0);
+            List<UserStudentVo> list = ei.getDataList(UserStudentVo.class);
+            return userStudentService.addStudent(list, schoolId, userId);
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
     }
 
     private String validate(User user, String subjectCodeString, String examIdString) {
@@ -498,6 +501,7 @@ public class UserController extends BaseExamController {
             }
             password = StringEscapeUtils.unescapeHtml(password);
             user.setPassword(EncryptUtils.md5(password));
+            user.setRandomPassword(null);
             user = userService.save(user);
         }
         JSONObject obj = new JSONObject();
@@ -552,12 +556,12 @@ public class UserController extends BaseExamController {
             return "modules/exam/subjectSelect";
         }
     }
-    
+
     @RequestMapping(value = "student/template")
-    public String importStudentTemplate(HttpServletResponse response,RedirectAttributes redirectAttributes) {
+    public String importStudentTemplate(HttpServletResponse response, RedirectAttributes redirectAttributes) {
         try {
             String fileName = "绑定考生导入模板.xlsx";
-            String title =  "绑定考生数据";
+            String title = "绑定考生数据";
             List<SubjectUser> list = new ArrayList<SubjectUser>();
             list.add(new SubjectUser());
             new ExportExcel(title, UserStudentVo.class, 2).setDataList(list).write(response, fileName).dispose();
@@ -565,9 +569,9 @@ public class UserController extends BaseExamController {
         } catch (Exception e) {
             addMessage(redirectAttributes, "导入模板下载失败!失败信息:" + e.getMessage());
         }
-    	return "redirect:/admin/user/edit";
+        return "redirect:/admin/user/edit";
     }
-    
+
     @RequestMapping(value = "student/clear")
     public String studentClear(@RequestParam Integer id,
             @RequestParam(required = false, defaultValue = "1") int pageNumber,