userForm.jsp 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. <%@ page contentType="text/html;charset=UTF-8" %>
  2. <%@ include file="/webpage/include/taglib.jsp"%>
  3. <html>
  4. <head>
  5. <title>用户管理</title>
  6. <meta name="decorator" content="ani"/>
  7. <script type="text/javascript">
  8. function save() {
  9. var isValidate = jp.validateForm('#inputForm');//校验表单
  10. if(!isValidate){
  11. return false;
  12. }else{
  13. jp.loading();
  14. jp.post("${ctx}/sys/user/save",$('#inputForm').serialize(),function(data){
  15. if(data.success){
  16. jp.getParent().refresh();
  17. var dialogIndex = parent.layer.getFrameIndex(window.name); // 获取窗口索引
  18. parent.layer.close(dialogIndex);
  19. jp.success(data.msg)
  20. }else{
  21. jp.error(data.msg);
  22. }
  23. })
  24. }
  25. }
  26. $(document).ready(function() {
  27. $("#no").focus();
  28. $("#inputForm").validate({
  29. rules: {
  30. loginName: {remote: "${ctx}/sys/user/checkLoginName?oldLoginName=" + encodeURIComponent('${user.loginName}')},
  31. name: {remote: "${ctx}/sys/user/checkName"}
  32. },
  33. messages: {
  34. loginName: {remote: "用户登录名已存在"},
  35. name:{remote: "用户名已存在"},
  36. confirmNewPassword: {equalTo: "输入与上面相同的密码"}
  37. }
  38. });
  39. });
  40. </script>
  41. </head>
  42. <body class="bg-white">
  43. <form:form id="inputForm" modelAttribute="user" method="post" class="form-horizontal">
  44. <form:hidden path="id"/>
  45. <table class="table table-bordered">
  46. <tbody>
  47. <tr>
  48. <td class="width-15 active"> <label class="pull-right"><font color="red">*</font>头像:</label></td>
  49. <td class="width-35">
  50. <sys:fileUpload path="photo" value="${user.photo}" type="image" uploadPath="/photo" fileNumLimit="1" readonly="false"/></td>
  51. <td class="width-15 active"> <label class="pull-right"><font color="red">*</font>归属公司:</label></td>
  52. <td class="width-35"><sys:treeselect id="company" name="company.id" value="${user.company.id}" labelName="company.name" labelValue="${user.company.name}"
  53. title="公司" url="/sys/office/treeData?type=1" allowClear="true" cssClass="form-control required"/></td>
  54. </tr>
  55. <tr>
  56. <td class="active"><label class="pull-right"><font color="red">*</font>归属部门:</label></td>
  57. <td><sys:treeselect id="office" name="office.id" value="${user.office.id}" labelName="office.name" labelValue="${user.office.name}"
  58. allowClear="true" title="部门" url="/sys/office/treeData?type=2" cssClass="form-control required" notAllowSelectParent="true"/></td>
  59. <td class="active"><label class="pull-right"><font color="red">*</font>工号:</label></td>
  60. <td><form:input path="no" htmlEscape="false" maxlength="50" class="form-control required"/></td>
  61. </tr>
  62. <tr>
  63. <td class="active"><label class="pull-right"><font color="red">*</font>姓名:</label></td>
  64. <td>
  65. <form:input path="name" htmlEscape="false" maxlength="50" class="form-control required"/>
  66. </td>
  67. <td class="active"><label class="pull-right"><font color="red">*</font>登录名:</label></td>
  68. <td><input id="oldLoginName" type="hidden" name="oldLoginName" value="${user.loginName}">
  69. <form:input path="loginName" htmlEscape="false" maxlength="50" class="form-control required userName"/></td>
  70. </tr>
  71. <tr>
  72. <td class="active"><label class="pull-right"><c:if test="${empty user.id}"><font color="red">*</font></c:if>密码:</label></td>
  73. <td><input id="newPassword" name="newPassword" type="password" value="" maxlength="50" minlength="3" class="form-control ${empty user.id?'required':''}"/>
  74. <c:if test="${not empty user.id}"><span class="help-inline">若不修改密码,请留空。</span></c:if></td>
  75. <td class="active"><label class="pull-right"><c:if test="${empty user.id}"><font color="red">*</font></c:if>确认密码:</label></td>
  76. <td><input id="confirmNewPassword" name="confirmNewPassword" type="password" class="form-control ${empty user.id?'required':''}" value="" maxlength="50" minlength="3" equalTo="#newPassword"/></td>
  77. </tr>
  78. <tr>
  79. <td class="active"><label class="pull-right">邮箱:</label></td>
  80. <td><form:input path="email" htmlEscape="false" maxlength="100" class="form-control email"/></td>
  81. <td class="active"><label class="pull-right">电话:</label></td>
  82. <td><form:input path="phone" htmlEscape="false" maxlength="100" class="form-control"/></td>
  83. </tr>
  84. <tr>
  85. <td class="active"><label class="pull-right">手机:</label></td>
  86. <td><form:input path="mobile" htmlEscape="false" maxlength="100" class="form-control"/></td>
  87. <td class="active"><label class="pull-right">是否允许登录:</label></td>
  88. <td><form:select path="loginFlag" class="form-control">
  89. <form:options items="${fns:getDictList('yes_no')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
  90. </form:select></td>
  91. </tr>
  92. <tr>
  93. <td class="active"><label class="pull-right"><font color="red">*</font>用户角色:</label></td>
  94. <td>
  95. <form:checkboxes path="roleIdList" items="${allRoles}" itemLabel="name" itemValue="id" htmlEscape="false" cssClass="i-checks required"/>
  96. <label id="roleIdList-error" class="error" for="roleIdList"></label>
  97. </td>
  98. <td class="active"><label class="pull-right">备注:</label></td>
  99. <td><form:textarea path="remarks" htmlEscape="false" rows="3" maxlength="200" class="form-control"/></td>
  100. </tr>
  101. <c:if test="${not empty user.id}">
  102. <tr>
  103. <td class=""><label class="pull-right">创建时间:</label></td>
  104. <td><span class="lbl"><fmt:formatDate value="${user.createDate}" type="both" dateStyle="full"/></span></td>
  105. <td class=""><label class="pull-right">最后登陆:</label></td>
  106. <td><span class="lbl">IP: ${user.loginIp}&nbsp;&nbsp;&nbsp;&nbsp;时间:<fmt:formatDate value="${user.loginDate}" type="both" dateStyle="full"/></span></td>
  107. </tr>
  108. </c:if>
  109. </tbody>
  110. </table>
  111. </form:form>
  112. </body>
  113. </html>