lists.html 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344
  1. {extend name="app/admin/view/base.html"/}
  2. {block name="resources"}
  3. {/block}
  4. {block name="main"}
  5. <!-- 搜索框 -->
  6. <!-- <div class="ns-single-filter-box">
  7. <div class="layui-form">
  8. <div class="layui-input-inline">
  9. <input type="text" name="search_text" placeholder="请输入商品名称" autocomplete="off" class="layui-input">
  10. <button type="button" class="layui-btn layui-btn-primary" lay-filter="search" lay-submit>
  11. <i class="layui-icon">&#xe615;</i>
  12. </button>
  13. </div>
  14. </div>
  15. </div> -->
  16. <div class="ns-screen layui-collapse">
  17. <div class="layui-colla-item">
  18. <h2 class="layui-colla-title">筛选</h2>
  19. <form class="layui-colla-content layui-form layui-show">
  20. <!-- <div class="layui-form-item">
  21. <div class="layui-inline">
  22. <label class="layui-form-label">举报类型</label>
  23. <div class="layui-input-inline">
  24. <select name="state" lay-search="">
  25. </select>
  26. </div>
  27. </div>
  28. </div> -->
  29. <div class="layui-form-item">
  30. <div class="layui-inline">
  31. <label class="layui-form-label">商品名称:</label>
  32. <div class="layui-input-inline">
  33. <input type="text" name="search_text" placeholder="请输入商品名称" autocomplete="off" class="layui-input">
  34. </div>
  35. </div>
  36. <div class="layui-inline">
  37. <label class="layui-form-label">举报主题:</label>
  38. <div class="layui-input-inline">
  39. <select name="subject_id" lay-search=""></select>
  40. </div>
  41. </div>
  42. <div class="layui-inline">
  43. <label class="layui-form-label">处理结果:</label>
  44. <div class="layui-input-inline">
  45. <select name="state" lay-search="">
  46. <option value=""></option>
  47. <option value="0">未处理</option>
  48. <option value="1">已处理</option>
  49. </select>
  50. </div>
  51. </div>
  52. </div>
  53. <div class="ns-form-row">
  54. <button class="layui-btn ns-bg-color" lay-submit lay-filter="btn_search">筛选</button>
  55. <button type="reset" class="layui-btn layui-btn-primary">重置</button>
  56. </div>
  57. </form>
  58. </div>
  59. </div>
  60. <!-- 列表 -->
  61. <table id="inform_list" lay-filter="inform_list"></table>
  62. <script type="text/html" id="state">
  63. {{# if(d.state == 0){}}
  64. 未处理
  65. {{# } }}
  66. {{# if(d.state == 1){}}
  67. 已处理
  68. {{# } }}
  69. </script>
  70. <script type="text/html" id="inform_pic">
  71. <div class='ns-table-tuwen-box'>
  72. <div class='ns-img-box'>
  73. {{# if(d.inform_pic){ }}
  74. <img layer-src src="{{ns.img(d.inform_pic.split(',')[0])}}">
  75. {{# } }}
  76. </div>
  77. </div>
  78. </script>
  79. <script type="text/html" id="time">
  80. <div class='ns-table-tuwen-box'>
  81. <p class="ns-multi-line-hiding">{{ns.time_to_date(d.create_time)}}</p>
  82. </div>
  83. </script>
  84. <!-- 编辑删除操作 -->
  85. <script type="text/html" id="operation">
  86. <div class="ns-table-btn">
  87. <a class="layui-btn" lay-event="detail">详情</a>
  88. <a class="layui-btn" lay-event="editinform">处理</a>
  89. </div>
  90. </script>
  91. {/block}
  92. {block name="script"}
  93. <script>
  94. var form,laytpl;
  95. repeat_flag = false; //防重复标识
  96. layui.use(['form','laytpl'], function() {
  97. form = layui.form;
  98. laytpl = layui.laytpl;
  99. form.render();
  100. subjectType(); //举报类型选择
  101. table = new Table({
  102. elem: '#inform_list',
  103. url: ns.url("admin/inform/lists"),
  104. cols: [
  105. [{
  106. field: 'sku_name',
  107. title: '商品名称',
  108. unresize: 'false',
  109. width: '20%'
  110. }, {
  111. field: 'sku_name',
  112. title: '举报人',
  113. unresize: 'false',
  114. width: '20%'
  115. },{
  116. field: 'state',
  117. title: '处理状态',
  118. unresize: 'false',
  119. width: '15%',
  120. templet:'#state'
  121. },{
  122. field: 'subject_name',
  123. title: '举报主题',
  124. unresize: 'false',
  125. width: '15%'
  126. }, {
  127. field: 'inform_pic',
  128. title: '图片',
  129. unresize: 'false',
  130. width: '10%',
  131. templet:'#inform_pic'
  132. }, {
  133. field: 'create_time',
  134. title: '举报时间',
  135. unresize: 'false',
  136. width: '10%',
  137. templet:'#time'
  138. }, {
  139. title: '操作',
  140. toolbar: '#operation',
  141. unresize: 'false',
  142. width: '10%'
  143. }]
  144. ]
  145. });
  146. /**
  147. * 监听工具栏操作
  148. */
  149. table.tool(function(obj) {
  150. var data = obj.data;
  151. switch (obj.event) {
  152. case 'detail': //举报详情
  153. detail(data);
  154. break;
  155. case 'editinform': //处理举报
  156. editinform(data);
  157. break;
  158. }
  159. });
  160. /**
  161. * 搜索功能
  162. */
  163. form.on('submit(search)', function(data) {
  164. table.reload({
  165. page: {
  166. curr: 1
  167. },
  168. where: data.field
  169. });
  170. });
  171. form.on('submit(editinform)', function(data){
  172. layer.closeAll();
  173. $.ajax({
  174. url: ns.url("admin/inform/editinform"),
  175. data: data.field,
  176. type: "POST",
  177. dataType: "JSON",
  178. success: function(res) {
  179. if (res.code == 0) {
  180. layer.confirm('处理成功', {
  181. title:'操作提示',
  182. btn: ['返回列表'],
  183. yes: function(){
  184. location.href = ns.url("admin/inform/lists");
  185. }
  186. });
  187. }else{
  188. layer.msg(res.message);
  189. repeat_flag = false;
  190. }
  191. }
  192. });
  193. });
  194. });
  195. function cancel()
  196. {
  197. layer.closeAll()
  198. }
  199. function detail(data) {
  200. $.ajax({
  201. type: 'POST',
  202. dataType: 'JSON',
  203. url: ns.url("admin/inform/detail"),
  204. data: {'inform_id': data.inform_id},
  205. success: function (res) {
  206. laytpl($("#detail").html()).render(res.data, function(html) {
  207. layer.open({
  208. title: '礼品订单详情',
  209. skin: 'layer-tips-class',
  210. type: 0,
  211. area: ['450px'],
  212. content: html
  213. });
  214. });
  215. }
  216. });
  217. }
  218. /**
  219. * 处理举报
  220. * @param data
  221. */
  222. function editinform(data) {
  223. $.ajax({
  224. type: 'POST',
  225. dataType: 'JSON',
  226. url: ns.url("admin/inform/detail"),
  227. data: {'inform_id': data.inform_id},
  228. success: function (res) {
  229. laytpl($("#editinform").html()).render(res.data, function(html) {
  230. layer.open({
  231. title: '编辑',
  232. skin: 'layer-tips-class',
  233. type: 1,
  234. area: ['450px'],
  235. content: html
  236. });
  237. });
  238. }
  239. });
  240. }
  241. //举报类型
  242. function subjectType() {
  243. var html = "";
  244. $.ajax({
  245. url: ns.url("admin/inform/subject"),
  246. type: 'POST',
  247. dataType: 'JSON',
  248. success: function (res) {
  249. html += '<option value="">请选择举报主题</option>';
  250. $.each(res.data.list, function (key, val) {
  251. html += `<option value="${val.subject_id}">${val.subject_content}</option>`;
  252. });
  253. $("select[name='subject_id']").html(html);
  254. form.render('select');
  255. }
  256. });
  257. }
  258. </script>
  259. <!-- 详情弹框html -->
  260. <script type="text/html" id="detail">
  261. <table class="layui-table ns-table-detail">
  262. <colgroup>
  263. <col width="120">
  264. <col width="270">
  265. </colgroup>
  266. <tbody>
  267. <tr>
  268. <td>会员名</td>
  269. <td>{{d.member_name}}</td>
  270. </tr>
  271. <tr>
  272. <td>举报主题名称</td>
  273. <td>{{d.sku_name}}</td>
  274. </tr>
  275. <tr>
  276. <td>举报主题名称</td>
  277. <td>{{d.subject_name}}</td>
  278. </tr>
  279. <tr>
  280. <td>举报内容</td>
  281. <td>{{d.content}}</td>
  282. </tr>
  283. <tr>
  284. <td>站点名称</td>
  285. <td>{{d.site_name}}</td>
  286. </tr>
  287. <tr>
  288. <td>创建时间</td>
  289. <td>{{ns.time_to_date(d.create_time)}}</td>
  290. </tr>
  291. <tr>
  292. <td>处理状态</td>
  293. <td>{{d.state==0 ? '未处理' : '已处理'}}</td>
  294. </tr>
  295. <tr>
  296. <td>处理类型名称</td>
  297. <td>{{d.deal_type_name}}</td>
  298. </tr>
  299. <tr>
  300. <td>完成时间</td>
  301. <td>{{d.deal_content}}</td>
  302. </tr>
  303. <tr>
  304. <td>完成时间</td>
  305. <td>{{ns.time_to_date(d.deal_time)}}</td>
  306. </tr>
  307. </tbody>
  308. </table>
  309. </script>
  310. <!-- 配送管理html -->
  311. <script type="text/html" id="editinform">
  312. <div class="layui-form">
  313. <div class="layui-form-item">
  314. <label class="layui-form-label">处理信息</label>
  315. <div class="layui-input-block">
  316. <textarea name="deal_content" class="layui-textarea"></textarea>
  317. </div>
  318. </div>
  319. <div class="layui-form-item">
  320. <div class="layui-input-block">
  321. <input type="hidden" name="inform_id" value="{{d.inform_id}}" class="layui-input">
  322. <button class="layui-btn ns-bg-color" lay-submit lay-filter="editinform">处理</button>
  323. <button type="reset" onclick="cancel()" class="layui-btn ns-bg-color">取消</button>
  324. </div>
  325. </div>
  326. </div>
  327. {/block}