sharelist.html 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. <div class="layui-fluid">
  2. <div class="layui-row layui-col-space15">
  3. <div class="layui-col-md12">
  4. <div class="layui-card layui-tab layui-tab-brief" lay-filter="linktab">
  5. <ul class="layui-tab-title">
  6. <li class="layui-this" lay-id="share">推广海报</li>
  7. <li lay-id="cate">海报分类</li>
  8. </ul>
  9. <div class="layui-tab-content" style="padding: 0px;">
  10. <div class="layui-tab-item layui-show">
  11. <div class="layui-form layui-form-pane layui-card-header layuiadmin-card-header-auto" lay-filter="sharelist-search">
  12. <div class="layui-form-item">
  13. <div class="layui-inline">
  14. <label class="layui-form-label">海报分类</label>
  15. <div class="layui-input-block">
  16. <select name="cateid" lay-search>
  17. <option value="">全部海报分类(可搜索)</option>
  18. {volist name="catelist" id="vo"}
  19. <option value="{$vo['id']}">{$vo['title']}</option>
  20. {/volist}
  21. </select>
  22. </div>
  23. </div>
  24. <div class="layui-inline">
  25. <label class="layui-form-label">状态</label>
  26. <div class="layui-input-block">
  27. <select name="stype">
  28. <option value="">全部状态</option>
  29. <option value="1">显示</option>
  30. <option value="2">隐藏</option>
  31. </select>
  32. </div>
  33. </div>
  34. <div class="layui-inline">
  35. <button class="layui-btn" lay-submit lay-filter="sharelist-btn">
  36. <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
  37. </button>
  38. </div>
  39. </div>
  40. </div>
  41. <div class="layui-card-body">
  42. <table id="sharelist-table" lay-filter="sharelist-table"></table>
  43. <script type="text/html" id="sharetabletoolbar">
  44. <div class="layui-btn-container">
  45. <button class="layui-btn layui-btn-sm" lay-event="add">添加推广海报</button>
  46. </div>
  47. </script>
  48. <script type="text/html" id="tilpicTpl">
  49. {{# if(d.tilpic != ''){ }}
  50. <div id="pic{{d.id}}" lay-event="pic">
  51. <img style="width: 100%; height: 100%;" src="{{d.tilpic}}">
  52. </div>
  53. {{# } }}
  54. </script>
  55. <script type="text/html" id="setTpl">
  56. <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
  57. <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>
  58. </script>
  59. </div>
  60. </div>
  61. <div class="layui-tab-item">
  62. <div class="layui-card-body">
  63. <table id="sharecatelist-table" lay-filter="sharecatelist-table"></table>
  64. <script type="text/html" id="catetabletoolbar">
  65. <div class="layui-btn-container">
  66. <button class="layui-btn layui-btn-sm" lay-event="add">添加海报分类</button>
  67. </div>
  68. </script>
  69. <script type="text/html" id="catesetTpl">
  70. <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
  71. <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>
  72. </script>
  73. </div>
  74. </div>
  75. </div>
  76. </div>
  77. </div>
  78. </div>
  79. </div>
  80. <script>
  81. layui.config({
  82. base: '/static/echoui/' //静态资源所在路径
  83. }).extend({
  84. index: 'lib/index' //主入口模块
  85. }).use(['index', 'element', 'set', 'table'], function() {
  86. var $ = layui.$,
  87. setter = layui.setter,
  88. admin = layui.admin,
  89. element = layui.element,
  90. form = layui.form,
  91. table = layui.table;
  92. form.render();
  93. // 数据列表
  94. table.render({
  95. elem: '#sharecatelist-table',
  96. url: setter.baseAdminUrl + 'worker/listsharecate',
  97. cols: [
  98. [
  99. { field: 'id', width: 80, title: '表ID', sort: true },
  100. { field: 'priority', width: 80, title: '排序', sort: true, edit: 'text' },
  101. { field: 'title', title: '分类名称', edit: 'text' },
  102. { field: 'catetitle', title: '海报数', templet: '<div>{{d.worker_share_count}}</div>' },
  103. { field: 'status_text', title: '状态', width: 80, align: 'center' },
  104. { title: '操作', width: 150, align: 'center', fixed: 'right', toolbar: '#catesetTpl' }
  105. ]
  106. ],
  107. page: true,
  108. limit: 50,
  109. toolbar: "#catetabletoolbar",
  110. defaultToolbar: [],
  111. cellMinWidth: 150,
  112. text: '对不起,加载出现异常!'
  113. });
  114. table.render({
  115. elem: '#sharelist-table',
  116. url: setter.baseAdminUrl + 'worker/listshare',
  117. where: { cateid: 0 },
  118. cols: [
  119. [
  120. { field: 'id', width: 80, title: '表ID', sort: true },
  121. { field: 'priority', width: 80, title: '排序', sort: true, edit: 'text' },
  122. { field: 'tilpic', width: 60, title: '底图', templet: '#tilpicTpl' },
  123. { field: 'title', title: '海报名称', edit: 'text' },
  124. { field: 'catetitle', title: '分类名称', templet: '<div>{{d.workerShareCate.title}}</div>' },
  125. { field: 'status_text', title: '状态', width: 80, align: 'center' },
  126. { title: '操作', width: 160, align: 'center', fixed: 'right', toolbar: '#setTpl' }
  127. ]
  128. ],
  129. page: true,
  130. limit: 50,
  131. toolbar: "#sharetabletoolbar",
  132. defaultToolbar: [],
  133. cellMinWidth: 150,
  134. text: '对不起,加载出现异常!'
  135. });
  136. //监听单元格编辑
  137. table.on('edit(sharecatelist-table)', function(obj) {
  138. var id = obj.data.id,
  139. field = obj.field,
  140. value = obj.value;
  141. admin.req({
  142. url: setter.baseAdminUrl + 'worker/fieldsharecate',
  143. data: { id: id, field: field, value: value },
  144. done: function(res) {
  145. layer.msg('修改成功');
  146. layui.table.reload('sharecatelist-table');
  147. }
  148. });
  149. });
  150. table.on('edit(sharelist-table)', function(obj) {
  151. var id = obj.data.id,
  152. field = obj.field,
  153. value = obj.value;
  154. admin.req({
  155. url: setter.baseAdminUrl + 'worker/fieldshare',
  156. data: { id: id, field: field, value: value },
  157. done: function(res) {
  158. layer.msg('修改成功');
  159. layui.table.reload('sharelist-table');
  160. }
  161. });
  162. });
  163. //监听工具条
  164. table.on('tool(sharecatelist-table)', function(obj) {
  165. var data = obj.data;
  166. if (obj.event === 'del') {
  167. layer.confirm('删除此分类时,会同时删除其所有海报。确定删除此分类吗?', function(index) {
  168. admin.req({
  169. url: setter.baseAdminUrl + 'worker/delsharecate',
  170. data: {
  171. id: data.id
  172. },
  173. done: function(res) {
  174. obj.del();
  175. layer.msg('已删除');
  176. }
  177. });
  178. layer.close(index);
  179. });
  180. } else if (obj.event === 'edit') {
  181. var index = layer.open({
  182. type: 2,
  183. title: '编辑海报分类',
  184. content: 'sharecateform.html?id=' + data.id,
  185. maxmin: true,
  186. area: ['550px', '550px']
  187. });
  188. layer.full(index);
  189. }
  190. });
  191. table.on('tool(sharelist-table)', function(obj) {
  192. var data = obj.data;
  193. if (obj.event === 'del') {
  194. layer.confirm('删除后不可恢复,确定删除此推广海报吗?', function(index) {
  195. admin.req({
  196. url: setter.baseAdminUrl + 'worker/delshare',
  197. data: {
  198. id: data.id
  199. },
  200. done: function(res) {
  201. obj.del();
  202. layer.msg('已删除');
  203. }
  204. });
  205. layer.close(index);
  206. });
  207. } else if (obj.event === 'edit') {
  208. var index = layer.open({
  209. type: 2,
  210. title: '编辑推广海报',
  211. content: 'shareform.html?id=' + data.id,
  212. maxmin: true,
  213. area: ['550px', '550px']
  214. });
  215. layer.full(index);
  216. } else if (obj.event === 'pic') {
  217. layer.photos({
  218. photos: '#pic' + data.id,
  219. anim: 5,
  220. });
  221. }
  222. });
  223. //头工具栏事件
  224. table.on('toolbar(sharecatelist-table)', function(obj) {
  225. var checkStatus = table.checkStatus(obj.config.id);
  226. switch (obj.event) {
  227. case 'add':
  228. var index = layer.open({
  229. type: 2,
  230. title: '添加海报分类',
  231. content: 'sharecateform.html?id=0',
  232. maxmin: true,
  233. area: ['750px', '480px']
  234. });
  235. layer.full(index);
  236. break;
  237. };
  238. });
  239. table.on('toolbar(sharelist-table)', function(obj) {
  240. var checkStatus = table.checkStatus(obj.config.id);
  241. switch (obj.event) {
  242. case 'add':
  243. var index = layer.open({
  244. type: 2,
  245. title: '添加推广海报',
  246. content: 'shareform.html?id=0',
  247. maxmin: true,
  248. area: ['750px', '480px']
  249. });
  250. layer.full(index);
  251. break;
  252. };
  253. });
  254. form.on('submit(sharelist-btn)', function(data) {
  255. table.reload('sharelist-table', {
  256. where: data.field,
  257. page: {
  258. curr: 1
  259. }
  260. });
  261. });
  262. //Hash地址的定位
  263. var layid = location.hash.replace(/^#linktab=/, '');
  264. element.tabChange('linktab', layid);
  265. element.on('tab(linktab)', function(elem) {
  266. location.hash = 'linktab=' + $(this).attr('lay-id');
  267. });
  268. });
  269. </script>