From abbefe1770d6af131ae837dbc80babb747a4e0ca Mon Sep 17 00:00:00 2001 From: chenjinsong <523037378@qq.com> Date: Sun, 3 Mar 2024 22:10:02 +0800 Subject: [PATCH] =?UTF-8?q?CN-1563=20feat:=20=E5=8A=9F=E8=83=BD=E6=95=B4?= =?UTF-8?q?=E5=90=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/SimpleLoading.vue | 241 ++++++++++++ src/components/common/TimeLine.vue | 18 +- src/utils/unit-convert.js | 2 +- src/views/location/Index.vue | 473 ++++++++++++++---------- 4 files changed, 533 insertions(+), 201 deletions(-) create mode 100644 src/components/common/SimpleLoading.vue diff --git a/src/components/common/SimpleLoading.vue b/src/components/common/SimpleLoading.vue new file mode 100644 index 00000000..f60e6acd --- /dev/null +++ b/src/components/common/SimpleLoading.vue @@ -0,0 +1,241 @@ + + + + diff --git a/src/components/common/TimeLine.vue b/src/components/common/TimeLine.vue index 0a1e30da..b6616942 100644 --- a/src/components/common/TimeLine.vue +++ b/src/components/common/TimeLine.vue @@ -47,11 +47,9 @@ export default { methods: { getDate () { // 切换页面进来时,timeFilter时间戳为秒而非毫秒 - if (JSON.stringify(this.timeFilter.endTime).length < 13) { - // eslint-disable-next-line vue/no-mutating-props - this.timeFilter.startTime = getMillisecond(this.timeFilter.startTime) - // eslint-disable-next-line vue/no-mutating-props - this.timeFilter.endTime = getMillisecond(this.timeFilter.endTime) + const timeFilter = { + startTime: getMillisecond(this.timeFilter.startTime), + endTime: getMillisecond(this.timeFilter.endTime) } // 给倒三角滑块添加竖线 @@ -70,10 +68,10 @@ export default { } const myTimeRange = [] - const timeInterval = this.getTimeInterval(this.timeFilter) // 时间间隔 - const showTimeInterval = this.showTimeTimeInterval(this.timeFilter) // 显示时间的时间间隔 - let startTime = this.timeFilter.startTime // 开始时间 - const firstTime = new Date(this.timeFilter.startTime).getMinutes() // 开始时间的分钟数,作为计算基础 + const timeInterval = this.getTimeInterval(timeFilter) // 时间间隔 + const showTimeInterval = this.showTimeTimeInterval(timeFilter) // 显示时间的时间间隔 + let startTime = timeFilter.startTime // 开始时间 + const firstTime = new Date(timeFilter.startTime).getMinutes() // 开始时间的分钟数,作为计算基础 // 根据显示时间间隔计算所需开始时间,如获取3小时的时间,开始时间为第31分钟,则按30分钟开始计算 if (showTimeInterval % 5 === 0) { @@ -84,7 +82,7 @@ export default { startTime = startTime - 60 * 1000 } - for (let i = startTime; i <= this.timeFilter.endTime; i += showTimeInterval * 60 * 1000) { + for (let i = startTime; i <= timeFilter.endTime; i += showTimeInterval * 60 * 1000) { const obj = this.formatTime(i, showTimeInterval, timeInterval) if (obj) { myTimeRange.push({ time: obj.time, time1: obj.time1, stamp: i, showFlag: obj.showFlag }) diff --git a/src/utils/unit-convert.js b/src/utils/unit-convert.js index b4c23557..8870fb45 100644 --- a/src/utils/unit-convert.js +++ b/src/utils/unit-convert.js @@ -56,7 +56,7 @@ export function timeUnitFormatter (time, sourceUnit = 'ms', targetUnit, dot = 2) let multi = 1 let result = parseFloat(time) if (targetIndex < 0) { - while (sourceIndex < timeUnit.length - 1 && result > timeUnit[sourceIndex + 1].step) { + while (sourceIndex < timeUnit.length - 1 && result >= timeUnit[sourceIndex + 1].step) { sourceIndex++ multi = timeUnit[sourceIndex].step result /= multi diff --git a/src/views/location/Index.vue b/src/views/location/Index.vue index 102c62cc..e817199c 100644 --- a/src/views/location/Index.vue +++ b/src/views/location/Index.vue @@ -60,10 +60,19 @@
-
+
+ + +
+
+ +
+ +
+
{{$t('locationIntelligence.populationDensity')}}
@@ -77,6 +86,7 @@
+
{{$t('locationIntelligence.activeSubscribers')}}
{{activeCount}}
@@ -86,9 +96,9 @@
{{$t('location.followedSubscribers')}}
-