Skip to content

Commit 22adab8

Browse files
committed
统计:会员统计
1 parent c8a476a commit 22adab8

File tree

7 files changed

+588
-17
lines changed

7 files changed

+588
-17
lines changed

src/api/mall/statistics/member.ts

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
import request from '@/config/axios'
2+
import dayjs from 'dayjs'
3+
import { TradeStatisticsComparisonRespVO } from '@/api/mall/statistics/trade'
4+
import { formatDate } from '@/utils/formatTime'
5+
6+
/** 会员分析 Request VO */
7+
export interface MemberAnalyseReqVO {
8+
times: [dayjs.ConfigType, dayjs.ConfigType]
9+
}
10+
11+
/** 会员分析 Response VO */
12+
export interface MemberAnalyseRespVO {
13+
visitorCount: number
14+
orderUserCount: number
15+
payUserCount: number
16+
atv: number
17+
comparison: TradeStatisticsComparisonRespVO<MemberAnalyseComparisonRespVO>
18+
}
19+
20+
/** 会员分析对照数据 Response VO */
21+
export interface MemberAnalyseComparisonRespVO {
22+
userCount: number
23+
activeUserCount: number
24+
rechargeUserCount: number
25+
}
26+
27+
/** 会员地区统计 Response VO */
28+
export interface MemberAreaStatisticsRespVO {
29+
areaId: number
30+
areaName: string
31+
userCount: number
32+
orderCreateCount: number
33+
orderPayCount: number
34+
orderPayPrice: number
35+
}
36+
37+
/** 会员性别统计 Response VO */
38+
export interface MemberSexStatisticsRespVO {
39+
sex: number
40+
userCount: number
41+
}
42+
43+
/** 会员统计 Response VO */
44+
export interface MemberSummaryRespVO {
45+
userCount: number
46+
rechargeUserCount: number
47+
rechargePrice: number
48+
expensePrice: number
49+
}
50+
51+
/** 会员终端统计 Response VO */
52+
export interface MemberTerminalStatisticsRespVO {
53+
terminal: number
54+
userCount: number
55+
}
56+
57+
// 查询会员统计
58+
export const getMemberSummary = () => {
59+
return request.get<MemberSummaryRespVO>({
60+
url: '/statistics/member/summary'
61+
})
62+
}
63+
64+
// 查询会员分析数据
65+
export const getMemberAnalyse = (params: MemberAnalyseReqVO) => {
66+
return request.get<MemberAnalyseRespVO>({
67+
url: '/statistics/member/analyse',
68+
params: { times: [formatDate(params.times[0]), formatDate(params.times[1])] }
69+
})
70+
}
71+
72+
// 按照省份,查询会员统计列表
73+
export const getMemberAreaStatisticsList = () => {
74+
return request.get<MemberAreaStatisticsRespVO[]>({
75+
url: '/statistics/member/get-area-statistics-list'
76+
})
77+
}
78+
79+
// 按照性别,查询会员统计列表
80+
export const getMemberSexStatisticsList = () => {
81+
return request.get<MemberSexStatisticsRespVO[]>({
82+
url: '/statistics/member/get-sex-statistics-list'
83+
})
84+
}
85+
86+
// 按照终端,查询会员统计列表
87+
export const getMemberTerminalStatisticsList = () => {
88+
return request.get<MemberTerminalStatisticsRespVO[]>({
89+
url: '/statistics/member/get-terminal-statistics-list'
90+
})
91+
}

src/assets/map/json/china.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

src/plugins/echarts/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ import {
1818
AriaComponent,
1919
ParallelComponent,
2020
LegendComponent,
21-
ToolboxComponent
21+
ToolboxComponent,
22+
VisualMapComponent
2223
} from 'echarts/components'
2324

2425
import { CanvasRenderer } from 'echarts/renderers'
@@ -32,6 +33,7 @@ echarts.use([
3233
PolarComponent,
3334
AriaComponent,
3435
ParallelComponent,
36+
VisualMapComponent,
3537
BarChart,
3638
LineChart,
3739
PieChart,

0 commit comments

Comments
 (0)