Bug fix for
if (lines[k][0] == '1')
This commit is contained in:
parent
213ebe7d31
commit
f99802b7f4
@ -30,6 +30,11 @@ internal static partial class HelperGenealogicalDataCommunication
|
||||
char Sex,
|
||||
char First);
|
||||
|
||||
private record Collections(ReadOnlyDictionary<long, long> IdToPersonKey,
|
||||
ReadOnlyDictionary<long, string> IdToName,
|
||||
ReadOnlyDictionary<long, string> IdToGivenName,
|
||||
ReadOnlyCollection<PersonExport> PersonExportCollection);
|
||||
|
||||
private record PersonExport(long Id,
|
||||
ReadOnlyCollection<string> Lines,
|
||||
string PersonKeyFormatted,
|
||||
@ -283,6 +288,8 @@ internal static partial class HelperGenealogicalDataCommunication
|
||||
{
|
||||
for (int k = j; k < lines.Count; k++)
|
||||
{
|
||||
if (lines[k][0] == '1')
|
||||
break;
|
||||
seven = lines[k][..7];
|
||||
if (seven != "3 CONT ")
|
||||
break;
|
||||
@ -335,6 +342,8 @@ internal static partial class HelperGenealogicalDataCommunication
|
||||
{
|
||||
for (int k = j; k < lines.Count; k++)
|
||||
{
|
||||
if (lines[k][0] == '1')
|
||||
break;
|
||||
seven = lines[k][..7];
|
||||
if (seven != "3 CONT ")
|
||||
break;
|
||||
@ -372,6 +381,8 @@ internal static partial class HelperGenealogicalDataCommunication
|
||||
{
|
||||
for (int k = j; k < lines.Count; k++)
|
||||
{
|
||||
if (lines[k][0] == '1')
|
||||
break;
|
||||
seven = lines[k][..7];
|
||||
if (seven != "3 CONT ")
|
||||
break;
|
||||
@ -708,8 +719,9 @@ internal static partial class HelperGenealogicalDataCommunication
|
||||
return new(results);
|
||||
}
|
||||
|
||||
private static (ReadOnlyDictionary<long, long>, ReadOnlyDictionary<long, string>, ReadOnlyDictionary<long, string>, ReadOnlyCollection<PersonExport>) GetCollections(AppSettings appSettings, ReadOnlyDictionary<long, Person> people)
|
||||
private static Collections GetCollections(AppSettings appSettings, ReadOnlyDictionary<long, Person> people)
|
||||
{
|
||||
Collections result;
|
||||
long personKey;
|
||||
char[] ageCollection;
|
||||
Dictionary<long, string> idToName = new();
|
||||
@ -734,7 +746,8 @@ internal static partial class HelperGenealogicalDataCommunication
|
||||
idToGivenName.Add(keyValuePair.Key, string.IsNullOrEmpty(keyValuePair.Value.Name.Given) ? WindowsFileSystem().Replace(keyValuePair.Value.Name.ForwardSlashFull, "_") : WindowsFileSystem().Replace(keyValuePair.Value.Name.Given, "_"));
|
||||
collection.Add(new(keyValuePair.Key, new(keyValuePair.Value.Lines), keyValuePair.Value.Birth.Note, ageCollection, dateTime, personKey));
|
||||
}
|
||||
return (new(idToPersonKey), new(idToName), new(idToGivenName), new(collection));
|
||||
result = new(new(idToPersonKey), new(idToName), new(idToGivenName), new(collection));
|
||||
return result;
|
||||
}
|
||||
|
||||
private static List<Family> GetFamilyCollection(ReadOnlyCollection<ReadOnlyCollection<string>> familyGroupLines, ReadOnlyDictionary<long, Person> people, ReadOnlyDictionary<long, long> idToPersonKey, ReadOnlyDictionary<long, string> idToName, ReadOnlyDictionary<long, string> idToGivenName)
|
||||
@ -1041,16 +1054,16 @@ internal static partial class HelperGenealogicalDataCommunication
|
||||
logger.LogInformation("{old} {days} day(s) => {new}", 638258293638438812, 4, new DateTime(638258293638438812).AddDays(4.0001).Ticks);
|
||||
GenealogicalDataCommunicationCollections genealogicalDataCommunicationCollections = GetGenealogicalDataCommunicationCollections(input);
|
||||
ReadOnlyDictionary<long, Person> people = GetPeople(input, genealogicalDataCommunicationCollections);
|
||||
(ReadOnlyDictionary<long, long> idToPersonKey, ReadOnlyDictionary<long, string> idToName, ReadOnlyDictionary<long, string> idToGivenName, ReadOnlyCollection<PersonExport> personExportCollection) = GetCollections(appSettings, people);
|
||||
if (idToPersonKey.Count != people.Count || idToPersonKey.Count != idToName.Count || idToPersonKey.Count != idToGivenName.Count)
|
||||
Collections collections = GetCollections(appSettings, people);
|
||||
if (collections.IdToPersonKey.Count != people.Count || collections.IdToPersonKey.Count != collections.IdToName.Count || collections.IdToPersonKey.Count != collections.IdToGivenName.Count)
|
||||
throw new NotSupportedException();
|
||||
List<Family> familyCollection = GetFamilyCollection(genealogicalDataCommunicationCollections.FamilyGroupLines, people, idToPersonKey, idToName, idToGivenName);
|
||||
List<Family> familyCollection = GetFamilyCollection(genealogicalDataCommunicationCollections.FamilyGroupLines, people, collections.IdToPersonKey, collections.IdToName, collections.IdToGivenName);
|
||||
WriteJsonFiles(appSettings, input, genealogicalDataCommunicationCollections, people, familyCollection);
|
||||
WriteGenealogicalDataCommunicationCollections(logger, input, genealogicalDataCommunicationCollections, people);
|
||||
if (input.Destination is not null)
|
||||
ExportFamilies(appSettings, input, familyCollection);
|
||||
if (input.Destination is not null)
|
||||
Export(input, ticks, idToName, personExportCollection);
|
||||
Export(input, ticks, collections.IdToName, collections.PersonExportCollection);
|
||||
if (string.IsNullOrEmpty(input.GenealogicalDataCommunicationFile))
|
||||
logger.LogInformation("{file} is null?", input.GenealogicalDataCommunicationDirectory);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user