useredit.js 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. let roleId = 0;
  2. let departmentId = 0;
  3. let userId = 0;
  4. let roleName = "";
  5. let departmentName = "";
  6. let sex = 0;
  7. var departmentType = 0
  8. $(function() {
  9. userId = window.location.href.split("?")[1].replace("id=", "");
  10. var userAccount = $("#userAccount");
  11. var password1 = $("#password1");
  12. var password2 = $("#password2");
  13. var realName = $("#realName");
  14. var purpose = $("#purpose");
  15. var remark = $("#remark");
  16. var isEnable = false;
  17. layui.use(["form", "layer", "laydate"], function() {
  18. $ = layui.jquery;
  19. var form = layui.form,
  20. layer = layui.layer;
  21. var laydate = layui.laydate;
  22. // laydate.render({
  23. // elem: '#birth',
  24. // isInitValue: false,
  25. // trigger: "click"
  26. // });
  27. form.on("switch(isEnable)", function(data) {
  28. // console.log(data)
  29. isEnable = data.elem.checked ? 0 : 1
  30. });
  31. // form.on("switch(sex)", function(data) {
  32. // sex = data.elem.checked ? 1 : 0;
  33. // });
  34. let url = "api/user/edit";
  35. if (userId === "0") url = "api/user/add";
  36. //监听提交
  37. form.on("submit(add)", function(data) {
  38. if (password1.val().trim() !== password2.val().trim()) {
  39. showMsg("两次输入的密码不相同", 2);
  40. password2.focus();
  41. return false;
  42. }
  43. if ($("#userName").val().trim() === "") {
  44. showMsg("用户名不能为空!", 2);
  45. $("#userName").focus();
  46. return false;
  47. }
  48. if ($("#password1").val().trim() === "") {
  49. showMsg("请输入密码", 2);
  50. $("#password1").focus();
  51. return false;
  52. }
  53. if ($("#password2").val().trim() === "") {
  54. showMsg("请确认密码", 2);
  55. $("#password2").focus();
  56. return false;
  57. }
  58. if($("#roleSelect").find("option:selected").val() == -1){
  59. showMsg("请选择角色", 2);
  60. $("#roleSelect").focus();
  61. return false;
  62. }
  63. if($("#departmentSelect").find("option:selected").val() == -1){
  64. showMsg("请选择部门", 2);
  65. $("#departmentSelect").focus();
  66. return false;
  67. }
  68. var user = data.field;
  69. if (password1.val().trim() === "" && password2.val().trim() === "") {
  70. user.password = "";
  71. } else {
  72. user.password = password1.val().trim();
  73. }
  74. user.id = userId;
  75. user.isEnable = isEnable;
  76. user.roleName = roleName;
  77. user.departmentName = departmentName;
  78. // user.realName = realName.val();
  79. user.remark = remark.val();
  80. // user.sex = sex;
  81. // user.birth = $("#birth").val();
  82. fetchJSON(url, user, "post", function(data) {
  83. if (data.status === 0) {
  84. layer.alert("保存成功", {
  85. icon: 6
  86. }, function() {
  87. var index = parent.layer.getFrameIndex(window.name);
  88. parent.layer.close(index);
  89. });
  90. } else {
  91. showMsg(data.msg, 2);
  92. }
  93. });
  94. return false;
  95. });
  96. form.on("select", function(data) {
  97. if (data.elem.id === "roleSelect")
  98. roleName = data.elem[data.elem.selectedIndex].text;
  99. else if (data.elem.id === "departmentSelect")
  100. departmentName =data.elem[data.elem.selectedIndex].text;
  101. })
  102. if (userId === "0") {
  103. getRoles();
  104. getDepartments();
  105. } else {
  106. // 填充现有数据
  107. fetchJSON("api/user/get?id=" + userId, {}, "get", function(data) {
  108. if (data.status === 0) {
  109. var user = data.data;
  110. userAccount.html(user.userName);
  111. $("#userName").val(user.userName);
  112. password1.val(user.password);
  113. password2.val(user.password);
  114. realName.html(user.realName);
  115. realName.val(user.realName);
  116. purpose.val(user.purpose);
  117. // $("#birth").val(user.birth);
  118. departmentName = user.departmentName;
  119. roleId = data.data.roleId;
  120. departmentId = data.data.departmentId;
  121. // if (user.sex === 0) {
  122. // $("#sex").attr("checked", "checked");
  123. // }
  124. isEnable = user.isEnable;
  125. if (user.isEnable === 0) {
  126. $("#isEnable").attr("checked", "checked");
  127. }
  128. form.render('checkbox');
  129. getRoles();
  130. getDepartments();
  131. remark.val(user.remark);
  132. $("#parentId").val(user.departmentId);
  133. } else {
  134. showMsg(data.msg, 2);
  135. }
  136. });
  137. }
  138. });
  139. });
  140. function getRoles() {
  141. fetchJSON("api/role/listAll", {}, "get", function(bet) {
  142. if (bet.status === 0) {
  143. $("#roleSelect").empty();
  144. $("#roleSelect").append($("<option>", {
  145. value: -1,
  146. text: "请选择"
  147. }));
  148. for (var i = 0; i < bet.data.length; i++) {
  149. if (bet.data[i].id === roleId) {
  150. $("#roleSelect").append(
  151. $("<option>", {
  152. value: bet.data[i].id,
  153. text: bet.data[i].roleName,
  154. selected: true
  155. })
  156. );
  157. } else {
  158. $("#roleSelect").append(
  159. $("<option>", {
  160. value: bet.data[i].id,
  161. text: bet.data[i].roleName
  162. })
  163. );
  164. }
  165. }
  166. layui.use("form", function() {
  167. layui.form.render('select', 'roleFilter');
  168. });
  169. } else {
  170. showMsg(bet.msg, 2);
  171. }
  172. });
  173. };
  174. function getDepartments() {
  175. fetchJSON("api/department/listAll?departmentType="+ departmentType + "&parentId=" + departmentType, {}, "get", function(departmentList) {
  176. if (departmentList.status === 0) {
  177. $("#departmentSelect").empty();
  178. $("#departmentSelect").append($("<option>", {
  179. value: -1,
  180. text: "请选择"
  181. }));
  182. for (var i = 0; i < departmentList.data.length; i++) {
  183. if (departmentList.data[i].id === departmentId) {
  184. $("#departmentSelect").append(
  185. $("<option>", {
  186. value: departmentList.data[i].id,
  187. text: departmentList.data[i].departmentName,
  188. selected: true
  189. })
  190. );
  191. } else {
  192. $("#departmentSelect").append(
  193. $("<option>", {
  194. value: departmentList.data[i].id,
  195. text: departmentList.data[i].departmentName
  196. })
  197. );
  198. }
  199. }
  200. layui.use("form", function() {
  201. layui.form.render('select','departmentFilter');
  202. });
  203. } else {
  204. showMsg(departmentList.msg, 2);
  205. }
  206. });
  207. }