Browse Source

二级页面动态跳转

xiatian 1 year ago
parent
commit
b0473530c1

+ 2 - 0
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/basic/dao/PrivilegeDao.java

@@ -14,4 +14,6 @@ public interface PrivilegeDao extends PagingAndSortingRepository<Privilege, Inte
 
 
 	List<Privilege> findByPrivilegeTypeOrderByLevelAscSeqAsc(PrivilegeType menu);
 	List<Privilege> findByPrivilegeTypeOrderByLevelAscSeqAsc(PrivilegeType menu);
 
 
+	List<Privilege> findByPrivilegeTypeAndParentCodeOrderBySeqAsc(PrivilegeType page, String parentCode);
+
 }
 }

+ 2 - 0
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/basic/service/PrivilegeService.java

@@ -10,5 +10,7 @@ public interface PrivilegeService {
 
 
 	void initRoleAndPrivilege(Integer schoolId);
 	void initRoleAndPrivilege(Integer schoolId);
 
 
+	List<Privilege> getPagePrivilegesByParentCode(String parentCode);
+
 
 
 }
 }

+ 5 - 0
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/basic/service/impl/PrivilegeServiceImpl.java

@@ -125,4 +125,9 @@ public class PrivilegeServiceImpl extends BaseQueryService<Privilege> implements
 		Query query = entityManager.createNativeQuery(sql.toString());
 		Query query = entityManager.createNativeQuery(sql.toString());
 		query.executeUpdate();
 		query.executeUpdate();
 	}
 	}
+	
+	@Override
+	public List<Privilege> getPagePrivilegesByParentCode(String parentCode) {
+		return privilegeDao.findByPrivilegeTypeAndParentCodeOrderBySeqAsc(PrivilegeType.PAGE,parentCode);
+	}
 }
 }

+ 1 - 1
stmms-common/src/main/java/cn/com/qmth/stmms/common/enums/PrivilegeType.java

