list.blade.php 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>layuiAdmin 网站用户</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  9. <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
  10. <link rel="stylesheet" href="/layuiadmin/style/admin.css" media="all">
  11. </head>
  12. <body>
  13. <div class="layui-fluid">
  14. <div class="layui-card">
  15. <div class="layui-form layui-card-header layuiadmin-card-header-auto">
  16. </div>
  17. <div class="layui-card-body">
  18. <div class="layui-hide" style="padding-bottom: 10px;">
  19. <button class="layui-btn layuiadmin-btn-list" data-type="add">添加</button>
  20. </div>
  21. <table id="LAY-user-manage" lay-filter="LAY-user-manage"></table>
  22. </div>
  23. </div>
  24. </div>
  25. @verbatim
  26. <script type="text/html" id="toolbar">
  27. <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
  28. <a class="layui-btn layui-btn-xs layui-bg-orange" lay-event="del">删除</a>
  29. </script>
  30. <script type="text/html" id="status">
  31. <input lay-event="status" type="checkbox" name="status" data-id="{{ d.id }}" value="{{ d.id }}" title="上架|下架" lay-skin="switch" lay-filter="status" {{ d.status == 1 ? "checked" : "" }}>
  32. </script>
  33. <script type="text/html" id="head-toolbar">
  34. <div class="layui-table-tool-temp">
  35. <div class="layui-inline" lay-event="add"><i class="layui-icon layui-icon-add-1"></i></div>
  36. </div>
  37. </script>
  38. @endverbatim
  39. <script src="/layuiadmin/layui/layui.js"></script>
  40. <script>
  41. layui.config({
  42. base: '/layuiadmin/'
  43. }).extend({
  44. index: 'lib/index'
  45. }).use(['index', 'form', 'table', 'layer'], function () {
  46. const $ = layui.$, form = layui.form, table = layui.table, layer = layui.layer;
  47. function changeSwitchStatus(rowId, status) {
  48. var switchElement = $('input[data-id="' + rowId + '"]');
  49. if (switchElement.length) {
  50. switchElement.prop('checked', status);
  51. form.render('checkbox');
  52. }
  53. }
  54. form.on('switch(status)', function (obj) {
  55. let name = this.name;
  56. let data = {
  57. id: this.value,
  58. [name]: obj.elem.checked ? 1 : 0
  59. };
  60. $.ajax({
  61. url: "{{ route('wallet.setStatus') }}",
  62. method: "post",
  63. headers: {'X-CSRF-TOKEN': "{{ csrf_token() }}"},
  64. data,
  65. success(res) {
  66. if (res.code !== 0) {
  67. layer.msg(res.msg);
  68. changeSwitchStatus(obj.elem.dataset.id, !obj.elem.checked);
  69. } else {
  70. }
  71. }
  72. });
  73. });
  74. var count = 0, active = {
  75. add() {
  76. layer.open({
  77. type: 2,
  78. title: '添加产品',
  79. content: "{{ route('wallet.edit') }}",
  80. resize: false,
  81. area: ['350px', '350px'],
  82. btn: ['确定', '取消'],
  83. success(layero, index, that) {
  84. let iframe = layero.find('iframe')[0];
  85. let iframeWindow = iframe.contentWindow;
  86. iframeWindow.layui.form.val('form', {
  87. status: true
  88. });
  89. },
  90. end() {
  91. tableList.reloadData();
  92. },
  93. yes: function (index, layero) {
  94. //点击确认触发 iframe 内容中的按钮提交
  95. var submit = layero.find('iframe').contents().find("#layuiadmin-app-form-submit");
  96. submit.click();
  97. }
  98. });
  99. }
  100. };
  101. table.on('toolbar(LAY-user-manage)', function (obj) {
  102. let type = obj.event;
  103. active[type] ? active[type].call(this) : '';
  104. });
  105. let tableList = table.render({
  106. elem: '#LAY-user-manage',
  107. url: "{{url('wallet/getList')}}",
  108. toolbar: '#head-toolbar',
  109. defaultToolbar: [],
  110. cols: [[
  111. {field: 'name', title: '产品名称'},
  112. {field: 'product_id', title: '产品ID'},
  113. {field: 'price', title: '售价($)'},
  114. {field: 'wallet', title: '实际到账($)'},
  115. {title: "状态", width: 100, templet: "#status"},
  116. {title: '操作', width: 200, toolbar: '#toolbar'}
  117. ]],
  118. page: false,
  119. where: {lang: 'zh-CN'},
  120. height: 'full-80',
  121. text: {none: '无数据'},
  122. parseData(res) {
  123. count = res.data.count;
  124. return {
  125. code: res.data.code,
  126. msg: res.data.msg,
  127. count: res.data.count,
  128. data: res.data.data
  129. };
  130. }
  131. });
  132. table.on('tool(LAY-user-manage)', function (obj) {
  133. switch (obj.event) {
  134. case "del":
  135. layer.alert('删除?', function (index) {
  136. $.ajax({
  137. url: "{{ route('wallet.del') }}",
  138. method: 'post',
  139. data: {id: obj.data.id},
  140. headers: {'X-CSRF-TOKEN': "{{ csrf_token() }}"},
  141. success(res) {
  142. if (res.code === 0) {
  143. layer.close(index);
  144. tableList.reloadData();
  145. } else {
  146. layer.msg(res.msg);
  147. }
  148. }
  149. });
  150. });
  151. break;
  152. case "edit":
  153. layer.open({
  154. type: 2,
  155. title: '编辑产品',
  156. content: "{{ route('wallet.edit') }}",
  157. resize: false,
  158. area: ['350px', '350px'],
  159. btn: ['确定', '取消'],
  160. success(layero, index, that) {
  161. let iframe = layero.find('iframe')[0];
  162. layero.find('iframe').contents().find("#cover").attr('src', obj.data.cover);
  163. let iframeWindow = iframe.contentWindow;
  164. iframeWindow.layui.form.val('form', {
  165. name: obj.data.name,
  166. id: obj.data.id,
  167. productId: obj.data.product_id,
  168. price: obj.data.price,
  169. wallet: obj.data.wallet,
  170. status: obj.data.status,
  171. });
  172. if (obj.data.status === 1) {
  173. iframeWindow.layui.form.val('form', {
  174. status: true
  175. });
  176. }
  177. },
  178. end() {
  179. tableList.reloadData();
  180. },
  181. yes: function (index, layero) {
  182. //点击确认触发 iframe 内容中的按钮提交
  183. var submit = layero.find('iframe').contents().find("#layuiadmin-app-form-submit");
  184. submit.click();
  185. }
  186. });
  187. break;
  188. }
  189. });
  190. });
  191. </script>
  192. </body>
  193. </html>