feat: 数据分析
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
package response
|
||||
|
||||
// TrendPoint 折线图通用数据点(日期 + 数量)
|
||||
type TrendPoint struct {
|
||||
Date string `json:"date"` // 日期 "2026-03-01"
|
||||
Count int64 `json:"count"` // 数量
|
||||
}
|
||||
|
||||
// ListeningTrendResponse 收听趋势响应
|
||||
type ListeningTrendResponse struct {
|
||||
Trend []TrendPoint `json:"trend"` // 每日收听人次趋势
|
||||
TotalCount int64 `json:"totalCount"` // 期间总收听次数
|
||||
}
|
||||
|
||||
// SubscriptionTrendResponse 订阅趋势响应
|
||||
type SubscriptionTrendResponse struct {
|
||||
Trend []TrendPoint `json:"trend"` // 每日新增订阅数趋势
|
||||
TotalNewSubs int64 `json:"totalNewSubs"` // 期间新增订阅总数
|
||||
}
|
||||
|
||||
// RenewalTrendResponse 续费趋势响应
|
||||
type RenewalTrendResponse struct {
|
||||
Trend []TrendPoint `json:"trend"` // 每日续费订单数趋势
|
||||
TotalRenewals int64 `json:"totalRenewals"` // 期间续费总数
|
||||
}
|
||||
|
||||
// SubscriberStatsResponse 订阅用户统计响应
|
||||
type SubscriberStatsResponse struct {
|
||||
ActiveSubscribers int64 `json:"activeSubscribers"` // 当前有效订阅用户数
|
||||
ExpiredSubscribers int64 `json:"expiredSubscribers"` // 已过期订阅用户数
|
||||
TotalSubscribers int64 `json:"totalSubscribers"` // 历史总订阅用户数(去重)
|
||||
ActiveTrend []TrendPoint `json:"activeTrend"` // 每日有效订阅用户数趋势
|
||||
}
|
||||
|
||||
// CompletionRateResponse 内容质量:完播率
|
||||
type CompletionRateResponse struct {
|
||||
ProgramId string `json:"programId"`
|
||||
Title string `json:"title"`
|
||||
AvgCompletion float64 `json:"avgCompletion"` // 0.0 - 1.0 平均完播进度
|
||||
PlayCount int64 `json:"playCount"` // 总播放样本数
|
||||
}
|
||||
|
||||
// RetentionResponse 用户黏性:留存分析
|
||||
type RetentionResponse struct {
|
||||
Date string `json:"date"` // 初始日期
|
||||
NewUsers int64 `json:"newUsers"` // 该日新增活跃用户数
|
||||
Retention []float64 `json:"retention"` // [次日留存, 3日留存, 7日留存, 30日留存]
|
||||
}
|
||||
|
||||
// FunnelResponse 商业转化:漏斗分析
|
||||
type FunnelResponse struct {
|
||||
ListenUsers int64 `json:"listenUsers"` // 活跃收听用户数
|
||||
OrderUsers int64 `json:"orderUsers"` // 尝试下单用户数
|
||||
PayUsers int64 `json:"payUsers"` // 支付成功用户数
|
||||
LTV float64 `json:"ltv"` // 人均生命周期价值 (Revenue / ListenUsers)
|
||||
}
|
||||
|
||||
// CategoryContribution 偏好探测:品类贡献点
|
||||
type CategoryContribution struct {
|
||||
CategoryId string `json:"categoryId"`
|
||||
CategoryName string `json:"categoryName"`
|
||||
ListenCount int64 `json:"listenCount"` // 播放量
|
||||
Revenue int64 `json:"revenue"` // 营收(分)
|
||||
Share float64 `json:"share"` // 营收占比 (0.0 - 1.0)
|
||||
}
|
||||
|
||||
// PreferenceAnalysisResponse 品类偏好分析响应
|
||||
type PreferenceAnalysisResponse struct {
|
||||
List []CategoryContribution `json:"list"`
|
||||
}
|
||||
Reference in New Issue
Block a user