@@ -3,7 +3,7 @@ package cn.com.qmth.stmms.common.enums;
 public enum PrivilegeType {
 public enum PrivilegeType {
 
 
     MENU("菜单"),
     MENU("菜单"),
-
+    PAGE("页面"),
     BUTTON("按钮"),
     BUTTON("按钮"),
 
 
     ;
     ;

+ 26 - 0
stmms-web/src/main/java/cn/com/qmth/stmms/admin/basic/RoleInfoController.java

@@ -2,6 +2,7 @@ package cn.com.qmth.stmms.admin.basic;
 
 
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
+import java.util.Set;
 
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 
 
@@ -9,11 +10,14 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 
 
 import cn.com.qmth.stmms.biz.basic.bean.RoleInfoQuery;
 import cn.com.qmth.stmms.biz.basic.bean.RoleInfoQuery;
 import cn.com.qmth.stmms.biz.basic.bean.RoleInfoVo;
 import cn.com.qmth.stmms.biz.basic.bean.RoleInfoVo;
 import cn.com.qmth.stmms.biz.basic.bean.RolePrivilegeDomain;
 import cn.com.qmth.stmms.biz.basic.bean.RolePrivilegeDomain;
 import cn.com.qmth.stmms.biz.basic.bean.RolePrivilegeVo;
 import cn.com.qmth.stmms.biz.basic.bean.RolePrivilegeVo;
+import cn.com.qmth.stmms.biz.basic.model.Privilege;
+import cn.com.qmth.stmms.biz.basic.service.PrivilegeService;
 import cn.com.qmth.stmms.biz.basic.service.RoleInfoService;
 import cn.com.qmth.stmms.biz.basic.service.RoleInfoService;
 import cn.com.qmth.stmms.biz.basic.service.RolePrivilegeService;
 import cn.com.qmth.stmms.biz.basic.service.RolePrivilegeService;
 import cn.com.qmth.stmms.common.controller.BaseController;
 import cn.com.qmth.stmms.common.controller.BaseController;
@@ -30,6 +34,9 @@ public class RoleInfoController extends BaseController {
 	
 	
 	@Autowired
 	@Autowired
 	private RolePrivilegeService rolePrivilegeService;
 	private RolePrivilegeService rolePrivilegeService;
+	
+	@Autowired
+	private PrivilegeService privilegeService;
 
 
 	@RequestMapping(value = "list")
 	@RequestMapping(value = "list")
 	public String roleLise(Model model, HttpServletRequest request, RoleInfoQuery query) {
 	public String roleLise(Model model, HttpServletRequest request, RoleInfoQuery query) {
@@ -68,4 +75,23 @@ public class RoleInfoController extends BaseController {
 		rolePrivilegeService.save(domain);
 		rolePrivilegeService.save(domain);
 		return "redirect:/admin/basic/role/info/list?schoolId="+domain.getSchoolId();
 		return "redirect:/admin/basic/role/info/list?schoolId="+domain.getSchoolId();
 	}
 	}
+	
+	@RequestMapping(value = "sub/page")
+    public String subPage(HttpServletRequest request,@RequestParam String privilegeCode) {
+        WebUser wu = RequestUtils.getWebUser(request);
+        Set<String> codes=rolePrivilegeService.getRoleCodes(wu.getUser().getSchoolId(), wu.getRole());
+        if(codes==null||codes.size()==0) {
+        	return null;
+        }
+        List<Privilege> ps=privilegeService.getPagePrivilegesByParentCode(privilegeCode);
+        if(ps==null||ps.size()==0) {
+        	return null;
+        }
+        for(Privilege p:ps) {
+        	if(codes.contains(p.getCode())) {
+        		return "redirect:"+p.getPrivilegeUri();
+        	}
+        }
+        return null;
+    }
 }
 }

+ 1 - 20
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/InspectedController.java

@@ -10,8 +10,6 @@ import java.util.stream.Collectors;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 
 
-import net.sf.json.JSONObject;
-
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
@@ -29,7 +27,6 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 import cn.com.qmth.stmms.admin.dto.RejectResult;
 import cn.com.qmth.stmms.admin.dto.RejectResult;
 import cn.com.qmth.stmms.admin.utils.ExportInspectExcel;
 import cn.com.qmth.stmms.admin.utils.ExportInspectExcel;
 import cn.com.qmth.stmms.admin.vo.InspectedSubjectVO;
 import cn.com.qmth.stmms.admin.vo.InspectedSubjectVO;
-import cn.com.qmth.stmms.biz.basic.service.RolePrivilegeService;
 import cn.com.qmth.stmms.biz.config.service.impl.SystemCache;
 import cn.com.qmth.stmms.biz.config.service.impl.SystemCache;
 import cn.com.qmth.stmms.biz.exam.bean.ExamStudentVo;
 import cn.com.qmth.stmms.biz.exam.bean.ExamStudentVo;
 import cn.com.qmth.stmms.biz.exam.bean.InspectWorkVo;
 import cn.com.qmth.stmms.biz.exam.bean.InspectWorkVo;
@@ -63,6 +60,7 @@ import cn.com.qmth.stmms.common.enums.SelectiveStatus;
 import cn.com.qmth.stmms.common.enums.SubjectiveStatus;
 import cn.com.qmth.stmms.common.enums.SubjectiveStatus;
 import cn.com.qmth.stmms.common.utils.ExportExcel;
 import cn.com.qmth.stmms.common.utils.ExportExcel;
 import cn.com.qmth.stmms.common.utils.RequestUtils;
 import cn.com.qmth.stmms.common.utils.RequestUtils;
+import net.sf.json.JSONObject;
 
 
 @Controller("inspectedController")
 @Controller("inspectedController")
 @RequestMapping("/admin/exam/inspected")
 @RequestMapping("/admin/exam/inspected")
@@ -105,9 +103,6 @@ public class InspectedController extends BaseExamController {
 
 
     @Autowired
     @Autowired
     private SchoolService schoolService;
     private SchoolService schoolService;
-    
-	@Autowired
-	private RolePrivilegeService rolePrivilegeService;
 
 
     @Value("${slice.split.config}")
     @Value("${slice.split.config}")
     private String splitConfig;
     private String splitConfig;
@@ -671,18 +666,4 @@ public class InspectedController extends BaseExamController {
         return "redirect:/admin/exam/inspected/list";
         return "redirect:/admin/exam/inspected/list";
     }
     }
     
     
-    @RequestMapping(value = "manage")
-    public String manage(HttpServletRequest request) {
-        WebUser wu = RequestUtils.getWebUser(request);
-        Set<String> codes=rolePrivilegeService.getRoleCodes(wu.getUser().getSchoolId(), wu.getRole());
-        if(codes.contains("exam_inspected_info-info")) {
-        	return "redirect:/admin/exam/inspected/info";
-        }else if(codes.contains("exam_inspected_info-list")) {
-        	return "redirect:/admin/exam/inspected/list";
-        }else if(codes.contains("exam_inspected_info-score_verify")) {
-        	return "redirect:/admin/exam/score/verify/init";
-        }else {
-        	return null;
-        }
-    }
 }
 }

