diff --git a/src/apis/common/home.ts b/src/apis/common/dashboard.ts similarity index 72% rename from src/apis/common/home.ts rename to src/apis/common/dashboard.ts index f445f589..cf2954c5 100644 --- a/src/apis/common/home.ts +++ b/src/apis/common/dashboard.ts @@ -5,16 +5,26 @@ export type * from './type' const BASE_URL = '/dashboard' -/** @desc 查询访问趋势 */ -export function listDashboardAccessTrend(days: number) { - return http.get(`${BASE_URL}/access/trend/${days}`) -} - /** @desc 查询公告列表 */ export function listDashboardNotice() { return http.get(`${BASE_URL}/notice`) } +/** @desc 查询 PV 总览 */ +export function getDashboardOverviewPv() { + return http.get(`${BASE_URL}/analysis/overview/pv`) +} + +/** @desc 查询 IP 总览 */ +export function getDashboardOverviewIp() { + return http.get(`${BASE_URL}/analysis/overview/ip`) +} + +/** @desc 查询访问趋势 */ +export function getDashboardAccessTrend(days: number) { + return http.get(`${BASE_URL}/access/trend/${days}`) +} + /** @desc 查询访问时段分析 */ export function getAnalysisTimeslot() { return http.get(`${BASE_URL}/analysis/timeslot`) diff --git a/src/apis/common/index.ts b/src/apis/common/index.ts index dca11d34..8dbb1bd5 100644 --- a/src/apis/common/index.ts +++ b/src/apis/common/index.ts @@ -1,3 +1,3 @@ export * from './common' export * from './captcha' -export * from './home' +export * from './dashboard' diff --git a/src/apis/common/type.ts b/src/apis/common/type.ts index 638737fb..90f23cc8 100644 --- a/src/apis/common/type.ts +++ b/src/apis/common/type.ts @@ -5,6 +5,13 @@ export interface ImageCaptchaResp { expireTime: number } +/** 仪表盘公告类型 */ +export interface DashboardNoticeResp { + id: number + title: string + type: number +} + /** 仪表盘访问趋势类型 */ export interface DashboardAccessTrendResp { date: string @@ -12,19 +19,20 @@ export interface DashboardAccessTrendResp { ipCount: number } -/** 仪表盘图表类型 */ +/** 仪表盘通用总览类型 */ +export interface DashboardOverviewCommonResp { + total: number + today: number + growth: number + dataList: DashboardChartCommonResp[] +} + +/** 仪表盘通用图表类型 */ export interface DashboardChartCommonResp { name: string value: number } -/** 仪表盘公告类型 */ -export interface DashboardNoticeResp { - id: number - title: string - type: number -} - /* 行为验证码类型 */ export interface BehaviorCaptchaResp { originalImageBase64: string diff --git a/src/hooks/modules/useChart.ts b/src/hooks/modules/useChart.ts index a1fc8a53..17b9354f 100644 --- a/src/hooks/modules/useChart.ts +++ b/src/hooks/modules/useChart.ts @@ -18,9 +18,9 @@ export function useChart(sourceOption: optionsFn) { // echarts support https://echarts.apache.org/zh/theme-builder.html // 这里不使用 // TODO 图表主题 - const option = computed(() => { + const chartOption = computed(() => { return sourceOption(isDark.value) }) - return { option } + return { chartOption } } diff --git a/src/views/dashboard/analysis/components/AccessTimeslot.vue b/src/views/dashboard/analysis/components/AccessTimeslot.vue index 5c01ea5c..44b50f2c 100644 --- a/src/views/dashboard/analysis/components/AccessTimeslot.vue +++ b/src/views/dashboard/analysis/components/AccessTimeslot.vue @@ -1,13 +1,13 @@ + + diff --git a/src/views/dashboard/analysis/components/Module.vue b/src/views/dashboard/analysis/components/Module.vue new file mode 100644 index 00000000..6f09f326 --- /dev/null +++ b/src/views/dashboard/analysis/components/Module.vue @@ -0,0 +1,101 @@ + + + + + diff --git a/src/views/dashboard/analysis/components/ModuleItem.vue b/src/views/dashboard/analysis/components/ModuleItem.vue deleted file mode 100644 index 8889ce0c..00000000 --- a/src/views/dashboard/analysis/components/ModuleItem.vue +++ /dev/null @@ -1,82 +0,0 @@ - - - - - diff --git a/src/views/dashboard/analysis/components/OsItem.vue b/src/views/dashboard/analysis/components/Os.vue similarity index 73% rename from src/views/dashboard/analysis/components/OsItem.vue rename to src/views/dashboard/analysis/components/Os.vue index 77ae2bea..4e0fcfb4 100644 --- a/src/views/dashboard/analysis/components/OsItem.vue +++ b/src/views/dashboard/analysis/components/Os.vue @@ -1,23 +1,23 @@ + + diff --git a/src/views/dashboard/analysis/components/flow/Demo2.vue b/src/views/dashboard/analysis/components/flow/Demo2.vue new file mode 100644 index 00000000..f1d4c572 --- /dev/null +++ b/src/views/dashboard/analysis/components/flow/Demo2.vue @@ -0,0 +1,159 @@ + + + + + diff --git a/src/views/dashboard/analysis/components/flow/Ip.vue b/src/views/dashboard/analysis/components/flow/Ip.vue new file mode 100644 index 00000000..39548f33 --- /dev/null +++ b/src/views/dashboard/analysis/components/flow/Ip.vue @@ -0,0 +1,153 @@ + + + + + diff --git a/src/views/dashboard/analysis/components/flow/Pv.vue b/src/views/dashboard/analysis/components/flow/Pv.vue new file mode 100644 index 00000000..db88d61a --- /dev/null +++ b/src/views/dashboard/analysis/components/flow/Pv.vue @@ -0,0 +1,153 @@ + + + + + diff --git a/src/views/dashboard/analysis/index.vue b/src/views/dashboard/analysis/index.vue index c378e276..fcdc804a 100644 --- a/src/views/dashboard/analysis/index.vue +++ b/src/views/dashboard/analysis/index.vue @@ -1,34 +1,40 @@