advert.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. ;
  2. layui.define(['form','table','upload'], function (e) {
  3. var s = layui.$,
  4. l = (layui.layer, layui.laytpl, layui.setter, layui.view, layui.admin),
  5. table = layui.table,
  6. upload = layui.upload,
  7. form = layui.form;
  8. table.render({
  9. elem:'#position-table'
  10. ,url:'loadpos.html'
  11. ,method:'post'
  12. ,toolbar:'#topToolbar'
  13. ,cols: [[
  14. {field:'id', title: 'ID'}
  15. ,{field:'name', title: '标识'}
  16. ,{field:'type_text', title: '类型'}
  17. ,{field:'cname', title: '名称'}
  18. ,{title:'操作', fixed: 'right', width:250, align:'center', toolbar: '#rowToolbar'}
  19. ]]
  20. ,id: 'position-table'
  21. ,page: true
  22. });
  23. table.on('toolbar(position)',function(obj){
  24. switch(obj.event){
  25. case "add":
  26. layer.open({
  27. type: 2,
  28. title: '添加广告位',
  29. shadeClose: true,
  30. shade: true,
  31. area: ['50%', '80%'],
  32. content: 'addpos.html'
  33. });
  34. break;
  35. }
  36. })
  37. table.on('tool(position)', function(obj){
  38. var data = obj.data;
  39. var layEvent = obj.event;
  40. var tr = obj.tr;
  41. switch(layEvent){
  42. case 'edit':
  43. layer.open({
  44. type: 2,
  45. title: "编辑广告位",
  46. shadeClose: true,
  47. shade: true,
  48. area: ['50%', '80%'],
  49. content: 'editpos.html?id='+data['id']
  50. });
  51. break;
  52. case 'delete':
  53. layer.confirm('您确定要删除该行数据吗?', {
  54. btn: ['确定','取消'] //按钮
  55. }, function(index){
  56. s.post('delpos.html',{id:data.id},function(r){
  57. if(r.code){
  58. layer.msg(r.msg);
  59. }else{
  60. obj.del();
  61. layer.close(index);
  62. }
  63. });
  64. });
  65. break;
  66. }
  67. });
  68. form.on('submit(LAY-position-add)',function(data){
  69. s.post('addpos.html',data.field,function(r){
  70. if (!r.code) {
  71. var index = parent.layer.getFrameIndex(window.name);
  72. parent.layer.close(index);
  73. parent.layui.table.reload('position-table');
  74. }else{
  75. layer.msg(r.msg);
  76. }
  77. })
  78. return false;
  79. })
  80. form.on('submit(LAY-position-edit)',function(data){
  81. s.post('editpos.html',data.field,function(r){
  82. if (!r.code) {
  83. var index = parent.layer.getFrameIndex(window.name);
  84. parent.layer.close(index);
  85. parent.layui.table.reload('position-table');
  86. }else{
  87. layer.msg(r.msg);
  88. }
  89. })
  90. return false;
  91. })
  92. table.render({
  93. elem:'#advert-table'
  94. ,url:'load.html'
  95. ,where:{pos_id:s('select[name=pos_id]').val()}
  96. ,toolbar:'#topToolbar'
  97. ,cols: [[
  98. {field:'sort', title: '排序',edit:'text'}
  99. ,{field:'cname', title: '标题'}
  100. ,{field:'state', title: '状态',templet:"#switchState"}
  101. ,{title:'操作', fixed: 'right', width:250, align:'center', toolbar: '#rowToolbar'}
  102. ]]
  103. ,id: 'advert-table'
  104. ,page: true
  105. });
  106. table.on('toolbar(advert)',function(obj){
  107. var pos_id = s('select[name=pos_id]').val();
  108. switch(obj.event){
  109. case "add":
  110. layer.open({
  111. type: 2,
  112. title: '添加广告',
  113. shadeClose: true,
  114. shade: true,
  115. area: ['50%', '80%'],
  116. content: 'add.html?pos_id='+pos_id
  117. });
  118. break;
  119. }
  120. })
  121. table.on('tool(advert)', function(obj){
  122. var data = obj.data;
  123. var layEvent = obj.event;
  124. var tr = obj.tr;
  125. switch(layEvent){
  126. case 'edit':
  127. layer.open({
  128. type: 2,
  129. title: "编辑广告",
  130. shadeClose: true,
  131. shade: true,
  132. area: ['50%', '80%'],
  133. content: 'edit.html?id='+data['id']
  134. });
  135. break;
  136. case 'delete':
  137. layer.confirm('您确定要删除该行数据吗?', {
  138. btn: ['确定','取消'] //按钮
  139. }, function(index){
  140. s.post('delete.html',{id:data.id},function(r){
  141. if(r.code){
  142. layer.msg(r.msg);
  143. }else{
  144. obj.del();
  145. layer.close(index);
  146. }
  147. });
  148. });
  149. break;
  150. }
  151. });
  152. upload.render({
  153. elem: '.file'
  154. ,url: '/admin/file/upload'
  155. ,accept:'file'
  156. ,done: function(res){
  157. if (!res.code) {
  158. var name = s(this.item).data('name');
  159. s('input[name="'+name+'"]').val(res.data.src);
  160. s(this.item).attr('src',res.data.src);
  161. }
  162. }
  163. })
  164. form.on('select(position)', function(data){
  165. table.reload('advert-table',{
  166. where:{pos_id:data.value}
  167. ,page:{
  168. curr:1
  169. }
  170. });
  171. });
  172. form.on('submit(LAY-advert-add)',function(data){
  173. s.post('add.html',data.field,function(r){
  174. if (!r.code) {
  175. var index = parent.layer.getFrameIndex(window.name);
  176. parent.layer.close(index);
  177. parent.layui.table.reload('advert-table');
  178. }else{
  179. layer.msg(r.msg);
  180. }
  181. })
  182. return false;
  183. })
  184. form.on('submit(LAY-advert-edit)',function(data){
  185. s.post('edit.html',data.field,function(r){
  186. if (!r.code) {
  187. var index = parent.layer.getFrameIndex(window.name);
  188. parent.layer.close(index);
  189. parent.layui.table.reload('advert-table');
  190. }else{
  191. layer.msg(r.msg);
  192. }
  193. })
  194. return false;
  195. })
  196. form.on('switch(state)', function(obj){
  197. var id = s(this).data('id');
  198. s.post('state.html',{id:id,state:obj.elem.checked},function(r){
  199. r.code && layer.msg(r.msg);
  200. })
  201. });
  202. table.on('edit(advert)', function(obj){
  203. var value = obj.value
  204. ,data = obj.data
  205. ,field = obj.field;
  206. if (field == 'sort') {
  207. s.post('sort.html',{id:data.id,sort:value},function(r){
  208. if (!r.code) {
  209. table.reload('advert-table',{
  210. where:{pos_id:s('select[name=pos_id]').val()}
  211. ,page:{
  212. curr:1
  213. }
  214. });
  215. }else{
  216. layer.msg(r.msg);
  217. }
  218. });
  219. }
  220. });
  221. var advert = function(){}
  222. e('advert',new advert());
  223. })