diff --git a/src/api/log.ts b/src/api/log.ts index 6730be02..9fb11b3c 100644 --- a/src/api/log.ts +++ b/src/api/log.ts @@ -15,6 +15,33 @@ class LogAPI { params: queryParams, }); } + + /** + * 获取访问趋势 + * + * @param queryParams + * @returns + */ + static getVisitTrend(queryParams: VisitTrendQuery) { + return request({ + url: `${LOG_BASE_URL}/visit-trend`, + method: "get", + params: queryParams, + }); + } + + /** + * 获取访问趋势 + * + * @param queryParams + * @returns + */ + static getVisitStats() { + return request({ + url: `${LOG_BASE_URL}/visit-stats`, + method: "get", + }); + } } export default LogAPI; @@ -54,3 +81,40 @@ export interface LogPageVO { /** 操作人 */ operator: string; } + +/** 访问趋势视图对象 */ +export interface VisitTrendVO { + /** 日期列表 */ + dates: string[]; + /** 浏览量(PV) */ + pvList: number[]; + /** 访客数(UV) */ + uvList: number[]; + /** IP数 */ + ipList: number[]; +} + +/** 访问趋势查询参数 */ +export interface VisitTrendQuery { + /** 开始日期 */ + startDate: string; + /** 结束日期 */ + endDate: string; +} + +/** 访问统计 */ +export interface VisitStatsVO { + /** 标题 */ + title: string; + /** 类型 */ + type: "pv" | "uv" | "ip"; + + /** 今日访问量 */ + todayCount: number; + /** 总访问量 */ + totalCount: number; + /** 同比增长率(相对于昨天同一时间段的增长率) */ + growthRate: number; + + totalCountOutput: number; +} diff --git a/src/api/stats.ts b/src/api/stats.ts deleted file mode 100644 index cfaf39ac..00000000 --- a/src/api/stats.ts +++ /dev/null @@ -1,35 +0,0 @@ -import request from "@/utils/request"; - -const STATS_BASE_URL = "/api/v1/stats"; - -class StatsAPI { - static getVisitTrend(queryParams: VisitTrendQuery) { - return request({ - url: `${STATS_BASE_URL}/visit-trend`, - method: "get", - params: queryParams, - }); - } -} - -export default StatsAPI; - -/** 访问趋势视图对象 */ -export interface VisitTrendVO { - /** 日期列表 */ - dates: string[]; - /** 浏览量(PV) */ - pvList: number[]; - /** 访客数(UV) */ - uvList: number[]; - /** IP数 */ - ipList: number[]; -} - -/** 访问趋势查询参数 */ -export interface VisitTrendQuery { - /** 开始日期 */ - startDate: string; - /** 结束日期 */ - endDate: string; -} diff --git a/src/assets/icons/visit.svg b/src/assets/icons/online-user.svg similarity index 100% rename from src/assets/icons/visit.svg rename to src/assets/icons/online-user.svg diff --git a/src/layout/components/NavBar/components/NavbarRight.vue b/src/layout/components/NavBar/components/NavbarRight.vue index c97d46ba..97533177 100644 --- a/src/layout/components/NavBar/components/NavbarRight.vue +++ b/src/layout/components/NavBar/components/NavbarRight.vue @@ -19,6 +19,12 @@ + + + + + + diff --git a/src/views/dashboard/components/VisitTrend.vue b/src/views/dashboard/components/VisitTrend.vue index 46c45d97..415986df 100644 --- a/src/views/dashboard/components/VisitTrend.vue +++ b/src/views/dashboard/components/VisitTrend.vue @@ -30,7 +30,7 @@