export.vue 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. <template>
  2. <view class="processWrapper exportBody ">
  3. <view style="height:98rpx"></view>
  4. <view class="ding">
  5. <!-- <calendar></calendar> -->
  6. <view class="example-body">
  7. <uni-datetime-picker v-model="datetimerange" type="datetimerange" start-placeholder="请选择"
  8. end-placeholder="请选择" start="2000-3-20 12:00:00" end="2021-10-20 20:00:00" rangeSeparator="至" />
  9. </view>
  10. </view>
  11. <block>
  12. <view class="processList">
  13. <view class="cu-list menu-avatar">
  14. <view class="cu-item" v-for="(item,index) in getExportData" :key="index">
  15. <view class="cu-avatar lg">
  16. <image class="image-bg"
  17. :src="item.clzt==0?'/static/process-icon.png':'/static/processed-icon.png'" />
  18. </view>
  19. <view class="content">
  20. <view class="pro-title">
  21. <view class="cut" v-if="keyWords=='人工督察单'">{{item.artificial_code}}</view>
  22. <view class="cut" v-if="keyWords=='电子督察单'">{{item.supervise_code}}</view>
  23. </view>
  24. <view class="pro-des ">
  25. <view class="text-cut">{{item.content}}</view>
  26. </view>
  27. <view class="pro-date ">{{item.timestamp}}</view>
  28. </view>
  29. <view class="action" style="z-index:99">
  30. <view class="unProcess" v-if="item.clzt==0">未处理</view>
  31. <view class="processed" v-else>已处理</view>
  32. </view>
  33. </view>
  34. <view class=" text-center margin-top" v-if="!this.getExportData.length&&this.dataRes">暂无数据...</view>
  35. </view>
  36. </view>
  37. </block>
  38. <view class="padding-lr padding-bottom-lg" style="position:fixed;bottom:0;width:100%">
  39. <view class="btn-area">
  40. <button class="bg-blue round missReport margin-top" @tap="exportButton()">导 出 </button>
  41. </view>
  42. </view>
  43. </view>
  44. </template>
  45. <script>
  46. </script>
  47. <script>
  48. import json from '../../data/json.js';
  49. export default {
  50. data() {
  51. return {
  52. getExportData: [],
  53. dataRes: 0,
  54. // datetimerange: ['2021-03-20 20:10:10', '2021-05-10 10:10:10'],
  55. datetimerange: ['', ''],
  56. keyWords:'',
  57. };
  58. },
  59. onLoad: function(option) {
  60. this.keyWords=option.keywords;
  61. alert(this.keyWords)
  62. this.getData({
  63. "company_code": uni.getStorageSync('selectedCode'),
  64. "start_time": '',
  65. "end_time": '',
  66. })
  67. },
  68. watch: {
  69. datetimerange(newval) {
  70. this.getData({
  71. "company_code": uni.getStorageSync('selectedCode'),
  72. "start_time":newval[0],
  73. "end_time": newval[1],
  74. })
  75. }
  76. },
  77. methods: {
  78. async getData(params = {}) {
  79. let listUrl = "";
  80. switch (this.keyWords) {
  81. case '人工督察单':
  82. listUrl = "FireInspector/getManualInspectorList"
  83. break;
  84. case '电子督察单':
  85. listUrl = "FireInspector/getElectronicInspectorList"
  86. break;
  87. default:
  88. break;
  89. }
  90. alert(listUrl)
  91. const res = await this.$myRequest({
  92. url: listUrl, //人员督察单渲染
  93. data: params,
  94. showLoading: true
  95. })
  96. this.getExportData = res.data.data;
  97. this.dataRes = 1;
  98. },
  99. exportButton() {
  100. let url2 = "";
  101. switch (this.keyWords) {
  102. case '人工督察单':
  103. url2 = "ExportModule/getManualInspectorListExpor"
  104. break;
  105. case '电子督察单':
  106. url2 = "ExportModule/getElectronicInspectorListExpor"
  107. break;
  108. default:
  109. break;
  110. }
  111. //#ifdef H5
  112. alert(this.$BASE_URL)
  113. alert(url2)
  114. let exportUrl = this.$BASE_URL +url2+
  115. `/start_time/${this.datetimerange[0]}/end_time/${this.datetimerange[1]}/company_code/${uni.getStorageSync('selectedCode')}/`
  116. var ua = window.navigator.userAgent.toLowerCase();
  117. if (ua.match(/MicroMessenger/i) == 'micromessenger') {
  118. uni.showModal({
  119. showCancel: false,
  120. content: '如需下载,请在默认浏览器中操作',
  121. success: function(res) {
  122. window.location.href = exportUrl;
  123. }
  124. });
  125. } else {
  126. window.location.href = exportUrl;
  127. }
  128. //#endif
  129. }
  130. }
  131. }
  132. </script>
  133. <style lang="scss">
  134. </style>