From 208d14d65acb68d6bc12152c1f9149e62c5224a9 Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Mon, 20 Jan 2025 20:23:40 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20SMF-CDR=E6=97=B6=E9=97=B4=E5=8F=AF?= =?UTF-8?q?=E9=80=89=E6=9F=A5=E8=AF=A2=E8=8C=83=E5=9B=B4=EF=BC=8C=E6=97=A0?= =?UTF-8?q?=E6=95=B0=E6=8D=AEloading=E5=85=B3=E9=97=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/dashboard/smfCDR/index.vue | 53 ++++++++++++++++------ src/views/dashboard/smfCDRByIMSI/index.vue | 6 +-- 2 files changed, 41 insertions(+), 18 deletions(-) diff --git a/src/views/dashboard/smfCDR/index.vue b/src/views/dashboard/smfCDR/index.vue index b9e41b1c..deb1731e 100644 --- a/src/views/dashboard/smfCDR/index.vue +++ b/src/views/dashboard/smfCDR/index.vue @@ -19,6 +19,7 @@ import { import { OptionsType, WS } from '@/plugins/ws-websocket'; import PQueue from 'p-queue'; import saveAs from 'file-saver'; +import dayjs, { Dayjs } from 'dayjs'; import { useClipboard } from '@vueuse/core'; const { copy } = useClipboard({ legacy: true }); const { t } = useI18n(); @@ -29,7 +30,25 @@ const queue = new PQueue({ concurrency: 1, autoStart: true }); let neOtions = ref[]>([]); /**开始结束时间 */ -let queryRangePicker = ref<[string, string]>(['', '']); +let queryRangePicker = ref<[Dayjs, Dayjs] | undefined>([ + dayjs().startOf('hour'), + dayjs().endOf('hour'), +]); +/**时间范围 */ +let rangePickerPresets = ref([ + { + label: 'Now hour', + value: [dayjs().startOf('hour'), dayjs().endOf('hour')], + }, + { label: 'Today', value: [dayjs().startOf('day'), dayjs().endOf('day')] }, + { + label: 'Yesterday', + value: [ + dayjs().subtract(1, 'day').startOf('day'), + dayjs().subtract(1, 'day').endOf('day'), + ], + }, +]); /**查询参数 */ let queryParams = reactive({ @@ -40,9 +59,9 @@ let queryParams = reactive({ sortField: 'timestamp', sortOrder: 'desc', /**开始时间 */ - startTime: '', + startTime: undefined as undefined | number, /**结束时间 */ - endTime: '', + endTime: undefined as undefined | number, /**当前页数 */ pageNum: 1, /**每页条数 */ @@ -53,12 +72,10 @@ let queryParams = reactive({ function fnQueryReset() { queryParams = Object.assign(queryParams, { subscriberID: '', - startTime: '', - endTime: '', pageNum: 1, pageSize: 20, }); - queryRangePicker.value = ['', '']; + queryRangePicker.value = [dayjs().startOf('hour'), dayjs().endOf('hour')]; tablePagination.current = 1; tablePagination.pageSize = 20; fnGetList(); @@ -339,11 +356,19 @@ function fnGetList(pageNum?: number) { if (pageNum) { queryParams.pageNum = pageNum; } - if (!queryRangePicker.value) { - queryRangePicker.value = ['', '']; + + // 时间范围 + if ( + Array.isArray(queryRangePicker.value) && + queryRangePicker.value.length > 0 + ) { + queryParams.startTime = queryRangePicker.value[0].valueOf(); + queryParams.endTime = queryRangePicker.value[1].valueOf(); + } else { + queryParams.startTime = undefined; + queryParams.endTime = undefined; } - queryParams.startTime = queryRangePicker.value[0]; - queryParams.endTime = queryRangePicker.value[1]; + listSMFDataCDR(toRaw(queryParams)).then(res => { if (res.code === RESULT_CODE_SUCCESS && Array.isArray(res.rows)) { // 取消勾选 @@ -556,12 +581,12 @@ onBeforeUnmount(() => { > diff --git a/src/views/dashboard/smfCDRByIMSI/index.vue b/src/views/dashboard/smfCDRByIMSI/index.vue index f7a0939f..dea8bf0b 100644 --- a/src/views/dashboard/smfCDRByIMSI/index.vue +++ b/src/views/dashboard/smfCDRByIMSI/index.vue @@ -404,10 +404,8 @@ function fnRanderChartDataLoad() { // 绘制图数据 fnRanderChartDataUpdate(); } else { - cdrChart.showLoading('default', { - text: 'No Data', - fontSize: 16, // 字体大小 - }); + message.warning('No Data'); + cdrChart.hideLoading(); cdrChart.setOption({ title: { text: `Data Volume Uplink / Downlink By IMSI ${queryParams.subscriberID}`,