user.tpl 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8" />
  5. <title>欢迎页面-X-admin2.0</title>
  6. <link rel="stylesheet" href="./static/css/font.css">
  7. <link rel="stylesheet" href="./static/css/xadmin.css">
  8. <script type="text/javascript" src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
  9. <script src="./static/lib/layui/layui.js" charset="utf-8"></script>
  10. <script type="text/javascript" src="./static/js/xadmin.js"></script>
  11. </head>
  12. <body>
  13. <input type="text" id="token" value={{.token}} hidden=true>
  14. <dialog open id="modalAdd" class="x-body layui-anim layui-anim-up" hidden=true style = "center;">
  15. <form action="user" method="post" class="layui-form layui-form-pane">
  16. 用户名:
  17. <input id="username" name="username" placeholder="用户名至少6个字符串" type="text" lay-verify="required" class="layui-input" >
  18. <br>
  19. <br>
  20. 密码:
  21. <input id="password" name="password" placeholder="密码6到32位" type="password" lay-verify="required" class="layui-input" >
  22. <br>
  23. <br>
  24. 确认密码:
  25. <input id="passwordform" name="passwordform" type="password" lay-verify="required" class="layui-input" >
  26. <br>
  27. <br>
  28. 权限:
  29. <select name="" id="permission">
  30. {{range .permissions}}
  31. <option value={{.Id}}>{{.Name}}</option>
  32. {{end}}
  33. </select>
  34. <br>
  35. <br>
  36. <input value="新增" class="layui-btn" style="width:100%;" type="button" onclick="addUser()">
  37. <br>
  38. <br>
  39. <input value="关闭" class="layui-btn" style="width:100%;" type="button" onclick="closeAddUser()">
  40. <hr class="hr20" >
  41. </form>
  42. </dialog>
  43. <dialog open id="modalModify" class="x-body layui-anim layui-anim-up" hidden=true style = "center;">
  44. <form action="user" method="put" class="layui-form layui-form-pane">
  45. <input id="modify_id" hidden=true type="text">
  46. 用户名:
  47. <input id="usernamemodify" name="usernamemodify" placeholder="用户名至少6个字符串" type="text" lay-verify="required" class="layui-input" >
  48. <br>
  49. <br>
  50. 密码:
  51. <input id="passwordmodify" name="passwordmodify" placeholder="密码6到32位" type="password" lay-verify="required" class="layui-input" >
  52. <br>
  53. <br>
  54. 确认密码:
  55. <input id="passwordformmodify" name="passwordformmodify" type="password" lay-verify="required" class="layui-input" >
  56. <br>
  57. <br>
  58. 权限:
  59. <select name="" id="permissionmodify">
  60. {{range .permissions}}
  61. <option value={{.Id}}>{{.Name}}</option>
  62. {{end}}
  63. </select>
  64. <br>
  65. <br>
  66. <input value="修改" class="layui-btn" style="width:100%;" type="button" onclick="modifyUser()">
  67. <br>
  68. <br>
  69. <input value="关闭" class="layui-btn" style="width:100%;" type="button" onclick="closeModifyUser()">
  70. <hr class="hr20" >
  71. </form>
  72. </dialog>
  73. <input class="layui-btn" type="button" onclick="OpenAddRole()" value=新增角色>
  74. <br>
  75. <br>
  76. <table border="1">
  77. <thead>
  78. <th style="width:256px;">操作</th>
  79. <th style="width:128px;">用户名</th>
  80. <th style="width:128px;">角色</th>
  81. <th style="width:256px;">创建时间</th>
  82. <th style="width:256px;">最后登录时间</th>
  83. </thead>
  84. <tbody>
  85. {{range .users}}
  86. <tr>
  87. <td style = "text-align:center;">
  88. <input class="layui-btn" type="button" onclick="OpenModifyUser({{.Id}}, {{.Username}}, {{.Password}})" value=修改>
  89. {{" | "}}
  90. <input class="layui-btn" type="button" onclick="clickDelete({{.Id}})" value=删除>
  91. </tb>
  92. <td style = "text-align:center;">{{.Username}}</td>
  93. <td style = "text-align:center;">{{GetRoleNameById .Role}}</td>
  94. <td style = "text-align:center;">{{TimeToStr .CreateTs}}</td>
  95. <td style = "text-align:center;">{{TimeToStr .LastLoginTs}}</td>
  96. </tr>
  97. {{end}}
  98. </tbody>
  99. </table>
  100. <script language="JavaScript">
  101. function OpenAddRole() {
  102. document.getElementById("modalAdd").hidden = false;
  103. }
  104. function closeAddUser() {
  105. document.getElementById("modalAdd").hidden = true;
  106. }
  107. function addUser() {
  108. var name = document.getElementById("username").value;
  109. if (name.length > 20 || name.length < 6){
  110. alert("用户名至少6个字符!");
  111. return;
  112. }
  113. var pwd = document.getElementById("password").value;
  114. var pwdform = document.getElementById("passwordform").value;
  115. if (pwd.length > 32 || pwd.length < 6){
  116. alert("密码至少6个且32个字符!");
  117. return;
  118. }
  119. if (pwd != pwdform) {
  120. document.getElementById("password").value = "";
  121. document.getElementById("passwordform").value = "";
  122. alert("密码不一致!");
  123. return;
  124. }
  125. document.getElementById("modalAdd").hidden = true;
  126. var token = document.getElementById("token").value;
  127. var permission = document.getElementById("permission").value;
  128. var text;
  129. text = "permission=" + encodeURI(permission) + "&token=" + encodeURI(token);
  130. text += "&username=" + encodeURI(name);
  131. text += "&password=" + encodeURI(pwd);
  132. $.ajax({
  133. type:"post",
  134. url:"user?" + text,
  135. success:function (data) {
  136. if (data.status){
  137. window.location.href="/user";
  138. }else{
  139. if (data.info){
  140. alert(data.info);
  141. }else{
  142. window.location.href="/accountlogin";
  143. }
  144. }
  145. }
  146. });
  147. }
  148. function OpenModifyUser(id, name, pwd) {
  149. document.getElementById("modify_id").value = id;
  150. document.getElementById("usernamemodify").value = name;
  151. document.getElementById("passwordmodify").value = pwd;
  152. document.getElementById("passwordformmodify").value = pwd;
  153. document.getElementById("modalModify").hidden = false;
  154. }
  155. function closeModifyUser() {
  156. document.getElementById("modalModify").hidden = true;
  157. }
  158. function modifyUser () {
  159. var name = document.getElementById("usernamemodify").value;
  160. if (name.length > 20 || name.length < 6){
  161. alert("用户名至少6个字符!");
  162. return;
  163. }
  164. var pwd = document.getElementById("passwordmodify").value;
  165. var pwdform = document.getElementById("passwordformmodify").value;
  166. if (pwd.length > 32 || pwd.length < 6){
  167. alert("密码至少6个且32个字符!");
  168. return;
  169. }
  170. if (pwd != pwdform) {
  171. document.getElementById("passwordmodify").value = "";
  172. document.getElementById("passwordformmodify").value = "";
  173. alert("密码不一致!");
  174. return;
  175. }
  176. document.getElementById("modalModify").hidden = true;
  177. var token = document.getElementById("token").value;
  178. var permission = document.getElementById("permissionmodify").value;
  179. var id = document.getElementById("modify_id").value;
  180. var text;
  181. text = "permission=" + encodeURI(permission) + "&token=" + encodeURI(token);
  182. text += "&username=" + encodeURI(name);
  183. text += "&password=" + encodeURI(pwd);
  184. text += "&id=" + encodeURI(id);
  185. $.ajax({
  186. type:"put",
  187. url:"user?" + text,
  188. success:function (data) {
  189. if (data.status){
  190. window.location.href="/user";
  191. }else{
  192. if (data.info){
  193. alert(data.info);
  194. }else{
  195. window.location.href="/accountlogin";
  196. }
  197. }
  198. }
  199. });
  200. }
  201. function clickDelete (id) {
  202. var token = document.getElementById("token").value;
  203. var text = "id=" + encodeURI(id) + "&action=delete";
  204. text += "&token=" + encodeURI(token);
  205. $.ajax({
  206. type:"delete",
  207. url:"/user?" + text,
  208. success:function (data) {
  209. // alert(data.status);
  210. if (data.status){
  211. window.location.href="/user";
  212. }else{
  213. if (data.info){
  214. alert(data.info);
  215. }else{
  216. window.location.href="/accountlogin";
  217. }
  218. }
  219. }
  220. });
  221. }
  222. </script>
  223. </body>
  224. </html>