edit.html 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>员工信息</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport"
  9. content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  10. <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
  11. <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
  12. <link rel="stylesheet" type="text/css" href="../../layuiadmin/style/formSelects-v4.css"/>
  13. <style>
  14. #group_selecter dl {
  15. max-height: 200px;
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <div class="layui-fluid">
  21. <div class="layui-row layui-col-space15">
  22. <div class="layui-col-md6">
  23. <div class="layui-card">
  24. <div class="layui-card-body">
  25. <form class="layui-form" action="" lay-filter="component-form-element">
  26. <div class="layui-row layui-col-space10 layui-form-item">
  27. <div class="layui-col-lg6">
  28. <label class="layui-form-label"><font color='red' size="4">*</font>姓名:</label>
  29. <div class="layui-input-block">
  30. <input type="text" name="name" lay-verify="required" placeholder="请输入姓名"
  31. autocomplete="off" class="layui-input">
  32. </div>
  33. </div>
  34. <div class="layui-col-lg6">
  35. <label class="layui-form-label"><font color='red' size="4">*</font>性别:</label>
  36. <div class="layui-input-block">
  37. <input type="radio" name="gender" value="2" title="男" checked>
  38. <input type="radio" name="gender" value="1" title="女">
  39. </div>
  40. </div>
  41. <div class="layui-col-lg6">
  42. <label class="layui-form-label"><font color='red' size="4">*</font>电话:</label>
  43. <div class="layui-input-block">
  44. <input type="text" name="tel" placeholder="请输入电话" lay-verify="required"
  45. autocomplete="off" class="layui-input">
  46. </div>
  47. </div>
  48. <div class="layui-col-lg6">
  49. <label class="layui-form-label"><font color='red' size="4">*</font>账号:</label>
  50. <div class="layui-input-block">
  51. <input type="text" name="username" lay-verify="required" placeholder="请输入账号"
  52. autocomplete="off" class="layui-input">
  53. </div>
  54. </div>
  55. <div class="layui-col-lg6">
  56. <label class="layui-form-label">密码:</label>
  57. <div class="layui-input-block">
  58. <input type="password" name="password" placeholder="请输入密码" autocomplete="off"
  59. class="layui-input">
  60. <div class="layui-word-aux">默认密码:1111</div>
  61. </div>
  62. </div>
  63. <div class="layui-col-lg6">
  64. <label class="layui-form-label">职位:</label>
  65. <div class="layui-input-block">
  66. <input type="text" name="position" placeholder="请输入职位" autocomplete="off"
  67. class="layui-input">
  68. </div>
  69. </div>
  70. <div class="layui-form-item">
  71. <label class="layui-form-label"><font color='red' size="4">*</font>类别:</label>
  72. <div class="layui-input-block">
  73. <select name="type" lay-verify="required" style="width: 40px;">
  74. <option value="">请选择类别</option>
  75. <option value="1">员工</option>
  76. <option value="2">代理</option>
  77. </select>
  78. </div>
  79. </div>
  80. <div>
  81. <label class="layui-form-label"><font color='red' size="4">*</font>管理学校:</label>
  82. <div class="layui-input-block">
  83. <select name="school" xm-select="schoolGroup"></select>
  84. </div>
  85. </div>
  86. <div>
  87. <label class="layui-form-label"><font color='red' size="4">*</font>管理分类:</label>
  88. <div class="layui-input-block">
  89. <select name="category" xm-select="categoryGroup"></select>
  90. </div>
  91. </div>
  92. <div class="layui-col-lg6">
  93. <label class="layui-form-label">权限组:</label>
  94. <div class="layui-input-block">
  95. <select name="groups" xm-select="selectGroup"></select>
  96. </div>
  97. </div>
  98. <div class="layui-col-lg6">
  99. <label class="layui-form-label">是否在用:</label>
  100. <div class="layui-input-block">
  101. <input type="checkbox" name="is_active" lay-skin="switch" lay-text="是|否" checked=""
  102. value="1">
  103. </div>
  104. </div>
  105. <button class="layui-btn" id="id_user_save" lay-submit lay-filter="component-form-element"
  106. style="display: none">保存
  107. </button>
  108. </div>
  109. </form>
  110. </div>
  111. </div>
  112. </div>
  113. </div>
  114. </div>
  115. <script src="../../layuiadmin/layui/layui.js"></script>
  116. <script>
  117. layui.config({
  118. base: '../../../layuiadmin/' //静态资源所在路径
  119. }).extend({
  120. index: 'lib/index',
  121. formSelects: 'formSelects-v4',
  122. }).use(['index', 'form', 'formSelects',], function () {
  123. var $ = layui.$
  124. , admin = layui.admin
  125. , formSelects = layui.formSelects
  126. , form = layui.form;
  127. var id = layui.view.getParameterByName('id');
  128. if (id) {
  129. var editdata = JSON.parse(JSON.stringify(parent.layui.table.editdata)); // 框架有Bug所以这么转换
  130. //渲染select
  131. form.val("component-form-element", editdata);
  132. }
  133. form.render(null, 'component-form-element');
  134. formSelects.config('selectGroup', {
  135. beforeSuccess: function (eid, url, searchVal, result) {
  136. if (id) {
  137. var groupIds = parent.layui.table.editdata.group_ids;
  138. for (var n in result.data) {
  139. var item = result.data[n];
  140. if (groupIds.indexOf(parseInt(item.value)) > -1)
  141. item.selected = 'selected';
  142. }
  143. }
  144. return result;
  145. }
  146. });
  147. formSelects.data('selectGroup', 'server', {
  148. url: '/account/permission/dict/'
  149. });
  150. formSelects.config('categoryGroup', {
  151. beforeSuccess: function (eid, url, searchVal, result) {
  152. if (id) {
  153. var category = parent.layui.table.editdata.category_ids ?? [];
  154. for (var n in result.data) {
  155. var item = result.data[n];
  156. for (var c1 in category) {
  157. if (category[c1] == item.value.toString()) {
  158. item.selected = 'selected';
  159. }
  160. }
  161. var children1 = item.children
  162. for (var c in children1) {
  163. for (var c2 in category) {
  164. if (category[c2] == children1[c].value.toString()) {
  165. children1[c].selected = 'selected';
  166. }
  167. }
  168. var children2 = children1[c].children
  169. for (var i in children2) {
  170. for (var c3 in category) {
  171. if (category[c3] == children2[i].value.toString()) {
  172. children2[i].selected = 'selected';
  173. }
  174. }
  175. }
  176. }
  177. }
  178. }
  179. return result;
  180. },
  181. });
  182. formSelects.data('categoryGroup', 'server', {
  183. url: '/option/get_category_tree/'
  184. });
  185. formSelects.config('schoolGroup', {
  186. beforeSuccess: function (eid, url, searchVal, result) {
  187. if (id) {
  188. var school = parent.layui.table.editdata.school ?? [];
  189. for (var n in result.data) {
  190. var item = result.data[n];
  191. if (school.indexOf(item.value) > -1) {
  192. item.selected = 'selected';
  193. var children1 = item.children
  194. for (var c in children1) {
  195. if (school.indexOf(children1[c].value) > -1) {
  196. children1[c].selected = 'selected';
  197. var children2 = children1[c].children
  198. for (var i in children2) {
  199. if (school.indexOf(children2[i].value) > -1) {
  200. children2[i].selected = 'selected';
  201. }
  202. }
  203. }
  204. }
  205. }
  206. }
  207. }
  208. return result;
  209. },
  210. });
  211. formSelects.data('schoolGroup', 'server', {
  212. url: '/option/get_school/'
  213. });
  214. form.on('submit(component-form-element)', function (data) {
  215. if (id) {
  216. var url = '/account/employee/' + id + '/';
  217. var type = 'put';
  218. } else {
  219. url = '/account/employee/';
  220. type = 'post';
  221. }
  222. var groups = formSelects.value('selectGroup', 'val');
  223. data.field.groups = JSON.stringify(groups);
  224. if (!data.field.is_active) {
  225. data.field.is_active = '0'
  226. }
  227. admin.req({
  228. url: url
  229. , data: data.field
  230. , type: type
  231. , done: function (res) {
  232. parent.layui.onSubmitChild(res);
  233. }
  234. });
  235. return false;
  236. });
  237. parent.layui.submitChild = function () {
  238. $("#id_user_save").click();
  239. };
  240. });
  241. </script>
  242. </body>
  243. </html>