瀏覽代碼

部分一级菜单连接动态

xiatian 1 年之前
父節點
當前提交
d1c1818cb8

+ 19 - 0
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/InspectedController.java

@@ -29,6 +29,7 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 import cn.com.qmth.stmms.admin.dto.RejectResult;
 import cn.com.qmth.stmms.admin.utils.ExportInspectExcel;
 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.exam.bean.ExamStudentVo;
 import cn.com.qmth.stmms.biz.exam.bean.InspectWorkVo;
@@ -104,6 +105,9 @@ public class InspectedController extends BaseExamController {
 
     @Autowired
     private SchoolService schoolService;
+    
+	@Autowired
+	private RolePrivilegeService rolePrivilegeService;
 
     @Value("${slice.split.config}")
     private String splitConfig;
@@ -666,4 +670,19 @@ public class InspectedController extends BaseExamController {
         }
         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;
+        }
+    }
 }

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

@@ -22,11 +22,11 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 import cn.com.qmth.stmms.admin.dto.MarkInfoDTO;
 import cn.com.qmth.stmms.admin.dto.MarkerInfoDTO;
 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.MarkGroup;
 import cn.com.qmth.stmms.biz.exam.model.Marker;
 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.ExamSubjectService;
 import cn.com.qmth.stmms.biz.exam.service.MarkGroupService;
 import cn.com.qmth.stmms.biz.exam.service.MarkerService;
@@ -67,8 +67,8 @@ public class MarkController extends BaseExamController {
     @Autowired
     private UserService userService;
 
-    @Autowired
-    private ExamService examService;
+	@Autowired
+	private RolePrivilegeService rolePrivilegeService;
 
     @Autowired
     private MarkLibraryService libraryService;
@@ -259,5 +259,28 @@ public class MarkController extends BaseExamController {
         }
         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;
+        }
+    }
 
 }

+ 19 - 6
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/RejectController.java

@@ -2,12 +2,10 @@ package cn.com.qmth.stmms.admin.exam;
 
 import java.util.ArrayList;
 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;
@@ -18,11 +16,11 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 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.Marker;
 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.ExamService;
 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.MarkerService;
@@ -39,6 +37,8 @@ import cn.com.qmth.stmms.common.domain.WebUser;
 import cn.com.qmth.stmms.common.enums.LibraryStatus;
 import cn.com.qmth.stmms.common.enums.LogType;
 import cn.com.qmth.stmms.common.utils.RequestUtils;
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
 
 @Controller
 @RequestMapping("/admin/exam/reject")
@@ -55,8 +55,8 @@ public class RejectController extends BaseExamController {
     @Autowired
     private ExamSubjectService subjectService;
 
-    @Autowired
-    private ExamService examService;
+	@Autowired
+	private RolePrivilegeService rolePrivilegeService;
 
     @Autowired
     private MarkGroupService groupService;
@@ -192,4 +192,17 @@ public class RejectController extends BaseExamController {
         }
         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;
+        }
+    }
 }

+ 16 - 21
stmms-web/src/main/webapp/WEB-INF/views/modules/basic/rolePrivilege.jsp

@@ -27,29 +27,14 @@
 				},
 				callback:{
 					onCheck:function(ev,id, node){
-						/* if('exam_mark'==node.code&&node.enable){
-							var node = tree.getNodeByParam("code", "exam_mark-mark");
-							tree.checkNode(node, true, true, true);
-						} */
-						if('exam_mark-mark'==node.code&&!node.enable){
-							var node = tree.getNodeByParam("code", "exam_mark");
-							tree.checkNode(node, false, true, true);
+						if('exam_mark'==node.parentCode&&!node.enable){
+							checkChildAllDisable(node.parentCode)
 						}
-						/* if('exam_reject_list'==node.code&&node.enable){
-							var node = tree.getNodeByParam("code", "exam_reject_list-paper");
-							tree.checkNode(node, true, true, true);
-						} */
-						if('exam_reject_list-paper'==node.code&&!node.enable){
-							var node = tree.getNodeByParam("code", "exam_reject_list");
-							tree.checkNode(node, false, true, true);
+						if('exam_reject_list'==node.parentCode&&!node.enable){
+							checkChildAllDisable(node.parentCode)
 						}
-						/* if('exam_inspected_info'==node.code&&node.enable){
-							var node = tree.getNodeByParam("code", "exam_inspected_info-info");
-							tree.checkNode(node, true, true, true);
-						} */
-						if('exam_inspected_info-info'==node.code&&!node.enable){
-							var node = tree.getNodeByParam("code", "exam_inspected_info");
-							tree.checkNode(node, false, true, true);
+						if('exam_inspected_info'==node.parentCode&&!node.enable){
+							checkChildAllDisable(node.parentCode)
 						}
 					}
 				}
@@ -62,6 +47,16 @@
 				tree.expandNode(nodes[i], true, false, false);
 			}
 		});
+		function checkChildAllDisable(pcode){
+			var nodes = tree.getNodesByParam("parentCode", pcode);
+			for(var i=0; i<nodes.length; i++) {
+				if(nodes[i].enable){
+					return;
+				}
+			}
+			var pnode = tree.getNodeByParam("code", pcode);
+			tree.checkNode(pnode, false, true, true);
+		}
 		function save() {
 			var checkedNodes = tree.getCheckedNodes();
 			if(checkedNodes&&checkedNodes.length>0){

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

@@ -1288,7 +1288,7 @@ 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`)
 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`)
-VALUES ('exam_mark', '评卷管理', 'root_code', 'MENU', '/admin/exam/mark', 60,1,'icon-pencil','index.mark');
+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`)
@@ -1318,7 +1318,7 @@ 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`, `seq`,`level`,`icon`,`i18n`)
-VALUES ('exam_reject_list', '打回试卷', 'root_code', 'MENU', '/admin/exam/reject/list', 70,1,'icon-bookmark','index.reject');
+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`)
@@ -1330,7 +1330,7 @@ VALUES ('exam_problem_history-reset', '重置', 'exam_problem_history', 'BUTTON'
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 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`)
-VALUES ('exam_inspected_info', '成绩复核', 'root_code', 'MENU', '/admin/exam/inspected/info', 90,1,'icon-flag','index.inspected');
+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`)

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

@@ -222,7 +222,7 @@ 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`)
 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`)
-VALUES ('exam_mark', '评卷管理', 'root_code', 'MENU', '/admin/exam/mark', 60,1,'icon-pencil','index.mark');
+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`)
@@ -252,7 +252,7 @@ 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`, `seq`,`level`,`icon`,`i18n`)
-VALUES ('exam_reject_list', '打回试卷', 'root_code', 'MENU', '/admin/exam/reject/list', 70,1,'icon-bookmark','index.reject');
+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`)
@@ -264,7 +264,7 @@ VALUES ('exam_problem_history-reset', '重置', 'exam_problem_history', 'BUTTON'
 INSERT INTO `b_privilege` ( `code`, `name`, `parent_code`, `privilege_type`,`level`, `seq`)
 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`)
-VALUES ('exam_inspected_info', '成绩复核', 'root_code', 'MENU', '/admin/exam/inspected/info', 90,1,'icon-flag','index.inspected');
+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`)