+ 0 - 26
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/MarkController.java

@@ -22,7 +22,6 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 import cn.com.qmth.stmms.admin.dto.MarkInfoDTO;
 import cn.com.qmth.stmms.admin.dto.MarkInfoDTO;
 import cn.com.qmth.stmms.admin.dto.MarkerInfoDTO;
 import cn.com.qmth.stmms.admin.dto.MarkerInfoDTO;
 import cn.com.qmth.stmms.admin.vo.SubjectLibraryVO;
 import cn.com.qmth.stmms.admin.vo.SubjectLibraryVO;
-import cn.com.qmth.stmms.biz.basic.service.RolePrivilegeService;
 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;
@@ -67,9 +66,6 @@ public class MarkController extends BaseExamController {
     @Autowired
     @Autowired
     private UserService userService;
     private UserService userService;
 
 
-	@Autowired
-	private RolePrivilegeService rolePrivilegeService;
-
     @Autowired
     @Autowired
     private MarkLibraryService libraryService;
     private MarkLibraryService libraryService;
 
 
@@ -260,27 +256,5 @@ public class MarkController extends BaseExamController {
         return "redirect:/admin/exam/mark";
         return "redirect:/admin/exam/mark";
     }
     }
     
     
-    @RequestMapping(value = "manage")
-    public String manage(HttpServletRequest request) {
-        WebUser wu = RequestUtils.getWebUser(request);
-        Set<String> codes=rolePrivilegeService.getRoleCodes(wu.getUser().getSchoolId(), wu.getRole());
-        if(codes.contains("exam_mark-mark")) {
-        	return "redirect:/admin/exam/mark";
-        }else if(codes.contains("exam_mark-group")) {
-        	return "redirect:/admin/exam/group";
-        }else if(codes.contains("exam_mark-marker")) {
-        	return "redirect:/admin/exam/marker";
-        }else if(codes.contains("exam_mark-trial")) {
-        	return "redirect:/admin/exam/trial";
-        }else if(codes.contains("exam_mark-library")) {
-        	return "redirect:/admin/exam/library";
-        }else if(codes.contains("exam_mark-arbitrate")) {
-        	return "redirect:/admin/exam/arbitrate";
-        }else if(codes.contains("exam_mark-quality")) {
-        	return "redirect:/admin/exam/quality";
-        }else {
-        	return null;
-        }
-    }
 
 
 }
 }

+ 0 - 17
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/RejectController.java

@@ -2,7 +2,6 @@ package cn.com.qmth.stmms.admin.exam;
 
 
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
-import java.util.Set;
 
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 
 
@@ -16,7 +15,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.ResponseBody;
 
 
-import cn.com.qmth.stmms.biz.basic.service.RolePrivilegeService;
 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.query.MarkerSearchQuery;
 import cn.com.qmth.stmms.biz.exam.query.MarkerSearchQuery;
@@ -55,9 +53,6 @@ public class RejectController extends BaseExamController {
     @Autowired
     @Autowired
     private ExamSubjectService subjectService;
     private ExamSubjectService subjectService;
 
 
-	@Autowired
-	private RolePrivilegeService rolePrivilegeService;
-
     @Autowired
     @Autowired
     private MarkGroupService groupService;
     private MarkGroupService groupService;
 
 
@@ -193,16 +188,4 @@ public class RejectController extends BaseExamController {
         return array;
         return array;
     }
     }
     
     
-    @RequestMapping(value = "manage")
-    public String manage(HttpServletRequest request) {
-        WebUser wu = RequestUtils.getWebUser(request);
-        Set<String> codes=rolePrivilegeService.getRoleCodes(wu.getUser().getSchoolId(), wu.getRole());
-        if(codes.contains("exam_reject_list-paper")) {
-        	return "redirect:/admin/exam/reject/list";
-        }else if(codes.contains("exam_reject_list-history")) {
-        	return "redirect:/admin/exam/reject/history";
-        }else {
-        	return null;
-        }
-    }
 }
 }

