edit_shop.html 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223
  1. <!DOCTYPE html>
  2. <html lang="zh-cn">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>更换产品</title>
  6. <link rel="stylesheet" href="/app/admin/component/pear/css/pear.css" />
  7. <link rel="stylesheet" href="/app/admin/component/jsoneditor/css/jsoneditor.css" />
  8. <link rel="stylesheet" href="/app/admin/admin/css/reset.css" />
  9. </head>
  10. <body>
  11. <form class="layui-form">
  12. <div class="mainBox">
  13. <div class="main-container mr-5">
  14. <div class="layui-form-item">
  15. <label class="layui-form-label">会员名称</label>
  16. <div class="layui-input-block">
  17. <input type="text" name="user_name" readonly="readonly" value="" class="layui-input">
  18. </div>
  19. </div>
  20. <div class="layui-form-item">
  21. <label class="layui-form-label">会员手机号</label>
  22. <div class="layui-input-block">
  23. <input type="text" name="user_mobile" readonly="readonly" value="" class="layui-input">
  24. </div>
  25. </div>
  26. <div class="layui-form-item">
  27. <label class="layui-form-label">当前产品</label>
  28. <div class="layui-input-block">
  29. <div name="goods_id" id="goods_id" value="" ></div>
  30. </div>
  31. </div>
  32. <div class="layui-form-item">
  33. <label class="layui-form-label">购买金额</label>
  34. <div class="layui-input-block">
  35. <input type="number" name="money" readonly="readonly" value="" class="layui-input">
  36. </div>
  37. </div>
  38. <div class="layui-form-item">
  39. <label class="layui-form-label">换购产品</label>
  40. <div class="layui-input-block">
  41. <div name="redemption" id="redemption" value="" ></div>
  42. </div>
  43. </div>
  44. </div>
  45. </div>
  46. <div class="bottom">
  47. <div class="button-container">
  48. <button type="submit" class="pear-btn pear-btn-primary pear-btn-md" lay-submit="" lay-filter="save">
  49. 提交
  50. </button>
  51. <button type="reset" class="pear-btn pear-btn-md">
  52. 重置
  53. </button>
  54. </div>
  55. </div>
  56. </form>
  57. <script src="/app/admin/component/layui/layui.js?v=2.8.12"></script>
  58. <script src="/app/admin/component/pear/pear.js"></script>
  59. <script src="/app/admin/component/jsoneditor/jsoneditor.js"></script>
  60. <script src="/app/admin/admin/js/permission.js"></script>
  61. <script>
  62. // 相关接口
  63. const PRIMARY_KEY = "id";
  64. const SELECT_API = "/app/admin/my-good/select" + location.search;
  65. const UPDATE_API = "/app/admin/my-good/edit_shop";
  66. // 获取数据库记录
  67. layui.use(["form", "util", "popup"], function () {
  68. let $ = layui.$;
  69. $.ajax({
  70. url: SELECT_API,
  71. dataType: "json",
  72. success: function (res) {
  73. // 给表单初始化数据
  74. layui.each(res.data[0], function (key, value) {
  75. let obj = $('*[name="'+key+'"]');
  76. if (typeof obj[0] === "undefined" || !obj[0].nodeName) return;
  77. if (obj[0].nodeName.toLowerCase() === "textarea") {
  78. obj.val(value);
  79. } else {
  80. obj.attr("value", value);
  81. obj[0].value = value;
  82. }
  83. });
  84. // 字段 商品ID goods_id
  85. layui.use(["jquery", "xmSelect", "popup"], function() {
  86. layui.$.ajax({
  87. url: "/app/admin/good/addselect",
  88. dataType: "json",
  89. success: function (res) {
  90. let value = layui.$("#goods_id").attr("value");
  91. let initValue = value ? value.split(",") : [];
  92. layui.xmSelect.render({
  93. el: "#goods_id",
  94. name: "goods_id",
  95. initValue: initValue,
  96. filterable: true,
  97. data: res.data,
  98. model: {"icon":"hidden","label":{"type":"text"}},
  99. clickClose: true,
  100. radio: true,
  101. });
  102. if (res.code) {
  103. layui.popup.failure(res.msg);
  104. }
  105. }
  106. });
  107. });
  108. layui.use(["jquery", "xmSelect", "popup"], function() {
  109. layui.$.ajax({
  110. url: "/app/admin/good/addselect",
  111. dataType: "json",
  112. success: function (res) {
  113. let value = layui.$("#redemption").attr("value");
  114. let initValue = value ? value.split(",") : [];
  115. layui.xmSelect.render({
  116. el: "#redemption",
  117. name: "redemption",
  118. initValue: initValue,
  119. filterable: true,
  120. data: res.data,
  121. model: {"icon":"hidden","label":{"type":"text"}},
  122. clickClose: true,
  123. radio: true,
  124. });
  125. if (res.code) {
  126. layui.popup.failure(res.msg);
  127. }
  128. }
  129. });
  130. });
  131. // 字段 状态 1有效 2失效 state
  132. layui.use(["form"], function() {
  133. layui.$("#state").attr("checked", layui.$('input[name="state"]').val() != 0);
  134. layui.form.render();
  135. layui.form.on("switch(state)", function(data) {
  136. layui.$('input[name="state"]').val(this.checked ? 1 : 0);
  137. });
  138. })
  139. // 字段 购买时间 created_at
  140. layui.use(["laydate"], function() {
  141. layui.laydate.render({
  142. elem: "#created_at",
  143. type: "datetime",
  144. });
  145. })
  146. // 字段 更新时间 updated_at
  147. layui.use(["laydate"], function() {
  148. layui.laydate.render({
  149. elem: "#updated_at",
  150. type: "datetime",
  151. });
  152. })
  153. // ajax返回失败
  154. if (res.code) {
  155. layui.popup.failure(res.msg);
  156. }
  157. }
  158. });
  159. });
  160. //提交事件
  161. layui.use(["form", "popup"], function () {
  162. // 字段验证允许为空
  163. layui.form.verify({
  164. phone: [/(^$)|^1\d{10}$/, "请输入正确的手机号"],
  165. email: [/(^$)|^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/, "邮箱格式不正确"],
  166. url: [/(^$)|(^#)|(^http(s*):\/\/[^\s]+\.[^\s]+)/, "链接格式不正确"],
  167. number: [/(^$)|^\d+$/,'只能填写数字'],
  168. date: [/(^$)|^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/, "日期格式不正确"],
  169. identity: [/(^$)|(^\d{15}$)|(^\d{17}(x|X|\d)$)/, "请输入正确的身份证号"]
  170. });
  171. layui.form.on("submit(save)", function (data) {
  172. data.field[PRIMARY_KEY] = layui.url().search[PRIMARY_KEY];
  173. layui.$.ajax({
  174. url: UPDATE_API,
  175. type: "POST",
  176. dateType: "json",
  177. data: data.field,
  178. success: function (res) {
  179. if (res.code) {
  180. return layui.popup.failure(res.msg);
  181. }
  182. return layui.popup.success("操作成功", function () {
  183. parent.refreshTable();
  184. parent.layer.close(parent.layer.getFrameIndex(window.name));
  185. });
  186. }
  187. });
  188. return false;
  189. });
  190. });
  191. </script>
  192. </body>
  193. </html>