pushList.blade.php 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. @extends('admin.layouts')
  2. @section('css')
  3. <link href="/assets/global/vendor/bootstrap-table/bootstrap-table.min.css" type="text/css" rel="stylesheet">
  4. <link href="/assets/global/vendor/bootstrap-markdown/bootstrap-markdown.min.css" type="text/css" rel="stylesheet">
  5. <link href="/assets/global/fonts/font-awesome/font-awesome.min.css" type="text/css" rel="stylesheet">
  6. @endsection
  7. @section('content')
  8. <div class="page-content container-fluid">
  9. <div class="panel">
  10. <div class="panel-heading">
  11. <h3 class="panel-title">推送消息列表</h3>
  12. <div class="panel-actions">
  13. <button class="btn btn-primary" data-toggle="modal" data-target="#send_modal"><i class="icon wb-plus"></i>推送消息</button>
  14. </div>
  15. </div>
  16. <div class="panel-body">
  17. <div class="form-row">
  18. <div class="form-group col-lg-3 col-sm-6">
  19. <select class="form-control" name="status" id="status" onChange="Search()">
  20. <option value="" hidden>状态</option>
  21. <option value="0">待发送</option>
  22. <option value="-1">失败</option>
  23. <option value="1">成功</option>
  24. </select>
  25. </div>
  26. <div class="form-group col-lg-2 col-sm-6 btn-group">
  27. <button class="btn btn-primary" onclick="Search()">搜 索</button>
  28. <a href="/marketing/pushList" class="btn btn-danger">重 置</a>
  29. </div>
  30. </div>
  31. <div class="alert alert-info alert-dismissible" role="alert">
  32. <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
  33. 仅会推送给关注了您的消息通道的用户 <a href="/admin/system" class="alert-link" target="_blank">设置PushBear</a>.
  34. </div>
  35. <table class="text-md-center" data-toggle="table" data-mobile-responsive="true">
  36. <thead class="thead-default">
  37. <tr>
  38. <th> #</th>
  39. <th> 消息标题</th>
  40. <th> 消息内容</th>
  41. <th> 推送状态</th>
  42. <th> 推送时间</th>
  43. <th> 错误信息</th>
  44. </tr>
  45. </thead>
  46. <tbody>
  47. @foreach($list as $vo)
  48. <tr>
  49. <td> {{$vo->id}} </td>
  50. <td> {{$vo->title}} </td>
  51. <td> {{$vo->content}} </td>
  52. <td> {{$vo->status_label}} </td>
  53. <td> {{$vo->created_at}} </td>
  54. <td> {{$vo->error}} </td>
  55. </tr>
  56. @endforeach
  57. </tbody>
  58. </table>
  59. </div>
  60. <div class="panel-footer">
  61. <div class="row">
  62. <div class="col-sm-4">
  63. 共 <code>{{$list->total()}}</code> 条推送消息
  64. </div>
  65. <div class="col-sm-8">
  66. <nav class="Page navigation float-right">
  67. {{$list->links()}}
  68. </nav>
  69. </div>
  70. </div>
  71. </div>
  72. </div>
  73. </div>
  74. <!-- 推送消息 -->
  75. <div id="send_modal" class="modal fade" tabindex="-1" data-focus-on="input:first" data-backdrop="static" data-keyboard="false">
  76. <div class="modal-dialog modal-lg modal-center">
  77. <div class="modal-content">
  78. <div class="modal-header">
  79. <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  80. <span aria-hidden="true">×</span>
  81. </button>
  82. <h4 class="modal-title">推送消息</h4>
  83. </div>
  84. <div class="modal-body">
  85. <div class="alert alert-danger" style="display: none;" id="msg"></div>
  86. <form action="#" method="post" class="form-horizontal">
  87. <div class="form-body">
  88. <div class="form-group">
  89. <div class="row">
  90. <label for="title" class="col-md-2 control-label"> 标题 </label>
  91. <div class="col-md-6">
  92. <input type="text" class="form-control" name="title" id="title"/>
  93. </div>
  94. </div>
  95. </div>
  96. <div class="form-group">
  97. <div class="row">
  98. <label for="content" class="col-md-2 control-label"> 内容 </label>
  99. <div class="col-md-9">
  100. <textarea class="form-control" rows="10" name="content" id="content" data-provide="markdown" data-iconlibrary="fa"></textarea>
  101. </div>
  102. </div>
  103. </div>
  104. </div>
  105. </form>
  106. </div>
  107. <div class="modal-footer">
  108. <button class="btn btn-danger" data-dismiss="modal">取消</button>
  109. <button class="btn btn-primary" onclick="return send();">推送</button>
  110. </div>
  111. </div>
  112. </div>
  113. </div>
  114. @endsection
  115. @section('script')
  116. <script src="/assets/global/vendor/bootstrap-table/bootstrap-table.min.js" type="text/javascript"></script>
  117. <script src="/assets/global/vendor/bootstrap-table/extensions/mobile/bootstrap-table-mobile.min.js" type="text/javascript"></script>
  118. <script src="/assets/global/vendor/bootstrap-markdown/bootstrap-markdown.js" type="text/javascript"></script>
  119. <script src="/assets/global/vendor/marked/marked.js" type="text/javascript"></script>
  120. <script src="/assets/global/vendor/to-markdown/to-markdown.js" type="text/javascript"></script>
  121. <script type="text/javascript">
  122. $(document).ready(function () {
  123. $('#status').val({{Request::get('status')}});
  124. });
  125. // 发送通道消息
  126. function send() {
  127. const title = $("#title").val();
  128. if (title.trim() === '') {
  129. $("#msg").show().html("标题不能为空");
  130. title.focus();
  131. return false;
  132. }
  133. $.ajax({
  134. url: '/marketing/addPushMarketing',
  135. type: "POST",
  136. data: {_token: '{{csrf_token()}}', title: title, content: $("#content").val()},
  137. beforeSend: function () {
  138. $("#msg").show().html("正在添加...");
  139. },
  140. success: function (ret) {
  141. if (ret.status === 'fail') {
  142. $("#msg").show().html(ret.message);
  143. return false;
  144. }
  145. $("#send_modal").modal("hide");
  146. },
  147. error: function () {
  148. $("#msg").show().html("请求错误,请重试");
  149. },
  150. complete: function () {
  151. }
  152. });
  153. }
  154. // 关闭modal触发
  155. $('#send_modal').on('hide.bs.modal', function () {
  156. window.location.reload();
  157. });
  158. function Search() {
  159. window.location.href = "/marketing/pushList?status=" + $("#status").val();
  160. }
  161. </script>
  162. @endsection