index.blade.php 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. @extends('admin.public.base')
  2. @section('body_class')
  3. style="margin: 0 auto;width: 96%;padding: 30px 0px;"
  4. @endsection
  5. @section('content')
  6. @if( check_auth('admin/orders/import_execl') )
  7. <div class="page-header">
  8. @if( check_auth('admin/custom/import_execl') )
  9. <a href="javascript:;" class="btn btn-primary upload"> <span class="fa fa-upload"></span> 导入客户信息</a>
  10. <a href="/uploads/custom_tpl.xlsx" class="btn btn-primary" download="客户导入模版"> <span class="fa fa-download"></span> 客户模版</a>
  11. @endif
  12. @if( check_auth('admin/custom_score/import_execl') )
  13. <a href="javascript:;" class="btn btn-primary upload_score"> <span class="fa fa-upload"></span> 积分批量导入</a>
  14. <a href="/uploads/score_tpl.xlsx" class="btn btn-primary" download="积分批量导入模版"> <span class="fa fa-download"></span> 积分模版</a>
  15. @endif
  16. </div>
  17. @endif
  18. <form action="" method="get" class="form-horizontal form-line">
  19. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-2" style="margin-right: 2px;">
  20. <input type="text" class="form-control" name="custom_code" value="{{request('custom_code','')}}" placeholder="请输入客户编码查询" />
  21. </div>
  22. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-2" style="margin-right: 2px;">
  23. <input type="text" class="form-control" name="phone" value="{{request('phone','')}}" placeholder="请输入联系方式查询" />
  24. </div>
  25. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-2" style="margin-right: 2px;">
  26. <input type="text" class="form-control" name="weiban_extid" value="{{request('weiban_extid','')}}" placeholder="请输入微伴ID查询" />
  27. </div>
  28. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-2" style="margin-right: 2px;">
  29. <select name="status" class="form-control">
  30. <option value="" >客户状态</option>
  31. <option value="0" @if (request('status') === '0' ) selected="selected" @endif >正常</option>
  32. <option value="1" @if (request('status') === '1' ) selected="selected" @endif >禁用</option>
  33. </select>
  34. </div>
  35. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-2" style="margin-right: 2px;">
  36. <select name="city_id" class="form-control selectpicker" data-max-options="20" data-live-search="true" data-live-search-placeholder="搜索城市" data-none-results-text="未搜索到 {0}" title="选择城市">
  37. @foreach ($cityList as $group)
  38. <optgroup label="{{$group['name']}}">
  39. @foreach ($group['city'] as $city)
  40. <option value="{{$city['id']}}" @if( $city['id'] == request('city_id',0) ) selected @endif >{{$city['name']}}</option>
  41. @endforeach
  42. </optgroup>
  43. @endforeach
  44. </select>
  45. </div>
  46. <div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-2" style="margin-right: 2px;">
  47. <input type="date" class="form-control" name="start_time" value="{{request('start_time','')}}" placeholder="请输入创建时间查询" />
  48. </div>
  49. <input type="submit" class="btn btn-sm btn-primary" value="查询"/>
  50. <a href="{{url('admin/custom/index')}}" class="btn btn-sm btn-default" >重置</a>
  51. </form>
  52. <div class="row">
  53. <div class="col-xs-12">
  54. <div class="table-responsive">
  55. <table class="table table-striped table-bordered table-hover">
  56. <thead>
  57. <tr>
  58. <th>客户编码</th>
  59. <th>客户昵称</th>
  60. <th>联系方式</th>
  61. <th>客户积分</th>
  62. <th>微伴ID</th>
  63. <th>客户城市</th>
  64. <th>客户状态</th>
  65. <th>创建时间</th>
  66. <th>更新时间</th>
  67. <th>操作</th>
  68. </tr>
  69. </thead>
  70. <tbody>
  71. @foreach ($list as $a)
  72. <tr>
  73. <th> {{$a['custom_code']}} </th>
  74. <td> {{$a['username']}} </td>
  75. <td> {{$a['phone']}} </td>
  76. <td> {{$a['custom_score']['score']}} </td>
  77. <td> <a href="{{url('admin/weiban_external/index?'.http_build_query(['id'=>$a['weiban_extid']]))}}">{{$a['weiban_extid']}}</a></td>
  78. <td> {{$a['city_name']}} </td>
  79. <td> {{$a['status']?'禁用':'正常'}} </td>
  80. <td> {{date('Y/m/d H:i:s',$a['insert_time'])}}</td>
  81. <td> {{date('Y/m/d H:i:s',$a['update_time'])}}</td>
  82. <td>
  83. @if(check_auth('admin/custom/edit'))
  84. <a href="{{url('admin/custom/edit?'.http_build_query(['uid'=>$a['uid']]))}}" class="btn btn-sm btn-warning" >编辑</a>
  85. @endif
  86. @if(check_auth('admin/custom_score/incr'))
  87. <a href="{{url('admin/custom_score/incr?'.http_build_query(['custom_uid'=>$a['uid']]))}}" class="btn btn-sm btn-success" >增加积分</a>
  88. @endif
  89. @if(check_auth('admin/custom_score/decr'))
  90. <a href="{{url('admin/custom_score/decr?'.http_build_query(['custom_uid'=>$a['uid']]))}}" class="btn btn-sm btn-danger" >扣减积分</a>
  91. @endif
  92. @if(check_auth('admin/custom/set_status'))
  93. @if( $a['status'] )
  94. <a data-url="{{url('admin/custom/set_status?'.http_build_query(['uid'=>$a['uid'],'status'=>0]))}}" class="set_status btn btn-sm btn-success" >取消拉黑</a>
  95. @else
  96. <a data-url="{{url('admin/custom/set_status?'.http_build_query(['uid'=>$a['uid'],'status'=>1]))}}" class="set_status btn btn-sm btn-danger" >拉黑</a>
  97. @endif
  98. @endif
  99. </td>
  100. </tr>
  101. @endforeach
  102. <tr>
  103. <td colspan="20" class="page">{{$list->render()}}</td>
  104. </tr>
  105. <tr>
  106. <td colspan="20">总计 {{$list->total()}} 个客户</td>
  107. </tr>
  108. </tbody>
  109. </table>
  110. </div>
  111. </div>
  112. </div>
  113. @endsection
  114. @section('javascript')
  115. <script src="/static/fileupload/jquery.ui.widget.js"></script>
  116. <script src="/static/fileupload/jquery.fileupload.js"></script>
  117. <script type="text/javascript">
  118. $(function(){
  119. $('.upload').on('click', function() {
  120. $('#form-upload').remove();
  121. $('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input osctype="btn_upload_file" type="file" name="custom_file" multiple="multiple" /></form>');
  122. $('#form-upload input[name=\'custom_file\']').trigger('click');
  123. $('[osctype="btn_upload_file"]').fileupload({
  124. dataType: 'json',
  125. url: "{{url('admin/custom/import_execl')}}",
  126. singleFileUploads: false,
  127. beforeSend: function() {
  128. art.dialog({
  129. id: 'loading',
  130. lock: true,
  131. title: '文件上传中'
  132. });
  133. },
  134. done: function(e, data) {
  135. art.dialog.list['loading'].close();
  136. var result = data.result;
  137. if (result.code == 'error') {
  138. art.dialog({
  139. content: result.msg,
  140. lock: true,
  141. ok: function() {}
  142. });
  143. }
  144. if (result.code == 'success') {
  145. art.dialog({
  146. content: result.msg,
  147. lock: true,
  148. ok: function() {
  149. location.reload();
  150. }
  151. });
  152. }
  153. },
  154. fail: function(e,c) {
  155. art.dialog.list['loading'].close();
  156. art.dialog({
  157. content: '<p>'+c.jqXHR.status+'=>'+c.jqXHR.statusText+'</p>',
  158. lock: true,
  159. ok: function() {}
  160. });
  161. }
  162. });
  163. });
  164. })
  165. </script>
  166. <script type="text/javascript">
  167. $(function(){
  168. $('.upload_score').on('click', function() {
  169. $('#form-upload').remove();
  170. $('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input osctype="btn_upload_file" type="file" name="score_file" multiple="multiple" /></form>');
  171. $('#form-upload input[name=\'score_file\']').trigger('click');
  172. $('[osctype="btn_upload_file"]').fileupload({
  173. dataType: 'json',
  174. url: "{{url('admin/custom_score/import_execl')}}",
  175. singleFileUploads: false,
  176. beforeSend: function() {
  177. art.dialog({
  178. id: 'loading',
  179. lock: true,
  180. title: '文件上传中'
  181. });
  182. },
  183. done: function(e, data) {
  184. art.dialog.list['loading'].close();
  185. var result = data.result;
  186. if (result.code == 'error') {
  187. art.dialog({
  188. content: result.msg,
  189. lock: true,
  190. ok: function() {}
  191. });
  192. }
  193. if (result.code == 'success') {
  194. art.dialog({
  195. content: result.msg,
  196. lock: true,
  197. ok: function() {
  198. location.reload();
  199. }
  200. });
  201. }
  202. },
  203. fail: function(e,c) {
  204. art.dialog.list['loading'].close();
  205. art.dialog({
  206. content: '<p>'+c.jqXHR.status+'=>'+c.jqXHR.statusText+'</p>',
  207. lock: true,
  208. ok: function() {}
  209. });
  210. }
  211. });
  212. });
  213. })
  214. </script>
  215. @endsection