diff --git a/Compare/Compare.csproj b/Compare/Compare.csproj
index 57e0320..69bbfad 100644
--- a/Compare/Compare.csproj
+++ b/Compare/Compare.csproj
@@ -35,8 +35,8 @@
-
-
+
+
diff --git a/Date-Group/Date-Group.csproj b/Date-Group/Date-Group.csproj
index 015da35..b4bccbc 100644
--- a/Date-Group/Date-Group.csproj
+++ b/Date-Group/Date-Group.csproj
@@ -34,9 +34,9 @@
-
+
-
+
diff --git a/Delete-By-Distinct/Delete-By-Distinct.csproj b/Delete-By-Distinct/Delete-By-Distinct.csproj
index c022849..1ccc2e3 100644
--- a/Delete-By-Distinct/Delete-By-Distinct.csproj
+++ b/Delete-By-Distinct/Delete-By-Distinct.csproj
@@ -35,8 +35,8 @@
-
-
+
+
diff --git a/Delete-By-Relative/Delete-By-Relative.csproj b/Delete-By-Relative/Delete-By-Relative.csproj
index 373532c..15a9d7d 100644
--- a/Delete-By-Relative/Delete-By-Relative.csproj
+++ b/Delete-By-Relative/Delete-By-Relative.csproj
@@ -35,8 +35,8 @@
-
-
+
+
diff --git a/Duplicate-Search/Duplicate-Search.csproj b/Duplicate-Search/Duplicate-Search.csproj
index 513396b..4a76ce8 100644
--- a/Duplicate-Search/Duplicate-Search.csproj
+++ b/Duplicate-Search/Duplicate-Search.csproj
@@ -35,8 +35,8 @@
-
-
+
+
diff --git a/Instance/Instance.csproj b/Instance/Instance.csproj
index 2c3217e..f83495a 100644
--- a/Instance/Instance.csproj
+++ b/Instance/Instance.csproj
@@ -34,9 +34,9 @@
-
+
-
+
diff --git a/Instance/Models/_F_Random.cs b/Instance/Models/_F_Random.cs
index 9351862..d7a4dae 100644
--- a/Instance/Models/_F_Random.cs
+++ b/Instance/Models/_F_Random.cs
@@ -67,6 +67,7 @@ internal class F_Random
List? collection;
string dateFormat = "MM-dd";
List relativePaths = new();
+ List distinctCollection = new();
DateTime dateTime = new(2024, 1, 1); //Leap year
Dictionary> dayToRelativePaths = Get(personKeyToIds, mappingCollection, dateFormat);
string fRandomCollectionDirectory = Property.Models.Stateless.IResult.GetResultsDateGroupDirectory(configuration, nameof(F_Random), "[]");
@@ -75,11 +76,14 @@ internal class F_Random
File.Delete(file);
foreach (Shared.Models.Mapping mapping in mappingCollection)
{
+ if (distinctCollection.Contains(mapping.MappingFromItem.Id))
+ continue;
if (mapping.MappingFromItem.ImageFileHolder.DirectoryName is null)
continue;
if (mapping.MappingFromFilter.IsIgnoreRelativePath is not null && mapping.MappingFromFilter.IsIgnoreRelativePath.Value)
continue;
relativePaths.Add(mapping.MappingFromItem.RelativePath);
+ distinctCollection.Add(mapping.MappingFromItem.Id);
}
if (relativePaths.Any())
{
diff --git a/Map/Models/MapLogic.cs b/Map/Models/MapLogic.cs
index 6f3eb9b..5bb15dc 100644
--- a/Map/Models/MapLogic.cs
+++ b/Map/Models/MapLogic.cs
@@ -974,16 +974,21 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
if (_Configuration is null)
throw new NullReferenceException(nameof(_Configuration));
(int, FileHolder, int, string, string, string, string)[] results;
+ int count = 0;
+ int group = 65;
string checkFile;
string directory;
string? directoryName;
string personDirectory;
string personKeyFormatted;
+ List distinctCollection = new();
bool usePersonKeyAndDeterministicHashCodeKey = false;
List personKeyFormattedCollection = GetPersonKeyFormattedCollection(jLinks, a2PeopleContentDirectory, personContainers, personKeyToIds);
List<(int Id, FileHolder ImageFileHolder, int ApproximateYears, string PersonKeyFormatted, string CheckFile, string Directory, string PersonDirectory)> collection = new();
foreach (Mapping mapping in mappingCollection)
{
+ if (distinctCollection.Contains(mapping.MappingFromItem.Id))
+ continue;
directoryName = Path.GetDirectoryName(mapping.MappingFromItem.RelativePath);
if (directoryName is null)
throw new NotSupportedException();
@@ -1002,7 +1007,12 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
continue;
if (!usePersonKeyAndDeterministicHashCodeKey)
{
- directory = Path.Combine(_EDistanceContentTicksDirectory, "Images");
+ if (count > 499)
+ {
+ count = 0;
+ group += 1;
+ }
+ directory = Path.Combine(_EDistanceContentTicksDirectory, ((char)group).ToString());
personDirectory = Path.Combine(directory, mapping.MappingFromPerson.DisplayDirectoryName);
checkFile = Path.Combine(directory, $"{mapping.MappingFromItem.Id}{mapping.MappingFromItem.ImageFileHolder.ExtensionLowered}");
}
@@ -1013,6 +1023,8 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
checkFile = Path.Combine(directory, $"{mapping.MappingFromLocation.DeterministicHashCodeKey}{mapping.MappingFromItem.ImageFileHolder.ExtensionLowered}");
}
collection.Add(new(mapping.MappingFromItem.Id, mapping.MappingFromItem.ImageFileHolder, mapping.MappingFromPerson.ApproximateYears.Value, personKeyFormatted, directory, personDirectory, checkFile));
+ distinctCollection.Add(mapping.MappingFromItem.Id);
+ count += 1;
}
results = (from l in collection orderby l.ApproximateYears descending, l.PersonKeyFormatted descending select l).ToArray();
return results;
@@ -1074,15 +1086,11 @@ public class MapLogic : Shared.Models.Methods.IMapLogic
if (_Configuration is null)
throw new NullReferenceException(nameof(_Configuration));
SaveContainer? saveContainer;
- List distinctCollection = new();
List saveContainers = new();
BeforeSaveFilteredOriginalImagesFromJLinks(jLinks, a2PeopleContentDirectory);
(int, FileHolder, int, string, string, string, string)[] collection = GetCollectionForSaveFilteredOriginalImagesFromJLinks(jLinks, a2PeopleContentDirectory, personContainers, mappingCollection, personKeyToIds);
foreach ((int id, FileHolder imageFileHolder, int approximateYears, string personKeyFormatted, string directory, string personDirectory, string checkFile) in collection)
{
- if (distinctCollection.Contains(id))
- continue;
- distinctCollection.Add(id);
saveContainer = new(personDirectory);
saveContainers.Add(saveContainer);
saveContainer = new(imageFileHolder, checkFile, directory);
diff --git a/PrepareForOld/PrepareForOld.csproj b/PrepareForOld/PrepareForOld.csproj
index 7623a4f..4b019fd 100644
--- a/PrepareForOld/PrepareForOld.csproj
+++ b/PrepareForOld/PrepareForOld.csproj
@@ -43,8 +43,8 @@
-
-
+
+