ting.yin пре 6 година
родитељ
комит
e983eb0837

+ 1 - 1
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/school/model/School.java

@@ -78,7 +78,7 @@ public class School implements Serializable {
     @Column(name = "time_modified")
     private Date timeModified;
     
-    @ManyToMany(cascade = CascadeType.PERSIST, fetch=FetchType.LAZY)
+    @ManyToMany(cascade = CascadeType.PERSIST, fetch=FetchType.EAGER)
     @JoinTable(name="b_school_user",joinColumns={@JoinColumn(name="school_id")},inverseJoinColumns={@JoinColumn(name="user_id")})
     private Set<User> users = new HashSet<>();
 

+ 2 - 5
stmms-web/src/main/java/cn/com/qmth/stmms/admin/school/SchoolController.java

@@ -206,11 +206,8 @@ public class SchoolController {
         ModelAndView view = new ModelAndView("modules/sys/schoolAdminList");
         School school = schoolService.findById(id);
         if (school != null) {
-            query.setSchoolId(id);
-            query.setType(UserType.ADMIN);
-            query.addIncludeRole(Role.SCHOOL_ADMIN);
-            query = userService.searchByQuery(query);
-            view.addObject("query",query);
+        	view.addObject("schoolId",id);
+            view.addObject("query",school.getUsers());
             view.addObject("message",message);
             return view;
         } else {

+ 6 - 14
stmms-web/src/main/java/cn/com/qmth/stmms/admin/school/SchoolUserController.java

@@ -50,7 +50,7 @@ public class SchoolUserController extends BaseParameterController{
         SchoolSearchQuery query = new SchoolSearchQuery();
         model.addAttribute("schools", schoolService.findByQuery(query));
         model.addAttribute("user",new User());
-        return "modules/sys/schoolUserEdit";
+        return "modules/sys/schoolUserAdd";
     }
 
     @RequestMapping(value = "/save", method = RequestMethod.POST)
@@ -67,19 +67,10 @@ public class SchoolUserController extends BaseParameterController{
         }
         if (user.getId() != null) {
         	User previous = userService.findById(user.getId());
-            previous.setLoginName(user.getLoginName());
-            previous.setName(user.getName());
-            if (StringUtils.isNotBlank(user.getPassword())) {
-                previous.setPassword(Md5EncryptUtils.md5(user.getPassword()));
-            }
-            if (checkLoginName(previous)) {
-            	previous.setSchoolId(schoolIds[0]);
-            	previous.setSchools(schools);
-                userService.save(previous);
-                return "redirect:/admin/sys/school/user";
-            } else {
-            	addMessage(redirectAttributes, "登录名重复");
-            }
+            previous.setSchoolId(schoolIds[0]);
+            previous.setSchools(schools);
+            userService.save(previous);
+            return "redirect:/admin/sys/school/user";
         } else if (StringUtils.isBlank(user.getPassword())) {
         	addMessage(redirectAttributes, "密码不能为空");
         } else if (checkLoginName(user)) {
@@ -93,6 +84,7 @@ public class SchoolUserController extends BaseParameterController{
             userService.save(user);
             return "redirect:/admin/sys/school/user";
         }
+        addMessage(redirectAttributes, "登录名重复");
         return "redirect:/admin/sys/school/user/add";
     }
     

+ 12 - 27
stmms-web/src/main/webapp/WEB-INF/views/modules/sys/schoolAdminList.jsp

@@ -8,19 +8,16 @@
 </head>
 <body>
 	<form id="searchForm"  action="${ctx}/admin/sys/school/adminList" method="post" class="breadcrumb form-search">
-		<input type="hidden" id="pageNumber" name="pageNumber" value="${query.pageNumber}"/>
-		<input type="hidden" id="pageSize" name="pageSize" value="${query.pageSize}"/>
-		<input type="hidden" id="schoolId" name="schoolId" value="${query.schoolId}"/>
 		<div>
-			<label>登录账号</label>
-			<input type="text" name="loginName" value="${query.loginName}"  maxlength="20" class="input-medium"/>
-			&nbsp;&nbsp;&nbsp;&nbsp;
-            <label>登录名</label>
-            <input type="text" name="name" value="${query.name}"  maxlength="20" class="input-medium"/>
-			&nbsp;
-			<input id="btnSubmit" class="btn btn-primary" type="button" value="查询" onclick="goSearch()"/>
-			&nbsp;
-			<a href="${ctx}/admin/sys/school/adminList/add?id=${query.schoolId}" class="btn btn-primary">新建</a>
+<!-- 			<label>登录账号</label> -->
+<%-- 			<input type="text" name="loginName" value="${query.loginName}"  maxlength="20" class="input-medium"/> --%>
+<!-- 			&nbsp;&nbsp;&nbsp;&nbsp; -->
+<!--             <label>登录名</label> -->
+<%--             <input type="text" name="name" value="${query.name}"  maxlength="20" class="input-medium"/> --%>
+<!-- 			&nbsp; -->
+<!-- 			<input id="btnSubmit" class="btn btn-primary" type="button" value="查询" onclick="goSearch()"/> -->
+<!-- 			&nbsp; -->
+			<a href="${ctx}/admin/sys/school/adminList/add?id=${schoolId}" class="btn btn-primary">新建</a>
             &nbsp;
             <input id="btnCancel" class="btn" type="button" value="返 回" onclick="backCtn();"/>
 		</div>
@@ -37,7 +34,7 @@
 			</tr>
 		</thead>
 		<tbody>
-		<c:forEach items="${query.result}" var="user">
+		<c:forEach items="${query}" var="user">
 			<tr>
 				<td>${user.loginName}</td>
 				<td>${user.name}</td>
@@ -57,20 +54,8 @@
 		</c:forEach>
 		</tbody>
 	</table>
-	<div class="pagination">${query}</div>
 <script type="text/javascript">
-function page(n,s){
-	$("#pageNumber").val(n);
-	$("#pageSize").val(s);
-	$("#searchForm").submit();
-	return false;
-}
-function goSearch(){
-	$("#pageNumber").val(1);
-	$("#pageSize").val('${query.pageSize}');
-	$("#searchForm").submit();
-	return false;
-}
+
 function reSetPW(userId) {
   $.post('${ctx}/admin/sys/school/adminList/reSetPW',{userId:userId},function(obj){
     if(obj.success){
@@ -84,7 +69,7 @@ function setStartOrStop(status,userId,type){
   $.post('${ctx}/admin/sys/school/adminList/update',{userId:userId,status:type},function(obj){
     if(obj.success){
       alert("修改成功!");
-      window.location.href='${ctx}/admin/sys/school/admin/view/${query.schoolId}';
+      window.location.href='${ctx}/admin/sys/school/admin/view/${schoolId}';
     }else {
       alert(obj.message);
     }

+ 89 - 0
stmms-web/src/main/webapp/WEB-INF/views/modules/sys/schoolUserAdd.jsp

@@ -0,0 +1,89 @@
+<%@ page contentType="text/html;charset=UTF-8" %>
+<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
+<html>
+<head>
+	<title>学校管理员</title>
+	<meta name="decorator" content="default"/>
+	<%@include file="/WEB-INF/views/include/head.jsp" %>
+	<script type="text/javascript">
+		$(document).ready(function() {
+			$("#loginName").focus();
+			$("#inputForm").validate({
+				submitHandler: function(form){
+					loading('正在提交,请稍等...');
+					form.submit();
+				},
+				errorContainer: "#messageBox",
+				errorPlacement: function(error, element) {
+					$("#messageBox").text("输入有误,请先更正。");
+					if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
+						error.appendTo(element.parent().parent());
+					} else {
+						error.insertAfter(element);
+					}
+				}
+			});
+			$('#btnSubmit').click(function(){
+				var p1 = $('#password-input').val();
+				var p2 = $('#password2-input').val();
+				if((p1!='' || p2!='') && p2!=p1){
+					alert('两次密码输入不一致');
+					return false;
+				}else{
+					return true;
+				}
+			});
+		});
+	</script>
+</head>
+<body>
+	<form:form id="inputForm" modelAttribute="user" action="${ctx}/admin/sys/school/user/save" method="post" class="form-horizontal">
+		<%--<form:hidden path="id"/>--%>
+		<form:hidden path="id"/>
+		<tags:message content="${message}"/>
+		<div class="control-group">
+			<label class="control-label">帐号</label>
+			<div class="controls">
+				<form:input path="loginName" htmlEscape="false" maxlength="200" class="required"/>
+			</div>
+		</div>
+		<div class="control-group">
+			<label class="control-label">名称</label>
+			<div class="controls">
+				<form:input path="name" htmlEscape="false" maxlength="200" class="required"/>
+			</div>
+		</div>
+		<div class="control-group">
+			<label class="control-label">密码</label>
+			<div class="controls">
+				<input type="password" name="password" id="password-input" class="required"/>
+			</div>
+		</div>
+		<div class="control-group">
+			<label class="control-label">重复输入</label>
+			<div class="controls">
+				<input type="password" id="password2-input" class="required"/>
+			</div>
+		</div>
+		<div class="control-group">
+			<label class="control-label">选择学校</label>
+			<div class="controls">
+				<c:forEach items="${schools.result}" var="school">
+					<input type="checkbox" value="${school.id}" name="schoolIds" 
+						<c:forEach items="${user.schools}" var="oldSchool">
+							<c:if test="${school.id==user.schoolId||school.id==oldSchool.id}">checked='checked'</c:if>
+						</c:forEach>
+					/>
+					${school.name}<br/>
+				</c:forEach>
+			</div>
+		</div>
+		<div class="form-actions">
+			<%-- <shiro:hasPermission name="exam:course:edit"> --%>
+			<input id="btnSubmit" class="btn btn-primary" type="submit" value="保 存"/>&nbsp;
+			<%-- </shiro:hasPermission> --%>
+			 <input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>
+		</div>
+	</form:form>
+</body>
+</html>

+ 2 - 14
stmms-web/src/main/webapp/WEB-INF/views/modules/sys/schoolUserEdit.jsp

@@ -44,25 +44,13 @@
 		<div class="control-group">
 			<label class="control-label">帐号</label>
 			<div class="controls">
-				<form:input path="loginName" htmlEscape="false" maxlength="200" class="required"/>
+				<input name="loginName" readonly="readonly" maxlength="200" class="required" value = "${user.loginName }"/>
 			</div>
 		</div>
 		<div class="control-group">
 			<label class="control-label">名称</label>
 			<div class="controls">
-				<form:input path="name" htmlEscape="false" maxlength="200" class="required"/>
-			</div>
-		</div>
-		<div class="control-group">
-			<label class="control-label">密码</label>
-			<div class="controls">
-				<input type="password" name="password" id="password-input" class="required"/>
-			</div>
-		</div>
-		<div class="control-group">
-			<label class="control-label">重复输入</label>
-			<div class="controls">
-				<input type="password" id="password2-input" class="required"/>
+				<input name="name" readonly="readonly" maxlength="200" class="required" value="${user.name }"/>
 			</div>
 		</div>
 		<div class="control-group">