package roomturnoverreward const ( TierStatusActive = "active" TierStatusInactive = "inactive" SettlementStatusPending = "pending" SettlementStatusGranted = "granted" SettlementStatusFailed = "failed" EventStatusConsumed = "consumed" EventStatusDuplicate = "duplicate" EventStatusSkipped = "skipped" ) // Tier 是后台配置的房间流水奖励档位,结算只发命中的最高有效档。 type Tier struct { TierID int64 TierCode string TierName string ThresholdCoinSpent int64 RewardCoinAmount int64 Status string SortOrder int32 CreatedAtMS int64 UpdatedAtMS int64 } // Config 是当前 App 的房间流水奖励配置。 type Config struct { AppCode string Enabled bool Tiers []Tier UpdatedByAdminID int64 CreatedAtMS int64 UpdatedAtMS int64 } // Progress 是单房间单 UTC 周期的金币流水聚合。 type Progress struct { AppCode string RoomID string PeriodStartMS int64 PeriodEndMS int64 CoinSpent int64 LastEventAtMS int64 CreatedAtMS int64 UpdatedAtMS int64 } // RoomGiftEvent 是 room-service RoomGiftSent 事实映射后的最小聚合输入。 type RoomGiftEvent struct { EventID string EventType string AppCode string RoomID string CoinSpent int64 OccurredAtMS int64 } // EventResult 表达房间礼物事件是否参与流水聚合。 type EventResult struct { EventID string Status string } // Settlement 是某个房间单个 UTC 周期的奖励发放事实。 type Settlement struct { SettlementID string AppCode string RoomID string OwnerUserID int64 PeriodStartMS int64 PeriodEndMS int64 CoinSpent int64 TierID int64 TierCode string ThresholdCoinSpent int64 RewardCoinAmount int64 Status string WalletCommandID string WalletTransactionID string FailureReason string SettledAtMS int64 CreatedAtMS int64 UpdatedAtMS int64 } // StatusResult 是 H5 查询当前用户房间流水奖励活动时的展示投影。 type StatusResult struct { Config Config RoomID string OwnerUserID int64 PeriodStartMS int64 PeriodEndMS int64 CurrentCoinSpent int64 ExpectedRewardCoinAmount int64 MatchedTier Tier LatestSettlement Settlement ServerTimeMS int64 } // SettlementQuery 是后台结算记录分页筛选条件。 type SettlementQuery struct { Status string RoomID string OwnerUserID int64 PeriodStartMS int64 Page int32 PageSize int32 } // BatchResult 汇总 cron 一次处理的 settlement 创建和发币结果。 type BatchResult struct { ClaimedCount int32 ProcessedCount int32 SuccessCount int32 FailureCount int32 HasMore bool }