2026-07-15 09:43:33 +08:00

226 lines
5.0 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package activitytemplate
const (
TaskStatusInProgress = "in_progress"
TaskStatusCompleted = "completed"
TaskStatusClaimed = "claimed"
ClaimStatusPending = "pending"
ClaimStatusRunning = "running"
ClaimStatusGranted = "granted"
ClaimStatusFailed = "failed"
ClaimStatusDead = "dead"
PeriodStatusPending = "pending"
PeriodStatusSettling = "settling"
PeriodStatusRewarding = "rewarding"
PeriodStatusSettled = "settled"
PeriodStatusCancelled = "cancelled"
EventStatusConsumed = "consumed"
EventStatusSkipped = "skipped"
)
// Runtime 是一次发布形成的不可变运行版本及其真实启停窗口。
// Template 来自 activity_template_versions.snapshot_json不读取后台当前编辑态。
type Runtime struct {
Template Template
VersionNo int64
RuntimeFromMS int64
RuntimeToMS int64
}
// GiftEvent 是 room-service 已提交并完成钱包扣费的送礼事实。
type GiftEvent struct {
EventID string
UserID int64
GiftID string
GiftCount int64
CoinAmount int64
RegionID int64
OccurredAtMS int64
}
type EventResult struct {
EventID string
Status string
SkipReason string
TemplateID string
TemplateCode string
VersionNo int64
TaskDay string
}
// TaskProgress 固化任务目标和奖励资源组,后台后续发布新版本不会改变已产生的进度与领奖内容。
type TaskProgress struct {
AppCode string
TemplateID string
TemplateCode string
VersionNo int64
TaskDay string
UserID int64
TaskKey string
TaskType string
TargetValue int64
ProgressValue int64
RewardResourceGroupID int64
RewardSnapshot RewardSnapshot
SortOrder int32
Status string
CompletedAtMS int64
ClaimedAtMS int64
UpdatedAtMS int64
FirstRegionID int64
EarningRegionID int64
AttributionAtMS int64
}
type VisitCommand struct {
UserID int64
RegionID int64
TemplateCode string
CommandID string
VersionNo int64
}
type VisitResult struct {
Runtime Runtime
Tasks []TaskProgress
FirstVisit bool
}
type ClaimCommand struct {
UserID int64
RegionID int64
TemplateCode string
VersionNo int64
TaskDay string
TaskKey string
CommandID string
}
type TaskClaim struct {
AppCode string
ClaimID string
CommandID string
TemplateID string
TemplateCode string
VersionNo int64
TaskDay string
TaskKey string
UserID int64
RewardResourceGroupID int64
RewardSnapshot RewardSnapshot
WalletCommandID string
WalletGrantID string
Status string
FailureReason string
AttemptCount int32
CreatedAtMS int64
UpdatedAtMS int64
GrantedAtMS int64
EarningRegionID int64
AttributionAtMS int64
}
type TaskClaimQuery struct {
TemplateID string
VersionNo int64
TaskDay string
TaskKey string
UserID int64
Status string
Page int32
PageSize int32
}
type LeaderboardEntry struct {
RankNo int32
UserID int64
Score int64
GiftCount int64
CoinAmount int64
FirstScoredAtMS int64
Snapshot bool
}
type RankPeriod struct {
AppCode string
TemplateID string
TemplateCode string
VersionNo int64
BoardType string
PeriodKey string
StartMS int64
EndMS int64
SettleAfterMS int64
LeaderboardSize int32
Status string
SettledAtMS int64
}
type LeaderboardQuery struct {
TemplateID string
TemplateCode string
VersionNo int64
RegionID int64
UserID int64
BoardType string
PeriodKey string
Page int32
PageSize int32
NowMS int64
}
type LeaderboardResult struct {
Runtime Runtime
Period RankPeriod
Entries []LeaderboardEntry
MyEntry LeaderboardEntry
MyFound bool
Total int64
}
type RewardJob struct {
AppCode string
RewardJobID string
TemplateID string
TemplateCode string
VersionNo int64
BoardType string
PeriodKey string
RankNo int32
UserID int64
Score int64
ResourceGroupID int64
RewardSnapshot RewardSnapshot
WalletCommandID string
WalletGrantID string
Status string
FailureReason string
AttemptCount int32
MaxAttempts int32
NextRetryAtMS int64
CreatedAtMS int64
UpdatedAtMS int64
GrantedAtMS int64
}
type RewardJobQuery struct {
TemplateID string
VersionNo int64
BoardType string
PeriodKey string
Status string
Page int32
PageSize int32
}
// StatsOutboxRecord 是投递到 statistics-service 的 owner 事实;业务事务只写本地 outboxMQ 失败不回滚计分。
type StatsOutboxRecord struct {
OutboxID string
EventType string
Payload []byte
RetryCount int32
}