+ 2 - 2
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/examIndex.jsp

@@ -130,11 +130,11 @@
                                 <c:if test="${fn:contains(role_privilege_codes, privilege.code)}">
                                 <c:if test="${fn:contains(role_privilege_codes, privilege.code)}">
                                 	<c:if test="${privilege.code=='exam_score'}">
                                 	<c:if test="${privilege.code=='exam_score'}">
                                 		<c:if test="${forbiddenScore!=true}">
                                 		<c:if test="${forbiddenScore!=true}">
-	                                		<li><a href="${ctx}${privilege.privilegeUri}" target="mainFrame"><i class="${privilege.icon}"></i><span data-i18n-text="${privilege.i18n}">${privilege.name}</span></a></li>
+	                                		<li><a href="${ctx}${privilege.privilegeUri}?privilegeCode=${privilege.code}" target="mainFrame"><i class="${privilege.icon}"></i><span data-i18n-text="${privilege.i18n}">${privilege.name}</span></a></li>
 	                                	</c:if>
 	                                	</c:if>
                                 	</c:if>
                                 	</c:if>
                                 	<c:if test="${privilege.code!='exam_score'}">
                                 	<c:if test="${privilege.code!='exam_score'}">
-                                		<li><a href="${ctx}${privilege.privilegeUri}" target="mainFrame"><i class="${privilege.icon}"></i><span data-i18n-text="${privilege.i18n}">${privilege.name}</span></a></li>
+                                		<li><a href="${ctx}${privilege.privilegeUri}?privilegeCode=${privilege.code}" target="mainFrame"><i class="${privilege.icon}"></i><span data-i18n-text="${privilege.i18n}">${privilege.name}</span></a></li>
                                 	</c:if>
                                 	</c:if>
                                 </c:if>
                                 </c:if>
                                 </c:forEach>
                                 </c:forEach>

+ 27 - 27
stmms-web/src/main/webapp/sql/stmms_ft.sql

@@ -1288,11 +1288,11 @@ VALUES ('exam_paper', '科目管理', 'root_code', 'MENU', '/admin/exam/paper',
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 VALUES ('exam_scan', '扫描进度', 'root_code', 'MENU', '/admin/exam/scan', 50,1,'icon-print','index.scan');
 VALUES ('exam_scan', '扫描进度', 'root_code', 'MENU', '/admin/exam/scan', 50,1,'icon-print','index.scan');
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
-VALUES ('exam_mark', '评卷管理', 'root_code', 'MENU', '/admin/exam/mark/manage', 60,1,'icon-pencil','index.mark');
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-mark', '评卷进度', 'exam_mark', 'BUTTON', 2,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-group', '分组管理', 'exam_mark', 'BUTTON', 2,2);
+VALUES ('exam_mark', '评卷管理', 'root_code', 'MENU', '/admin/basic/role/info/sub/page', 60,1,'icon-pencil','index.mark');
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-mark', '评卷进度', 'exam_mark', 'PAGE','/admin/exam/mark', 2,1);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-group', '分组管理', 'exam_mark', 'PAGE','/admin/exam/group', 2,2);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-group-add', '新增', 'exam_mark-group', 'BUTTON', 3,1);
 VALUES ('exam_mark-group-add', '新增', 'exam_mark-group', 'BUTTON', 3,1);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
