浏览代码

商城:修复会员统计时间范围选择昨天时, 会强制查询两天的问题

owen 1 年之前
父节点
当前提交
c3cad3f3ee

+ 0 - 5
src/components/ShortcutDateRangePicker/index.vue

@@ -74,11 +74,6 @@ const emits = defineEmits<{
 }>()
 /** 触发时间范围选中事件 */
 const emitDateRangePicker = async () => {
-  // 开始与截止在同一天的, 折线图出不来, 需要延长一天
-  if (DateUtil.isSameDay(times.value[0], times.value[1])) {
-    // 前天
-    times.value[0] = DateUtil.formatDate(dayjs(times.value[0]).subtract(1, 'd'))
-  }
   emits('change', times.value)
 }
 

+ 4 - 1
src/utils/formatTime.ts

@@ -335,5 +335,8 @@ export function getDateRange(
   beginDate: dayjs.ConfigType,
   endDate: dayjs.ConfigType
 ): [string, string] {
-  return [dayjs(beginDate).startOf('d').toString(), dayjs(endDate).endOf('d').toString()]
+  return [
+    dayjs(beginDate).startOf('d').format('YYYY-MM-DD HH:mm:ss'),
+    dayjs(endDate).endOf('d').format('YYYY-MM-DD HH:mm:ss')
+  ]
 }

+ 9 - 0
src/views/mall/statistics/trade/index.vue

@@ -219,6 +219,8 @@ import { TradeSummaryRespVO, TradeTrendSummaryRespVO } from '@/api/mall/statisti
 import { calculateRelativeRate, fenToYuan } from '@/utils'
 import download from '@/utils/download'
 import { CardTitle } from '@/components/Card'
+import * as DateUtil from '@/utils/formatTime'
+import dayjs from 'dayjs'
 
 /** 交易统计 */
 defineOptions({ name: 'TradeStatistics' })
@@ -289,6 +291,13 @@ const lineChartOptions = reactive<EChartsOption>({
 /** 处理交易状况查询 */
 const getTradeTrendData = async () => {
   trendLoading.value = true
+  // 1. 处理时间: 开始与截止在同一天的, 折线图出不来, 需要延长一天
+  const times = shortcutDateRangePicker.value.times
+  if (DateUtil.isSameDay(times[0], times[1])) {
+    // 前天
+    times[0] = DateUtil.formatDate(dayjs(times[0]).subtract(1, 'd'))
+  }
+  // 查询数据
   await Promise.all([getTradeTrendSummary(), getTradeStatisticsList()])
   trendLoading.value = false
 }