Replaces GlobalsImporter's ImportPuzzleGroups/Puzzles/Missions methods (plus the DeriveTargetPuzzleGroupId regex helper) with a dedicated PuzzleImporter that reads three flat seed JSONs (puzzle-groups, puzzles, puzzle-missions) produced by the Python extractor. Groups run before puzzles to satisfy the FK; missions upsert by sequential id. Wired into Program.cs and SVSimTestFactory after PaymentItemImporter so existing GlobalsImporterPuzzleTests continue to pass unchanged via SeedGlobalsAsync. The original prod-capture JSONs are deleted now that the seeds are authoritative. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
15 lines
615 B
C#
15 lines
615 B
C#
using System.Text.Json;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace SVSim.Bootstrap.Models.Seed;
|
|
|
|
public sealed class PuzzleGroupSeed
|
|
{
|
|
[JsonPropertyName("id")] public int Id { get; set; }
|
|
[JsonPropertyName("basic_title_text_id")] public string BasicTitleTextId { get; set; } = "";
|
|
[JsonPropertyName("puzzle_chara_id")] public int PuzzleCharaId { get; set; }
|
|
[JsonPropertyName("chara_id")] public int CharaId { get; set; }
|
|
[JsonPropertyName("sort_type")] public int SortType { get; set; }
|
|
[JsonPropertyName("difficulty_name_list")] public JsonElement DifficultyNameList { get; set; }
|
|
}
|