index.vue 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <template>
  2. <ele-page flex-table>
  3. <page-search @search="reload"></page-search>
  4. <common-table
  5. ref="pageRef"
  6. :pageConfig="pageConfig"
  7. :columns="columns"
  8. :tools="false"
  9. show-summary
  10. :flex-table="false"
  11. >
  12. <template #toolbar="{ row }">
  13. <div>
  14. <el-button
  15. type="success"
  16. plain
  17. v-permission="'statistic:defect:export'"
  18. @click="handleExportExcel(row)"
  19. >
  20. 导出EXCEL
  21. </el-button>
  22. </div>
  23. </template>
  24. </common-table>
  25. </ele-page>
  26. </template>
  27. <script setup>
  28. import { ref, reactive } from 'vue';
  29. import CommonTable from '@/components/CommonPage/CommonTable.vue';
  30. import pageSearch from './components/page-search.vue';
  31. defineOptions({ name: 'arrivalSign' });
  32. /** 表格列配置 */
  33. const columns = ref([
  34. { type: 'index', label: '#', align: 'center', width: 80 },
  35. { label: '地区', prop: 'godownName', align: 'center' },
  36. { label: '收货仓库', prop: 'godownName', align: 'center' },
  37. { label: '不良率', prop: 'godownName', align: 'center' }
  38. { label: '统计日期', prop: 'createTime', align: 'center' },
  39. ]);
  40. /** 页面组件实例 */
  41. const pageRef = ref(null);
  42. const pageConfig = reactive({
  43. pageUrl: '/baseinfo/godown/pagelist',
  44. exportUrl: '/baseinfo/godown/export',
  45. fileName: '不良统计',
  46. cacheKey: 'arrivalSignTable'
  47. });
  48. //刷新表格
  49. function reload(where) {
  50. pageRef.value?.reload(where);
  51. }
  52. //导出excel
  53. function handleExportExcel() {
  54. pageRef.value?.exportData('不良统计');
  55. }
  56. </script>