index.php 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. {extend name="public/container"}
  2. {block name="content"}
  3. <div class="layui-fluid">
  4. <div class="layui-row layui-col-space15" id="app">
  5. <div class="layui-col-md12">
  6. <div class="layui-card">
  7. <div class="layui-card-body">
  8. <div class="layui-row layui-col-space15">
  9. <div class="layui-col-md12">
  10. <form class="layui-form layui-form-pane" action="">
  11. <div class="layui-form-item">
  12. <div class="layui-inline">
  13. <label class="layui-form-label">活动名称</label>
  14. <div class="layui-input-inline">
  15. <input type="text" name="title" class="layui-input" placeholder="请输入活动名称">
  16. </div>
  17. </div>
  18. <div class="layui-inline">
  19. <div class="layui-input-inline">
  20. <button class="layui-btn layui-btn-sm layui-btn-normal" lay-submit="search" lay-filter="search">
  21. <i class="layui-icon">&#xe615;</i> 搜索</button>
  22. </div>
  23. </div>
  24. </div>
  25. </form>
  26. </div>
  27. <div class="layui-col-md12">
  28. <div class="layui-btn-group">
  29. <button type="button" class="layui-btn layui-btn-sm layui-btn-normal" onclick="action.open_add('{:Url('create',['id'=>''])}','添加活动')"><i class="layui-icon">&#xe608;</i> 添加活动</button>
  30. <button type="button" class="layui-btn layui-btn-sm layui-btn-normal" onclick="window.location.reload()"><i class="layui-icon">&#xe669;</i> 刷新</button>
  31. </div>
  32. <table class="layui-hide" id="List" lay-filter="List"></table>
  33. <script type="text/html" id="is_show">
  34. <input type='checkbox' name='id' lay-skin='switch' value="{{d.id}}" lay-filter='is_show' lay-text='显示|隐藏' {{ d.is_show == 1 ? 'checked' : '' }}>
  35. </script>
  36. <script type="text/html" id="image">
  37. <img style="cursor: pointer;" height="50" lay-event='open_image' src="{{d.image}}">
  38. </script>
  39. <script type="text/html" id="act">
  40. <button type="button" class="layui-btn layui-btn-xs layui-btn-normal" onclick="dropdown(this)"><i class="layui-icon">&#xe625;</i> 操作</button>
  41. <ul class="layui-nav-child layui-anim layui-anim-upbit">
  42. <li>
  43. <a href="javascript:void(0)" onclick="action.open_add('{:Url('viewStaff')}?id={{d.id}}','报名人员')" >
  44. <i class="fa fa-paste"></i> 报名人员
  45. </a>
  46. </li>
  47. <li>
  48. <a href="javascript:void(0)" onclick="action.open_add('{:Url('create')}?id={{d.id}}','编辑')" >
  49. <i class="layui-icon layui-icon-edit"></i>编辑
  50. </a>
  51. </li>
  52. <li>
  53. <a lay-event='delect' href="javascript:void(0)">
  54. <i class="fa fa-trash"></i> 删除
  55. </a>
  56. </li>
  57. </ul>
  58. </script>
  59. </div>
  60. </div>
  61. </div>
  62. </div>
  63. </div>
  64. </div>
  65. </div>
  66. <script src="{__ADMIN_PATH}js/layuiList.js"></script>
  67. {/block}
  68. {block name="script"}
  69. <script>
  70. //实例化form
  71. layList.form.render();
  72. //加载列表
  73. layList.tableList({o:'List',done:function () {}},"{:Url('event_registration_list',[])}",function (){
  74. return [
  75. {field: 'id', title: '编号', width:60,align: 'center'},
  76. {field: 'title', title: '活动名称',align: 'center'},
  77. {field: 'image', title: '图片', templet:'#image',align: 'center'},
  78. {field: 'address', title: '地址', align: 'center'},
  79. {field: 'number', title: '活动人数',align: 'center'},
  80. {field: 'is_show', title: '状态',templet:'#is_show',align: 'center'},
  81. {field: 'right', title: '操作',align:'center',toolbar:'#act'},
  82. ];
  83. });
  84. //下拉框
  85. $(document).click(function (e) {
  86. $('.layui-nav-child').hide();
  87. });
  88. function dropdown(that){
  89. var oEvent = arguments.callee.caller.arguments[0] || event;
  90. oEvent.stopPropagation();
  91. var offset = $(that).offset();
  92. var top=offset.top-$(window).scrollTop();
  93. var index = $(that).parents('tr').data('index');
  94. $('.layui-nav-child').each(function (key) {
  95. if (key != index) {
  96. $(this).hide();
  97. }
  98. });
  99. if($(document).height() < top+$(that).next('ul').height()){
  100. $(that).next('ul').css({
  101. 'padding': 10,
  102. 'top': - ($(that).parent('td').height() / 2 + $(that).height() + $(that).next('ul').height()/2),
  103. 'min-width': 'inherit',
  104. 'position': 'absolute'
  105. }).toggle();
  106. }else{
  107. $(that).next('ul').css({
  108. 'padding': 10,
  109. 'top':$(that).parent('td').height() / 2 + $(that).height(),
  110. 'min-width': 'inherit',
  111. 'position': 'absolute'
  112. }).toggle();
  113. }
  114. };
  115. //自定义方法
  116. var action= {
  117. set_value: function (field, id, value, model_type) {
  118. layList.baseGet(layList.Url({
  119. a: 'set_value',
  120. q: {field: field, id: id, value: value, model_type:model_type}
  121. }), function (res) {
  122. console.log(res);
  123. layList.msg(res.msg);
  124. }, function (err) {
  125. layList.msg(err.msg);
  126. });
  127. },
  128. //打开新添加页面
  129. open_add: function (url,title) {
  130. layer.open({
  131. type: 2 //Page层类型
  132. ,area: ['100%', '100%']
  133. ,title: title
  134. ,shade: 0.6 //遮罩透明度
  135. ,maxmin: true //允许全屏最小化
  136. ,anim: 1 //0-6的动画形式,-1不开启
  137. ,content: url
  138. ,end:function() {
  139. location.reload();
  140. }
  141. });
  142. }
  143. };
  144. //查询
  145. layList.search('search',function(where){
  146. layList.reload(where,true);
  147. });
  148. layList.switch('is_show',function (odj,value) {
  149. if(odj.elem.checked==true){
  150. layList.baseGet(layList.Url({a:'set_show',p:{is_show:1,id:value}}),function (res) {
  151. layList.msg(res.msg);
  152. });
  153. }else{
  154. layList.baseGet(layList.Url({a:'set_show',p:{is_show:0,id:value}}),function (res) {
  155. layList.msg(res.msg);
  156. });
  157. }
  158. });
  159. //快速编辑
  160. layList.edit(function (obj) {
  161. var id=obj.data.id,value=obj.value;
  162. switch (obj.field) {
  163. case 'title':
  164. action.set_value('title',id,value,'member_card_batch');
  165. break;
  166. case 'number':
  167. action.set_value('remark',id,value,'member_card_batch');
  168. break;
  169. }
  170. });
  171. //监听并执行排序
  172. layList.sort(['id','sort'],true);
  173. //点击事件绑定
  174. layList.tool(function (event,data,obj) {
  175. switch (event) {
  176. case 'delect':
  177. var url=layList.U({a:'delete',q:{id:data.id}});
  178. $eb.$swal('delete',function(){
  179. $eb.axios.get(url).then(function(res){
  180. if(res.status == 200 && res.data.code == 200) {
  181. $eb.$swal('success',res.data.msg);
  182. obj.del();
  183. }else
  184. return Promise.reject(res.data.msg || '删除失败')
  185. }).catch(function(err){
  186. $eb.$swal('error',err);
  187. });
  188. });
  189. break;
  190. case 'open_image':
  191. $eb.openImage(data.image);
  192. break;
  193. }
  194. })
  195. </script>
  196. {/block}