special_material.php 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. {extend name="public/container"}
  2. {block name="content"}
  3. <div class="layui-fluid">
  4. <div class="layui-card">
  5. <div class="layui-card-header">关联专题</div>
  6. <div class="layui-card-body">
  7. <div class="layui-row layui-col-space15">
  8. <div class="layui-col-md12">
  9. <div class="layui-btn-group">
  10. <button type="button" class="layui-btn layui-btn-normal layui-btn-sm" data-type="add" onclick="action.open_add('关联专题')">
  11. <i class="layui-icon">&#xe608;</i>关联专题
  12. </button>
  13. <button type="button" class="layui-btn layui-btn-normal layui-btn-sm" data-type="refresh" onclick="window.location.reload()">
  14. <i class="layui-icon">&#xe669;</i>刷新
  15. </button>
  16. </div>
  17. <table class="layui-hide" id="List" lay-filter="List"></table>
  18. <input type="hidden" id="check_source_tmp" name="check_source_tmp"/>
  19. <script type="text/html" id="image">
  20. <img style="cursor: pointer;" height="50" lay-event='open_image' src="{{d.image}}">
  21. </script>
  22. <script type="text/html" id="pay_status">
  23. <input type='checkbox' name='pay_status' lay-skin='switch' value="{{d.id}}"
  24. lay-filter='pay_status' lay-text='收费|免费' {{ d.pay_status== 1 ? 'checked' : '' }}>
  25. </script>
  26. <script type="text/html" id="is_light">
  27. {{# if(d.is_light==1){ }}
  28. 轻专题
  29. {{# }else{ }}
  30. 普通专题
  31. {{# }; }}
  32. </script>
  33. <script type="text/html" id="act">
  34. <button type="button" class="layui-btn layui-btn-danger layui-btn-xs" lay-event='delect'>
  35. <i class="layui-icon">&#xe640;</i>删除
  36. </button>
  37. </script>
  38. </div>
  39. </div>
  40. </div>
  41. </div>
  42. </div>
  43. <script src="{__ADMIN_PATH}js/layuiList.js"></script>
  44. {/block}
  45. {block name="script"}
  46. <script>
  47. var $ = layui.jquery;
  48. var layer = layui.layer;
  49. var id = "{$id}", special_type = "{$special_type}", order = "{$order}";
  50. //实例化form
  51. layList.form.render();
  52. //加载列表
  53. layList.tableList({o:'List', done:function () {}},"{:Url('get_special_sure_list')}?id=" + id + "&order=" + order,function (){
  54. return [
  55. {field: 'id', title: '编号', width:'6%',align: 'center'},
  56. {field: 'types', title: '类型',align: 'center'},
  57. {field: 'is_light', title: '专题类别',templet:'#is_light',align:'center'},
  58. {field: 'title', title: '专题标题',align: 'center'},
  59. {field: 'image', title: '封面',templet:'#image',align: 'center'},
  60. {field: 'pay_status', title: '收费状态', align: 'center', templet: '#pay_status', width: '15%'},
  61. {field: 'sort', title: '排序',sort: true,event:'sort',edit:'sort',align: 'center',width:'10%'},
  62. {field: 'right', title: '操作',align:'center',toolbar:'#act',width:'10%'},
  63. ];
  64. });
  65. //自定义方法
  66. var action= {
  67. //打开新添加页面
  68. open_add: function (title) {
  69. var url="{:Url('special.special_type/special_task')}?special_id="+id+"&special_type={$special_type}";
  70. layer.open({
  71. type: 2 //Page层类型
  72. ,area: ['80%', '90%']
  73. ,title: '关联专题'
  74. ,shade: 0.6 //遮罩透明度
  75. ,maxmin: true //允许全屏最小化
  76. ,anim: 1 //0-6的动画形式,-1不开启
  77. ,content: url,
  78. btn: '确定',
  79. btnAlign: 'c', //按钮居中
  80. closeBtn:1,
  81. yes: function(){
  82. layer.closeAll();
  83. var source_tmp = $("#check_source_tmp").val();
  84. var source_tmp_list = JSON.parse(source_tmp);
  85. var arr=[];
  86. for(var i=0;i<source_tmp_list.length;i++){
  87. arr.push(source_tmp_list[i].id);
  88. }
  89. var ids=arr.join(',');
  90. layList.baseGet(layList.Url({
  91. a: 'add_source_sure',
  92. q: {id: id, ids: ids, special_type: special_type}
  93. }), function (res) {
  94. layList.msg(res.msg, function () {
  95. location.reload();
  96. });
  97. });
  98. }
  99. });
  100. }
  101. };
  102. //快速编辑
  103. layList.edit(function (obj) {
  104. var special_id=obj.data.id,value=obj.value;
  105. switch (obj.field) {
  106. case 'sort':
  107. if (value < 0) return layList.msg('排序不能小于0');
  108. if (value > 99999) return layList.msg('排序不能大于99999');
  109. layList.baseGet(layList.Url({
  110. a: 'update_source_sure',
  111. q: {id: obj.data.id, value: value, field: 'sort'}
  112. }), function (res) {
  113. layList.msg(res.msg);
  114. });
  115. break;
  116. }
  117. });
  118. layList.switch('pay_status', function (odj, value) {
  119. var is_show_value = 0
  120. if (odj.elem.checked == true) {
  121. var is_show_value = 1
  122. }
  123. layList.baseGet(layList.Url({
  124. a: 'update_source_sure',
  125. q: {id: value, value: is_show_value, field: 'pay_status'}
  126. }), function (res) {
  127. layList.msg(res.msg);
  128. });
  129. });
  130. //监听并执行排序
  131. layList.sort(['id','sort'],true);
  132. //点击事件绑定
  133. layList.tool(function (event,data,obj) {
  134. switch (event) {
  135. case 'delect':
  136. var url = layList.U({a: 'del_source_sure', q: {id: data.id,special_id:data.special_id}});
  137. $eb.$swal('delete', function () {
  138. $eb.axios.get(url).then(function (res) {
  139. if (res.status == 200 && res.data.code == 200) {
  140. $eb.$swal('success', res.data.msg);
  141. location.reload();
  142. } else
  143. return Promise.reject(res.data.msg || '删除失败')
  144. }).catch(function (err) {
  145. $eb.$swal('error', err);
  146. });
  147. });
  148. break;
  149. case 'open_image':
  150. parent.$eb.openImage(data.image);
  151. break;
  152. }
  153. })
  154. </script>
  155. {/block}