view_staff.php 10.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. {extend name="public/container"}
  2. {block name="content"}
  3. <div class="layui-fluid">
  4. <div class="layui-row layui-col-space15" id="app" v-cloak>
  5. <div class="layui-col-md12" >
  6. <div class="layui-card">
  7. <div class="layui-card-header">搜索条件</div>
  8. <div class="layui-card-body">
  9. <div class="layui-carousel layadmin-carousel layadmin-shortcut" lay-anim="" lay-indicator="inside" lay-arrow="none" style="background:none">
  10. <div class="layui-card-body">
  11. <div class="layui-row layui-col-space10 layui-form-item">
  12. <div class="layui-col-lg12">
  13. <label class="layui-form-label">核销状态:</label>
  14. <div class="layui-input-block">
  15. <button class="layui-btn layui-btn-sm" :class="{'layui-btn-primary':where.status!==item.value}" @click="where.status = item.value" type="button" v-for="item in orderType">{{item.name}}
  16. </button>
  17. </div>
  18. </div>
  19. <div class="layui-col-lg12">
  20. <label class="layui-form-label">搜索内容:</label>
  21. <div class="layui-input-block">
  22. <input type="text" name="real_name" style="width: 50%" v-model="where.real_name" placeholder="请输入搜索订单号或核销码" class="layui-input">
  23. </div>
  24. </div>
  25. <input type="hidden" name="id" style="width: 50%" value="{$aid}" class="layui-input">
  26. <div class="layui-col-lg12">
  27. <div class="layui-input-block">
  28. <button @click="search" type="button" class="layui-btn layui-btn-sm layui-btn-normal">
  29. <i class="layui-icon layui-icon-search"></i>搜索</button>
  30. <button @click="excel" type="button" class="layui-btn layui-btn-warm layui-btn-sm export" type="button">
  31. <i class="fa fa-floppy-o" style="margin-right: 3px;"></i>导出</button>
  32. <button @click="refresh" type="reset" class="layui-btn layui-btn-primary layui-btn-sm">
  33. <i class="layui-icon layui-icon-refresh" ></i>刷新</button>
  34. </div>
  35. </div>
  36. </div>
  37. </div>
  38. </div>
  39. </div>
  40. </div>
  41. </div>
  42. <div :class="item.col!=undefined ? 'layui-col-sm'+item.col+' '+'layui-col-md'+item.col:'layui-col-sm6 layui-col-md3'" v-for="item in badge" v-if="item.count > 0">
  43. <div class="layui-card">
  44. <div class="layui-card-header">
  45. {{item.name}}
  46. <span class="layui-badge layuiadmin-badge" :class="item.background_color">{{item.field}}</span>
  47. </div>
  48. <div class="layui-card-body">
  49. <p class="layuiadmin-big-font">{{item.count}}</p>
  50. <p v-show="item.content!=undefined">
  51. {{item.content}}
  52. <span class="layuiadmin-span-color">{{item.sum}}<i :class="item.class"></i></span>
  53. </p>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. <div class="layui-row layui-col-space15" >
  59. <div class="layui-col-md12">
  60. <div class="layui-card">
  61. <div class="layui-card-body">
  62. <table class="layui-hide" id="userList" lay-filter="userList"></table>
  63. <!--订单状态-->
  64. <script type="text/html" id="status">
  65. {{d.status_name}}
  66. {{# if(d.paid==1 && d.refund_status==2){ }}
  67. <p>金额:{{d.refund_price}}</p>
  68. <p>时间:{{d.refund_reason_time}}</p>
  69. {{# }; }}
  70. </script>
  71. <script type="text/html" id="act">
  72. {{# if(d.status){ }}
  73. <button type="button" class="layui-btn layui-btn-xs layui-btn-primary layui-btn-sm">已核销</button>
  74. {{# }else{ }}
  75. <button type="button" class="layui-btn layui-btn-xs" lay-event='write_off_code' style="padding: 1px 14px;">核销 </button>
  76. {{# } }}
  77. {{# if(d.pay_price!=d.refund_price){ }}
  78. <button type="button" class="layui-btn layui-btn-normal layui-btn-xs" onclick="parent.$eb.createModalFrame('退款','{:Url('refund_y')}?id={{d.id}}',{w:400,h:300})" style="padding: 1px 14px;"><i class="fa fa-history"></i>订单退款</button>
  79. {{# } }}
  80. <button class="layui-btn layui-btn-danger layui-btn-xs" type="button" lay-event='delete'>
  81. <i class="layui-icon">&#xe640;</i>删除
  82. </button>
  83. </script>
  84. </div>
  85. </div>
  86. </div>
  87. </div>
  88. </div>
  89. <script src="{__ADMIN_PATH}js/layuiList.js"></script>
  90. {/block}
  91. {block name="script"}
  92. <script>
  93. layList.tableList('userList',"{:Url('get_sign_up_list',['id'=>$aid,'type'=>1])}",function () {
  94. return [
  95. {field: 'id', title: '编号', width: '6%',align:'center'},
  96. {field: 'order_id', title: '订单号',align:'left',width: '12%'},
  97. {field: 'userInfo', title: '报名信息',templet:'#nickname',align:'left',width: '12.4%'},
  98. {field: 'number', title: '报名人数',align:'center',width: '6%'},
  99. {field: 'addTime', title: '报名时间' ,templet:'#ticket_price',align:'center', width:'10%'},
  100. {field: 'pay_price', title: '实付金额',templet:'#stock',align:'center', width:'8%'},
  101. {field: 'pay_type', title: '支付方式',align:'center', width:'5%'},
  102. {field: 'status', title: '订单状态',templet:'#status',align: 'center', width:'8%'},
  103. {field: 'code', title: '核销码',align:'center', width:'12%'},
  104. {field: 'write_off', title: '核销状态',align:'center', width:'6%'},
  105. {field: 'right', title: '操作',align:'center',toolbar:'#act',width:'15%'},
  106. ];
  107. });
  108. $('.conrelTable').find('button').each(function () {
  109. var type=$(this).data('type');
  110. $(this).on('click',function () {
  111. action[type] && action[type]();
  112. })
  113. });
  114. layList.tool(function (event,data,obj) {
  115. switch (event) {
  116. case 'write_off_code':
  117. var url=layList.U({c:'ump.event_registration',a:'scanCodeSignIn',q:{id:data.id}});
  118. parent.$eb.$swal('delete',function(){
  119. parent.$eb.axios.get(url).then(function(res){
  120. if(res.data.code == 200) {
  121. window.location.reload();
  122. parent.$eb.$swal('success', res.data.msg);
  123. }else
  124. parent.$eb.$swal('error',res.data.msg||'操作失败!');
  125. });
  126. },{
  127. title:'确定对该订单核销吗?',
  128. text:'通过后无法撤销,请谨慎操作!',
  129. confirm:'核销'
  130. });
  131. break;
  132. case 'open_image':
  133. parent.$eb.openImage(data.pic);
  134. break;
  135. case 'delete':
  136. var url=layList.U({c:'ump.event_registration',a:'order_delete',q:{id:data.id}});
  137. parent.$eb.$swal('delete',function(){
  138. parent.$eb.axios.get(url).then(function(res){
  139. if(res.status == 200 && res.data.code == 200) {
  140. parent.$eb.$swal('success',res.data.msg);
  141. obj.del();
  142. }else
  143. return Promise.reject(res.data.msg || '删除失败')
  144. }).catch(function(err){
  145. parent.$eb.$swal('error',err);
  146. });
  147. });
  148. break;
  149. }
  150. });
  151. var id="{$aid}";
  152. require(['vue'],function(Vue) {
  153. new Vue({
  154. el: "#app",
  155. data: {
  156. orderType:[
  157. {name: '全部', value: ''},
  158. {name: '未核销', value: 1},
  159. {name: '已核销', value: 2},
  160. ],
  161. where:{
  162. id:id,
  163. status:'',
  164. type:1,
  165. real_name:'',
  166. excel:0,
  167. },
  168. showtime: false,
  169. badge: [],
  170. },
  171. methods: {
  172. search:function () {
  173. this.getBadge();
  174. this.where.excel=0;
  175. layList.reload(this.where,true);
  176. },
  177. refresh:function () {
  178. location.reload();
  179. },
  180. getBadge:function() {
  181. var that=this;
  182. layList.basePost(layList.Url({c:'ump.event_registration',a:'getBadge'}),this.where,function (rem) {
  183. that.badge=rem.data;
  184. });
  185. },
  186. excel:function () {
  187. this.where.excel=1;
  188. location.href=layList.U({c:'ump.event_registration',a:'get_sign_up_list',q:this.where});
  189. }
  190. },
  191. mounted:function () {
  192. var that=this;
  193. that.getBadge();
  194. }
  195. })
  196. });
  197. </script>
  198. {/block}