using System.Collections.Generic;
|
|
public partial class ActSignAwardConfig : ConfigBase<int, ActSignAwardConfig>
|
{
|
// 模板编号: 第X天从1开始 :配置ID
|
private static Dictionary<int, Dictionary<int, int>> infoDict = new Dictionary<int, Dictionary<int, int>>();
|
// 模板编号 第X天从1开始
|
private static Dictionary<int, List<int>> sortDict = new Dictionary<int, List<int>>();
|
protected override void OnConfigParseCompleted()
|
{
|
if (!infoDict.TryGetValue(TemplateID, out var dict))
|
{
|
dict = new Dictionary<int, int>();
|
infoDict[TemplateID] = dict;
|
}
|
dict[DayNum] = ID;
|
}
|
|
private static void LoadSortList()
|
{
|
if (!sortDict.IsNullOrEmpty()) return;
|
foreach (var kvp in infoDict)
|
{
|
int templateID = kvp.Key;
|
List<int> list = new List<int>(kvp.Value.Keys);
|
list.Sort();
|
sortDict[templateID] = list;
|
}
|
}
|
public static List<int> GetDayNumSortList(int templateID)
|
{
|
LoadSortList();
|
sortDict.TryGetValue(templateID, out var list);
|
return list;
|
}
|
public static Dictionary<int, int> GetTemplateIDDict(int templateID)
|
{
|
infoDict.TryGetValue(templateID, out var dict);
|
return dict;
|
}
|
|
public static int GetID(int templateID, int dayNum)
|
{
|
var dict = GetTemplateIDDict(templateID);
|
if (dict == null) return 0;
|
|
dict.TryGetValue(dayNum, out var id);
|
return id;
|
}
|
|
public static ActSignAwardConfig GetConfig(int templateID, int dayNum)
|
{
|
int id = GetID(templateID, dayNum);
|
return Get(id);
|
}
|
|
}
|