@@ -1301,28 +1301,28 @@ INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`lev
 VALUES ('exam_mark-group-reset_edit', '重置修改', 'exam_mark-group', 'BUTTON', 3,3);
 VALUES ('exam_mark-group-reset_edit', '重置修改', 'exam_mark-group', 'BUTTON', 3,3);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-group-delete', '删除', 'exam_mark-group', 'BUTTON', 3,4);
 VALUES ('exam_mark-group-delete', '删除', 'exam_mark-group', 'BUTTON', 3,4);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-marker', '评卷员管理', 'exam_mark', 'BUTTON', 2,3);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-marker', '评卷员管理', 'exam_mark', 'PAGE','/admin/exam/marker', 2,3);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-marker-reset', '重置', 'exam_mark-marker', 'BUTTON', 3,1);
 VALUES ('exam_mark-marker-reset', '重置', 'exam_mark-marker', 'BUTTON', 3,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-trial', '试评管理', 'exam_mark', 'BUTTON', 2,4);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-library', '任务管理', 'exam_mark', 'BUTTON', 2,5);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-trial', '试评管理', 'exam_mark', 'PAGE','/admin/exam/trial', 2,4);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-library', '任务管理', 'exam_mark', 'PAGE','/admin/exam/library', 2,5);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-library-inspect', '复核', 'exam_mark-library', 'BUTTON', 3,1);
 VALUES ('exam_mark-library-inspect', '复核', 'exam_mark-library', 'BUTTON', 3,1);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-library-reject', '打回', 'exam_mark-library', 'BUTTON', 3,2);
 VALUES ('exam_mark-library-reject', '打回', 'exam_mark-library', 'BUTTON', 3,2);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-arbitrate', '仲裁管理', 'exam_mark', 'BUTTON', 2,6);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-quality', '质量监控', 'exam_mark', 'BUTTON', 2,7);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-arbitrate', '仲裁管理', 'exam_mark', 'PAGE','/admin/exam/arbitrate', 2,6);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-quality', '质量监控', 'exam_mark', 'PAGE','/admin/exam/quality', 2,7);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
-VALUES ('exam_reject_list', '打回试卷', 'root_code', 'MENU', '/admin/exam/reject/manage', 70,1,'icon-bookmark','index.reject');
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_reject_list-paper', '打回卷', 'exam_reject_list', 'BUTTON', 2,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_reject_list-history', '打回记录', 'exam_reject_list', 'BUTTON', 2,2);
+VALUES ('exam_reject_list', '打回试卷', 'root_code', 'MENU', '/admin/basic/role/info/sub/page', 70,1,'icon-bookmark','index.reject');
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_reject_list-paper', '打回卷', 'exam_reject_list', 'PAGE','/admin/exam/reject/list', 2,1);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_reject_list-history', '打回记录', 'exam_reject_list', 'PAGE','/admin/exam/reject/history', 2,2);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 VALUES ('exam_problem_history', '问题试卷', 'root_code', 'MENU', '/admin/exam/problem/history', 80,1,'icon-tag','index.problem');
 VALUES ('exam_problem_history', '问题试卷', 'root_code', 'MENU', '/admin/exam/problem/history', 80,1,'icon-tag','index.problem');
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
@@ -1330,15 +1330,15 @@ VALUES ('exam_problem_history-reset', '重置', 'exam_problem_history', 'BUTTON'
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_problem_history-batch_reset', '批量重置', 'exam_problem_history', 'BUTTON', 2,2);
 VALUES ('exam_problem_history-batch_reset', '批量重置', 'exam_problem_history', 'BUTTON', 2,2);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
-VALUES ('exam_inspected_info', '成绩复核', 'root_code', 'MENU', '/admin/exam/inspected/manage', 90,1,'icon-flag','index.inspected');
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_inspected_info-info', '成绩复核进度', 'exam_inspected_info', 'BUTTON', 2,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_inspected_info-list', '全卷复核', 'exam_inspected_info', 'BUTTON', 2,2);
+VALUES ('exam_inspected_info', '成绩复核', 'root_code', 'MENU', '/admin/basic/role/info/sub/page', 90,1,'icon-flag','index.inspected');
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_inspected_info-info', '成绩复核进度', 'exam_inspected_info', 'PAGE','/admin/exam/inspected/info', 2,1);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_inspected_info-list', '全卷复核', 'exam_inspected_info', 'PAGE','/admin/exam/inspected/list', 2,2);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_inspected_info-next_round', '再次复核', 'exam_inspected_info-list', 'BUTTON', 3,1);
 VALUES ('exam_inspected_info-next_round', '再次复核', 'exam_inspected_info-list', 'BUTTON', 3,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_inspected_info-score_verify', '成绩校验', 'exam_inspected_info', 'BUTTON', 2,3);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_inspected_info-score_verify', '成绩校验', 'exam_inspected_info', 'PAGE','/admin/exam/score/verify/init', 2,3);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 VALUES ('exam_score', '成绩查询', 'root_code', 'MENU', '/admin/exam/score', 100,1,'icon-search','index.score');
 VALUES ('exam_score', '成绩查询', 'root_code', 'MENU', '/admin/exam/score', 100,1,'icon-search','index.score');
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)

+ 30 - 28
stmms-web/src/main/webapp/sql/upgrade/1.3.14.sql

@@ -177,7 +177,8 @@ CREATE TABLE `eb_user_student`
     UNIQUE KEY `index1` (`user_id`, `exam_number`)
     UNIQUE KEY `index1` (`user_id`, `exam_number`)
 ) ENGINE = InnoDB
 ) ENGINE = InnoDB
   DEFAULT CHARSET = utf8mb4 COMMENT ='用户考生关联表';
   DEFAULT CHARSET = utf8mb4 COMMENT ='用户考生关联表';
-  
+
+--菜单权限  
 DROP TABLE IF EXISTS `b_privilege`;
 DROP TABLE IF EXISTS `b_privilege`;
 CREATE TABLE `b_privilege`
 CREATE TABLE `b_privilege`
 (
 (
@@ -222,11 +223,11 @@ VALUES ('exam_paper', '科目管理', 'root_code', 'MENU', '/admin/exam/paper',
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 VALUES ('exam_scan', '扫描进度', 'root_code', 'MENU', '/admin/exam/scan', 50,1,'icon-print','index.scan');
 VALUES ('exam_scan', '扫描进度', 'root_code', 'MENU', '/admin/exam/scan', 50,1,'icon-print','index.scan');
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
-VALUES ('exam_mark', '评卷管理', 'root_code', 'MENU', '/admin/exam/mark/manage', 60,1,'icon-pencil','index.mark');
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-mark', '评卷进度', 'exam_mark', 'BUTTON', 2,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-group', '分组管理', 'exam_mark', 'BUTTON', 2,2);
+VALUES ('exam_mark', '评卷管理', 'root_code', 'MENU', '/admin/basic/role/info/sub/page', 60,1,'icon-pencil','index.mark');
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-mark', '评卷进度', 'exam_mark', 'PAGE','/admin/exam/mark', 2,1);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-group', '分组管理', 'exam_mark', 'PAGE','/admin/exam/group', 2,2);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-group-add', '新增', 'exam_mark-group', 'BUTTON', 3,1);
 VALUES ('exam_mark-group-add', '新增', 'exam_mark-group', 'BUTTON', 3,1);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
@@ -235,28 +236,28 @@ INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`lev
 VALUES ('exam_mark-group-reset_edit', '重置修改', 'exam_mark-group', 'BUTTON', 3,3);
 VALUES ('exam_mark-group-reset_edit', '重置修改', 'exam_mark-group', 'BUTTON', 3,3);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-group-delete', '删除', 'exam_mark-group', 'BUTTON', 3,4);
 VALUES ('exam_mark-group-delete', '删除', 'exam_mark-group', 'BUTTON', 3,4);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-marker', '评卷员管理', 'exam_mark', 'BUTTON', 2,3);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-marker', '评卷员管理', 'exam_mark', 'PAGE','/admin/exam/marker', 2,3);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-marker-reset', '重置', 'exam_mark-marker', 'BUTTON', 3,1);
 VALUES ('exam_mark-marker-reset', '重置', 'exam_mark-marker', 'BUTTON', 3,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-trial', '试评管理', 'exam_mark', 'BUTTON', 2,4);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-library', '任务管理', 'exam_mark', 'BUTTON', 2,5);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-trial', '试评管理', 'exam_mark', 'PAGE','/admin/exam/trial', 2,4);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-library', '任务管理', 'exam_mark', 'PAGE','/admin/exam/library', 2,5);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-library-inspect', '复核', 'exam_mark-library', 'BUTTON', 3,1);
 VALUES ('exam_mark-library-inspect', '复核', 'exam_mark-library', 'BUTTON', 3,1);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_mark-library-reject', '打回', 'exam_mark-library', 'BUTTON', 3,2);
 VALUES ('exam_mark-library-reject', '打回', 'exam_mark-library', 'BUTTON', 3,2);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-arbitrate', '仲裁管理', 'exam_mark', 'BUTTON', 2,6);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_mark-quality', '质量监控', 'exam_mark', 'BUTTON', 2,7);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-arbitrate', '仲裁管理', 'exam_mark', 'PAGE','/admin/exam/arbitrate', 2,6);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_mark-quality', '质量监控', 'exam_mark', 'PAGE','/admin/exam/quality', 2,7);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
