selector.php 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. <?php
  2. use yii\helpers\Html;
  3. use yii\helpers\Url;
  4. use yii\helpers\ArrayHelper;
  5. ?>
  6. <div class="modal-header">
  7. <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">关闭</span></button>
  8. <h4 class="modal-title">文件列表</h4>
  9. </div>
  10. <div class="modal-body">
  11. <div class="row">
  12. <div class="col-lg-2">
  13. <?= Html::dropDownList('year', '', ArrayHelper::merge(['' => '不限年份'] , $year), [
  14. 'class' => 'form-control',
  15. 'id' => 'rfYear',
  16. ])?>
  17. </div>
  18. <div class="col-lg-2">
  19. <?= Html::dropDownList('month', '', ArrayHelper::merge(['' => '不限月份'] , $month), [
  20. 'class' => 'form-control',
  21. 'id' => 'rfMonth',
  22. ])?>
  23. </div>
  24. <div class="col-lg-3">
  25. <div class="input-group m-b">
  26. <?= Html::input('text', 'keyword', '', [
  27. 'class' => 'form-control',
  28. 'placeholder' => '关键字查询',
  29. 'id' => 'rfKeyword'
  30. ]); ?>
  31. <?= Html::tag('span', '<button class="btn btn-white" onclick="rfAttachmentSearch()"><i class="fa fa-search"></i> 搜索</button>', ['class' => 'input-group-btn'])?>
  32. </div>
  33. </div>
  34. <div class="col-lg-5 text-right">
  35. <a href="<?= Url::to(['/wechat/attachment/index'])?>" class="openContab btn btn-primary">素材库</a>
  36. </div>
  37. </div>
  38. <ul class="mailbox-attachments clearfix" id="rfAttachmentList"></ul>
  39. <div class="row text-center m-t" id="loadingAttachment">
  40. <span onclick="rfGetAttachment()" class="btn btn-white">加载更多</span>
  41. </div>
  42. </div>
  43. <div class="modal-footer">
  44. <button type="button" class="btn btn-white" data-dismiss="modal">关闭</button>
  45. <button class="btn btn-primary" data-dismiss="modal" id="rfAttachmentDetermine">确定</button>
  46. </div>
  47. <!--模板列表-->
  48. <script type="text/html" id="rfAttachmentlistModel">
  49. {{each data as value i}}
  50. <li>
  51. <div class="border-color-gray" data-key="{{value.key}}" data-title="{{value.title}}" data-url="{{value.imgUrl}}" data-type="{{value.type}}">
  52. {{if value.type == "image"}}
  53. <span class="mailbox-attachment-icon has-img">
  54. <img src="{{value.imgUrl}}" style="height: 130px">
  55. </span>
  56. {{else}}
  57. <span class="mailbox-attachment-icon">
  58. <i class="fa fa-file"></i>
  59. </span>
  60. {{/if}}
  61. <div class="mailbox-attachment-info">
  62. <div class="mailbox-attachment-name">
  63. <span><i class="fa fa-file"></i> {{value.title}}</span>
  64. </div>
  65. </div>
  66. </div>
  67. </li>
  68. {{/each}}
  69. </script>
  70. <script>
  71. var page = 2;
  72. var year = month = keyword = '';
  73. var boxId = "<?= $boxId;?>";
  74. // 默认数据
  75. var defaultPageData = [];
  76. defaultPageData['data'] = <?= $models; ?>;
  77. var html = template('rfAttachmentlistModel', defaultPageData);
  78. // 渲染添加数据
  79. $('#rfAttachmentList').append(html);
  80. // 选择
  81. $('#rfAttachmentDetermine').click(function () {
  82. let allData = [];
  83. $('#rfAttachmentList .active').each(function(i, data){
  84. var tmpData = [];
  85. tmpData['key'] = $(data).data('key');
  86. tmpData['url'] = $(data).data('url');
  87. tmpData['title'] = $(data).data('title');
  88. tmpData['type'] = $(data).data('type');
  89. allData.push(tmpData);
  90. console.log(allData);
  91. });
  92. $(document).trigger('select-file-' + boxId, [boxId, allData]);
  93. });
  94. /**
  95. * 搜索
  96. */
  97. function rfAttachmentSearch() {
  98. year = $('#rfYear').val();
  99. month = $('#rfMonth').val();
  100. keyword = $('#rfKeyword').val();
  101. page = 1;
  102. $('#rfAttachmentList').html('');
  103. rfGetAttachment();
  104. }
  105. function rfGetAttachment() {
  106. $.ajax({
  107. type:"get",
  108. url:"<?= Url::to(['/wechat/selector/list', 'media_type' => $media_type, 'json' => true])?>",
  109. dataType: "json",
  110. data: {
  111. page:page,
  112. year: year,
  113. month: month,
  114. keyword: keyword,
  115. },
  116. success: function(data){
  117. if (data.code == 200) {
  118. if (data.data.length > 0){
  119. page++;
  120. var html = template('rfAttachmentlistModel', data);
  121. // 渲染添加数据
  122. $('#rfAttachmentList').append(html);
  123. $('#loadingAttachment').html('<span onclick="rfGetAttachment()" class="btn btn-white">加载更多</span>');
  124. } else {
  125. $('#loadingAttachment').text('没有更多数据了');
  126. }
  127. } else {
  128. rfAffirm(data.message);
  129. }
  130. }
  131. });
  132. }
  133. </script>
粤ICP备19079148号