recommend.php 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. {extend name="public/container"}
  2. {block name="content"}
  3. <div class="layui-fluid">
  4. <div id="app">
  5. <!--产品列表-->
  6. <div >
  7. <div class="layui-card">
  8. <div class="layui-card-header">
  9. <div style="font-weight: bold;">热门推荐</div>
  10. </div>
  11. <div class="layui-card-body">
  12. <div class="layui-btn-container">
  13. <button type="button" class="layui-btn layui-btn-normal layui-btn-sm" onclick="$eb.createModalFrame('添加推荐分组','{:Url('create_recemmend_v1')}',{h:480})"><i class="layui-icon">&#xe608;</i> 添加推荐分组</button>
  14. </div>
  15. <table class="layui-hide" id="List" lay-filter="List"></table>
  16. <script type="text/html" id="image">
  17. {{# if(d.image) { }}
  18. <img style="cursor: pointer" lay-event='open_image' src="{{d.image}}">
  19. {{# } }}
  20. </script>
  21. <script type="text/html" id="is_show">
  22. <input type='checkbox' name='id' lay-skin='switch' value="{{d.id}}" lay-filter='is_show' lay-text='显示|隐藏' {{ d.is_show == 1 ? 'checked' : '' }}>
  23. </script>
  24. <script type="text/html" id="act">
  25. <button type="button" class="layui-btn layui-btn-xs layui-btn-normal" onclick="dropdown(this)"><i class="layui-icon">&#xe625;</i> 操作</button>
  26. <ul class="layui-nav-child layui-anim layui-anim-upbit">
  27. <li>
  28. <div onclick="$eb.createModalFrame('{{d.title}}-'+this.innerText,'{:Url('create_recemmend_v1')}?id={{d.id}}',{h:480})">
  29. <i class="fa fa-paste"></i> 编辑
  30. </div>
  31. </li>
  32. {{# if(d.typesetting!=5){ }}
  33. <li>
  34. <a href="javascript:;" onclick="$eb.createModalFrame('{{d.title}}-'+this.innerText,'{:Url('recemmend_content')}?id={{d.id}}')">
  35. <i class="fa fa-list-ul"></i> 内容管理
  36. </a>
  37. </li>
  38. <li>
  39. <div onclick="$eb.createModalFrame(this.innerText,'{:Url('recemmend_banner')}?id={{d.id}}',{w:900})">
  40. <i class="fa fa-file-image-o"></i> Banner
  41. </div>
  42. </li>
  43. <li>
  44. <div lay-event='delete'>
  45. <i class="fa fa-trash"></i> 删除
  46. </div>
  47. </li>
  48. {{# } }}
  49. </ul>
  50. </script>
  51. </div>
  52. </div>
  53. </div>
  54. </div>
  55. </div>
  56. <script src="{__ADMIN_PATH}js/layuiList.js"></script>
  57. {/block}
  58. {block name="script"}
  59. <script>
  60. //实例化form
  61. layList.form.render();
  62. //加载列表
  63. layList.tableList('List',"{:Url('recommend_list')}",function (){
  64. return [
  65. {field: 'title', title: '列表名称',edit:'title',align:'center'},
  66. {field: 'type_ting', title: '列表模式',align:'center'},
  67. {field: 'type_name', title: '内容类型',align:'center'},
  68. {field: 'sort', title: '排序',sort: true,event:'sort',edit:'sort',align:'center'},
  69. {field: 'grade_title', title: '科目名称',align:'center'},
  70. {field: 'number', title: '数量',align:'center'},
  71. {field: 'is_show', title: '状态',templet:'#is_show',align:'center'},
  72. {field: 'right', title: '操作',toolbar:'#act',align:'center'},
  73. ];
  74. });
  75. //自定义方法
  76. var action= {
  77. set_value: function (field, id, value) {
  78. layList.baseGet(layList.Url({
  79. a: 'set_value',
  80. q: {field: field, id: id, value: value}
  81. }), function (res) {
  82. layList.msg(res.msg);
  83. });
  84. },
  85. }
  86. layList.switch('is_show',function (odj,value) {
  87. if(odj.elem.checked==true){
  88. layList.baseGet(layList.Url({a:'set_show',p:{is_show:1,id:value}}),function (res) {
  89. layList.msg(res.msg);
  90. });
  91. }else{
  92. layList.baseGet(layList.Url({a:'set_show',p:{is_show:0,id:value}}),function (res) {
  93. layList.msg(res.msg);
  94. });
  95. }
  96. });
  97. //快速编辑
  98. layList.edit(function (obj) {
  99. var id=obj.data.id,value=obj.value;
  100. switch (obj.field) {
  101. case 'title':
  102. action.set_value('title',id,value);
  103. break;
  104. case 'sort':
  105. action.set_value('sort',id,value);
  106. break;
  107. }
  108. });
  109. //监听并执行排序
  110. layList.sort(['sort'],true);
  111. //点击事件绑定
  112. layList.tool(function (event,data,obj) {
  113. switch (event) {
  114. case 'delete':
  115. var url=layList.U({a:'delete_recomm',q:{id:data.id}});
  116. $eb.$swal('delete',function(){
  117. $eb.axios.get(url).then(function(res){
  118. if(res.status == 200 && res.data.code == 200) {
  119. $eb.$swal('success',res.data.msg);
  120. obj.del();
  121. }else
  122. return Promise.reject(res.data.msg || '删除失败')
  123. }).catch(function(err){
  124. $eb.$swal('error',err);
  125. });
  126. })
  127. break;
  128. case 'open_image':
  129. $eb.openImage(data.image);
  130. break;
  131. }
  132. })
  133. //下拉框
  134. $(document).click(function (e) {
  135. $('.layui-nav-child').hide();
  136. })
  137. function dropdown(that){
  138. var oEvent = arguments.callee.caller.arguments[0] || event;
  139. oEvent.stopPropagation();
  140. var offset = $(that).offset();
  141. var top=offset.top-$(window).scrollTop();
  142. var index = $(that).parents('tr').data('index');
  143. $('.layui-nav-child').each(function (key) {
  144. if (key != index) {
  145. $(this).hide();
  146. }
  147. })
  148. if($(document).height() < top+$(that).next('ul').height()){
  149. $(that).next('ul').css({
  150. 'padding': 10,
  151. 'top': - ($(that).parent('td').height() / 2 + $(that).height() + $(that).next('ul').height()/2),
  152. 'min-width': 'inherit',
  153. 'position': 'absolute'
  154. }).toggle();
  155. }else{
  156. $(that).next('ul').css({
  157. 'padding': 10,
  158. 'top':$(that).parent('td').height() / 2 + $(that).height(),
  159. 'min-width': 'inherit',
  160. 'position': 'absolute'
  161. }).toggle();
  162. }
  163. }
  164. </script>
  165. {/block}