【优化】当excel字段行包含非法tag如group时,打印错误

main
walon 2022-01-19 18:12:12 +08:00
parent 8cd9e5f247
commit 36df70bffb
2 changed files with 18 additions and 1 deletions

View File

@ -598,7 +598,7 @@ namespace Luban.Job.Cfg.DataSources.Excel
fields.Add(subTitle.Name, new FieldInfo() fields.Add(subTitle.Name, new FieldInfo()
{ {
Name = subTitle.Name, Name = subTitle.Name,
Tags = title.Tags, Tags = subTitle.Tags,
Type = typeRow[subTitle.FromIndex].Value?.ToString() ?? "", Type = typeRow[subTitle.FromIndex].Value?.ToString() ?? "",
Desc = desc, Desc = desc,
}); });

View File

@ -62,6 +62,14 @@ namespace Luban.Job.Cfg.DataSources.Excel
} }
} }
private static HashSet<string> s_validTags = new HashSet<string>()
{
"sep",
"non_empty",
"multi_rows",
"default",
};
public void Init() public void Init()
{ {
SortSubTitles(); SortSubTitles();
@ -73,6 +81,15 @@ namespace Luban.Job.Cfg.DataSources.Excel
NonEmpty = Tags.TryGetValue("non_empty", out var ne) && ne == "1"; NonEmpty = Tags.TryGetValue("non_empty", out var ne) && ne == "1";
SelfMultiRows = Tags.TryGetValue("multi_rows", out var v2) && (v2 == "1" || v2 == "true"); SelfMultiRows = Tags.TryGetValue("multi_rows", out var v2) && (v2 == "1" || v2 == "true");
Default = Tags.TryGetValue("default", out var v3) ? v3 : null; Default = Tags.TryGetValue("default", out var v3) ? v3 : null;
foreach (var (key, value) in Tags)
{
if (!s_validTags.Contains(key))
{
throw new Exception($"excel标题列:'{Name}' 不支持tag:'{key}',请移到##type行");
}
}
if (SubTitleList.Count > 0) if (SubTitleList.Count > 0)
{ {
if (Root) if (Root)