using System.Collections.Generic; public partial class ActTotalRechargeTempConfig : ConfigBase { // 模板编号: 奖励索引 :奖励ID private static Dictionary> infoDict = new Dictionary>(); // 模板编号 奖励索引 private static Dictionary> sortDict = new Dictionary>(); protected override void OnConfigParseCompleted() { if (!infoDict.TryGetValue(TemplateID, out var dict)) { dict = new Dictionary(); infoDict[TemplateID] = dict; } dict[AwardIndex] = AwardID; } private static void LoadSortList() { if (!sortDict.IsNullOrEmpty()) return; foreach (var kvp in infoDict) { int templateID = kvp.Key; List list = new List(kvp.Value.Keys); list.Sort(); sortDict[templateID] = list; } } public static List GetAwardIndexSortList(int templateID) { LoadSortList(); sortDict.TryGetValue(templateID, out var list); return list; } public static Dictionary GetTemplateIDDict(int templateID) { infoDict.TryGetValue(templateID, out var dict); return dict; } public static int GetID(int templateID, int awardIndex) { var dict = GetTemplateIDDict(templateID); if (dict == null) return 0; dict.TryGetValue(awardIndex, out var id); return id; } public static ActTotalRechargeTempConfig GetConfig(int templateID, int awardIndex) { int id = GetID(templateID, awardIndex); return Get(id); } }