feat: add track point
This commit is contained in:
33
internal/model/analytics/request.go
Normal file
33
internal/model/analytics/request.go
Normal file
@@ -0,0 +1,33 @@
|
||||
package analytics
|
||||
|
||||
import "time"
|
||||
|
||||
// TrackEventRequest 埋点事件请求
|
||||
type TrackEventRequest struct {
|
||||
UserID int64 `json:"user_id" binding:"required"`
|
||||
EventName string `json:"event_name" binding:"required"`
|
||||
Properties map[string]interface{} `json:"properties"`
|
||||
DeviceInfo map[string]interface{} `json:"device_info"`
|
||||
MetaData map[string]interface{} `json:"meta_data"`
|
||||
}
|
||||
|
||||
// BatchTrackEventRequest 批量埋点事件请求
|
||||
type BatchTrackEventRequest struct {
|
||||
Events []TrackEventRequest `json:"events" binding:"required,min=1,max=100"`
|
||||
}
|
||||
|
||||
// QueryEventsRequest 查询事件请求
|
||||
type QueryEventsRequest struct {
|
||||
UserID *int64 `json:"user_id" form:"user_id"`
|
||||
EventName string `json:"event_name" form:"event_name"`
|
||||
StartTime *time.Time `json:"start_time" form:"start_time"`
|
||||
EndTime *time.Time `json:"end_time" form:"end_time"`
|
||||
Page int `json:"page" form:"page" binding:"required,min=1"`
|
||||
PageSize int `json:"page_size" form:"page_size" binding:"required,min=1,max=100"`
|
||||
}
|
||||
|
||||
// EventStatsRequest 事件统计请求
|
||||
type EventStatsRequest struct {
|
||||
StartTime time.Time `json:"start_time" form:"start_time" binding:"required"`
|
||||
EndTime time.Time `json:"end_time" form:"end_time" binding:"required"`
|
||||
}
|
||||
Reference in New Issue
Block a user