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 Sex,
|
||||||
char First);
|
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,
|
private record PersonExport(long Id,
|
||||||
ReadOnlyCollection<string> Lines,
|
ReadOnlyCollection<string> Lines,
|
||||||
string PersonKeyFormatted,
|
string PersonKeyFormatted,
|
||||||
@ -283,6 +288,8 @@ internal static partial class HelperGenealogicalDataCommunication
|
|||||||
{
|
{
|
||||||
for (int k = j; k < lines.Count; k++)
|
for (int k = j; k < lines.Count; k++)
|
||||||
{
|
{
|
||||||
|
if (lines[k][0] == '1')
|
||||||
|
break;
|
||||||
seven = lines[k][..7];
|
seven = lines[k][..7];
|
||||||
if (seven != "3 CONT ")
|
if (seven != "3 CONT ")
|
||||||
break;
|
break;
|
||||||
@ -335,6 +342,8 @@ internal static partial class HelperGenealogicalDataCommunication
|
|||||||
{
|
{
|
||||||
for (int k = j; k < lines.Count; k++)
|
for (int k = j; k < lines.Count; k++)
|
||||||
{
|
{
|
||||||
|
if (lines[k][0] == '1')
|
||||||
|
break;
|
||||||
seven = lines[k][..7];
|
seven = lines[k][..7];
|
||||||
if (seven != "3 CONT ")
|
if (seven != "3 CONT ")
|
||||||
break;
|
break;
|
||||||
@ -372,6 +381,8 @@ internal static partial class HelperGenealogicalDataCommunication
|
|||||||
{
|
{
|
||||||
for (int k = j; k < lines.Count; k++)
|
for (int k = j; k < lines.Count; k++)
|
||||||
{
|
{
|
||||||
|
if (lines[k][0] == '1')
|
||||||
|
break;
|
||||||
seven = lines[k][..7];
|
seven = lines[k][..7];
|
||||||
if (seven != "3 CONT ")
|
if (seven != "3 CONT ")
|
||||||
break;
|
break;
|
||||||
@ -708,8 +719,9 @@ internal static partial class HelperGenealogicalDataCommunication
|
|||||||
return new(results);
|
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;
|
long personKey;
|
||||||
char[] ageCollection;
|
char[] ageCollection;
|
||||||
Dictionary<long, string> idToName = new();
|
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, "_"));
|
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));
|
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)
|
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);
|
logger.LogInformation("{old} {days} day(s) => {new}", 638258293638438812, 4, new DateTime(638258293638438812).AddDays(4.0001).Ticks);
|
||||||
GenealogicalDataCommunicationCollections genealogicalDataCommunicationCollections = GetGenealogicalDataCommunicationCollections(input);
|
GenealogicalDataCommunicationCollections genealogicalDataCommunicationCollections = GetGenealogicalDataCommunicationCollections(input);
|
||||||
ReadOnlyDictionary<long, Person> people = GetPeople(input, genealogicalDataCommunicationCollections);
|
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);
|
Collections collections = GetCollections(appSettings, people);
|
||||||
if (idToPersonKey.Count != people.Count || idToPersonKey.Count != idToName.Count || idToPersonKey.Count != idToGivenName.Count)
|
if (collections.IdToPersonKey.Count != people.Count || collections.IdToPersonKey.Count != collections.IdToName.Count || collections.IdToPersonKey.Count != collections.IdToGivenName.Count)
|
||||||
throw new NotSupportedException();
|
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);
|
WriteJsonFiles(appSettings, input, genealogicalDataCommunicationCollections, people, familyCollection);
|
||||||
WriteGenealogicalDataCommunicationCollections(logger, input, genealogicalDataCommunicationCollections, people);
|
WriteGenealogicalDataCommunicationCollections(logger, input, genealogicalDataCommunicationCollections, people);
|
||||||
if (input.Destination is not null)
|
if (input.Destination is not null)
|
||||||
ExportFamilies(appSettings, input, familyCollection);
|
ExportFamilies(appSettings, input, familyCollection);
|
||||||
if (input.Destination is not null)
|
if (input.Destination is not null)
|
||||||
Export(input, ticks, idToName, personExportCollection);
|
Export(input, ticks, collections.IdToName, collections.PersonExportCollection);
|
||||||
if (string.IsNullOrEmpty(input.GenealogicalDataCommunicationFile))
|
if (string.IsNullOrEmpty(input.GenealogicalDataCommunicationFile))
|
||||||
logger.LogInformation("{file} is null?", input.GenealogicalDataCommunicationDirectory);
|
logger.LogInformation("{file} is null?", input.GenealogicalDataCommunicationDirectory);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user