Просмотр исходного кода

Merge branch 'master_zyh' of United_Software/k_online_ui into master

Jack Zhou 2 недель назад
Родитель
Сommit
68a3e3178e

+ 16 - 0
src/api/module/report.ts

@@ -191,6 +191,22 @@ export const getReportDetailTable = (params: any, config: any) => {
   )
 }
 
+
+/**
+ * 获取Report detail页筛选项配置数据
+ */
+export const getReportDetailFilterConfig = (params: any, config: any) => {
+  return HttpAxios.post(
+    `${baseUrl}`,
+    {
+      action: 'shipment_status_report',
+      operate: 'report_detail_column',
+      ...params
+    },
+    config
+  )
+}
+
 /**
  * 获取导出Report detail页表格数据
  */

+ 26 - 2
src/views/Report/src/components/ReportDetail/src/ReportDetail.vue

@@ -4,6 +4,7 @@ import FieldsTable from './components/FieldsTable.vue'
 import { useCalculatingHeight } from '@/hooks/calculatingHeight'
 import { useUserStore } from '@/stores/modules/user'
 import { useRoute } from 'vue-router'
+import dayjs from 'dayjs'
 
 const route = useRoute()
 
@@ -19,6 +20,22 @@ const fieldsTableRef = ref()
 
 const filterList = ref([])
 const reportName = ref('')
+const getFilterListData = () => {
+  $api
+    .getReportDetailFilterConfig({
+      serial_no: route.query.id as string
+    })
+    .then((res) => {
+      handleFilterData(res.data.filtersList, res.data.reportName)
+      nextTick(() => {
+        fieldsTableRef.value.getTableData()
+      })
+    })
+}
+onMounted(() => {
+  getFilterListData()
+})
+
 const handleFilterData = (filterData, name) => {
   reportName.value = name
   if (filterList.value.length) return
@@ -32,6 +49,12 @@ const handleFilterData = (filterData, name) => {
       curData.options = item.options
       curData.value = ''
     }
+    if (item.label === 'ETD') {
+      curData.value = [
+        dayjs().subtract(2, 'month').startOf('month').format('MM/DD/YYYY'),
+        dayjs().add(1, 'month').format('MM/DD/YYYY')
+      ]
+    }
     return {
       label: item.label,
       field: item.field,
@@ -46,7 +69,7 @@ const handleClickManageFields = () => {
 }
 
 const handelSearchFilters = () => {
-  fieldsTableRef.value.handleSearch()
+  fieldsTableRef.value.getTableData()
 }
 const handleClickReset = () => {
   filterList.value.forEach((item) => {
@@ -178,8 +201,9 @@ const applyNewColumn = () => {
       ref="fieldsTableRef"
       :containerHeight="containerHeight"
       :filterData="filterList"
-      @filterOptionsLoaded="handleFilterData"
     ></FieldsTable>
+
+    <!-- @filterOptionsLoaded="handleFilterData" -->
   </div>
 </template>
 

+ 1 - 12
src/views/Report/src/components/ReportDetail/src/components/FieldsTable.vue

@@ -101,7 +101,6 @@ const handleColumns = (columns: any) => {
   })
   return newColumns
 }
-const emit = defineEmits(['filterOptionsLoaded'])
 
 // 获取表格数据
 const getTableData = (isPageChange?: boolean) => {
@@ -144,7 +143,6 @@ const getTableData = (isPageChange?: boolean) => {
         sortByOptions.value = sortByData.options
         sortBy.value = sortByData.field
         sortOrder.value = sortByData.order
-        emit('filterOptionsLoaded', res.data.filtersList, reportName.value)
       }
     })
     .finally(() => {
@@ -155,11 +153,6 @@ const getTableData = (isPageChange?: boolean) => {
     })
 }
 
-// 查询时调用接口
-const handleSearch = () => {
-  getTableData()
-}
-
 let tmpSearch = ''
 let tmpMapping = ''
 // 下载
@@ -208,12 +201,8 @@ const getExportTableData = async (type: string, column: any) => {
 // 实现行点击样式
 useRowClickStyle(tableRef)
 
-onMounted(() => {
-  getTableData()
-})
-
 defineExpose({
-  handleSearch,
+  getTableData,
   getExportTableData
 })
 </script>