All JstPeriod callsites have moved to IGameCalendarService — delete the static class and its tests. Updates the doc comments on Viewer.cs (LastLoginBonusClaimedAt) and ViewerEventCounter.cs to reference the new UTC / config-driven boundary instead of the old "JST 02:00". GameConfigurationJsonb config-section snapshot test picks up "GameCalendar". Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
17 lines
632 B
C#
17 lines
632 B
C#
namespace SVSim.Database.Models;
|
|
|
|
/// <summary>
|
|
/// Per-viewer "how many times has this happened" counter. Composite PK
|
|
/// (ViewerId, EventKey, Period). Period strings: "all-time", "month:YYYY-MM",
|
|
/// "week:YYYY-W##", "day:YYYY-MM-DD" — all UTC, with the reset-window boundary
|
|
/// set by <c>GameCalendarConfig.DailyResetUtcHour</c>.
|
|
/// Single source of truth for total_count / done_number on every wire shape.
|
|
/// </summary>
|
|
public class ViewerEventCounter
|
|
{
|
|
public long ViewerId { get; set; }
|
|
public string EventKey { get; set; } = "";
|
|
public string Period { get; set; } = "";
|
|
public int Count { get; set; }
|
|
}
|