-VALUES ('exam_reject_list', '打回试卷', 'root_code', 'MENU', '/admin/exam/reject/manage', 70,1,'icon-bookmark','index.reject');
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_reject_list-paper', '打回卷', 'exam_reject_list', 'BUTTON', 2,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_reject_list-history', '打回记录', 'exam_reject_list', 'BUTTON', 2,2);
+VALUES ('exam_reject_list', '打回试卷', 'root_code', 'MENU', '/admin/basic/role/info/sub/page', 70,1,'icon-bookmark','index.reject');
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_reject_list-paper', '打回卷', 'exam_reject_list', 'PAGE','/admin/exam/reject/list', 2,1);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_reject_list-history', '打回记录', 'exam_reject_list', 'PAGE','/admin/exam/reject/history', 2,2);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 VALUES ('exam_problem_history', '问题试卷', 'root_code', 'MENU', '/admin/exam/problem/history', 80,1,'icon-tag','index.problem');
 VALUES ('exam_problem_history', '问题试卷', 'root_code', 'MENU', '/admin/exam/problem/history', 80,1,'icon-tag','index.problem');
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
@@ -264,15 +265,15 @@ VALUES ('exam_problem_history-reset', '重置', 'exam_problem_history', 'BUTTON'
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_problem_history-batch_reset', '批量重置', 'exam_problem_history', 'BUTTON', 2,2);
 VALUES ('exam_problem_history-batch_reset', '批量重置', 'exam_problem_history', 'BUTTON', 2,2);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
-VALUES ('exam_inspected_info', '成绩复核', 'root_code', 'MENU', '/admin/exam/inspected/manage', 90,1,'icon-flag','index.inspected');
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_inspected_info-info', '成绩复核进度', 'exam_inspected_info', 'BUTTON', 2,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_inspected_info-list', '全卷复核', 'exam_inspected_info', 'BUTTON', 2,2);
+VALUES ('exam_inspected_info', '成绩复核', 'root_code', 'MENU', '/admin/basic/role/info/sub/page', 90,1,'icon-flag','index.inspected');
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_inspected_info-info', '成绩复核进度', 'exam_inspected_info', 'PAGE','/admin/exam/inspected/info', 2,1);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_inspected_info-list', '全卷复核', 'exam_inspected_info', 'PAGE','/admin/exam/inspected/list', 2,2);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 VALUES ('exam_inspected_info-next_round', '再次复核', 'exam_inspected_info-list', 'BUTTON', 3,1);
 VALUES ('exam_inspected_info-next_round', '再次复核', 'exam_inspected_info-list', 'BUTTON', 3,1);
-INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
-VALUES ('exam_inspected_info-score_verify', '成绩校验', 'exam_inspected_info', 'BUTTON', 2,3);
+INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`privilege_uri`,`level`, `seq`)
+VALUES ('exam_inspected_info-score_verify', '成绩校验', 'exam_inspected_info', 'PAGE','/admin/exam/score/verify/init', 2,3);
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 VALUES ('exam_score', '成绩查询', 'root_code', 'MENU', '/admin/exam/score', 100,1,'icon-search','index.score');
 VALUES ('exam_score', '成绩查询', 'root_code', 'MENU', '/admin/exam/score', 100,1,'icon-search','index.score');
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
@@ -285,6 +286,7 @@ INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `pr
 VALUES ('exam_check_answer', '数据检查', 'root_code', 'MENU', '/admin/exam/check/answer', 130,1,'icon-check','index.check');
 VALUES ('exam_check_answer', '数据检查', 'root_code', 'MENU', '/admin/exam/check/answer', 130,1,'icon-check','index.check');
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`, `privilege_uri`, `seq`,`level`,`icon`,`i18n`)
 VALUES ('operation_log', '操作日志', 'root_code', 'MENU', '/admin/operation/log', 140,1,'icon-tasks','index.log');
 VALUES ('operation_log', '操作日志', 'root_code', 'MENU', '/admin/operation/log', 140,1,'icon-tasks','index.log');
+
   
   
 INSERT INTO b_role_privilege (`school_id`, `role_code`, `privilege_code`,`enable`)
 INSERT INTO b_role_privilege (`school_id`, `role_code`, `privilege_code`,`enable`)
 SELECT s.id,'SCHOOL_ADMIN',p.`code`,1 from b_privilege p join b_school s;
 SELECT s.id,'SCHOOL_ADMIN',p.`code`,1 from b_privilege p join b_school s;