week
This commit is contained in:
parent
4de1468f51
commit
7733ac1328
@ -1,4 +1,5 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Globalization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models.Stateless.Methods;
|
||||
|
||||
@ -407,7 +408,10 @@ internal abstract class GenealogicalDataCommunication
|
||||
List<string> lines = new();
|
||||
List<long> distinct = new();
|
||||
List<string> individualsLines;
|
||||
DateTime dateTime = new(ticks);
|
||||
Models.PersonBirthday personBirthday;
|
||||
Calendar calendar = new CultureInfo("en-US").Calendar;
|
||||
string weekOfYear = calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00");
|
||||
lines.AddRange(headerLines);
|
||||
foreach (Models.PersonContainer personContainer in personContainers)
|
||||
{
|
||||
@ -468,7 +472,7 @@ internal abstract class GenealogicalDataCommunication
|
||||
for (int i = 0; i < familyGroupLines.Count; i++)
|
||||
lines.AddRange(familyGroupLines[i]);
|
||||
lines.AddRange(footerLines);
|
||||
File.WriteAllLines(Path.Combine(a2PeopleContentDirectory, $"{ticks}.ged"), lines);
|
||||
File.WriteAllLines(Path.Combine(a2PeopleContentDirectory, $"{dateTime.Year}-ged", $"{dateTime.Year}-Week-{weekOfYear}", $"{ticks}.ged"), lines);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
@ -9,7 +10,7 @@ internal abstract class MarkDown
|
||||
|
||||
// ...
|
||||
|
||||
internal static void WriteFile(string personKeyFormatted, long ticks, Models.PersonName personName, List<GenealogicalDataCommunicationRelation> genealogicalDataCommunicationRelations, string a2PeopleContentDirectory, ReadOnlyDictionary<string, string> personKeyFormattedToPersonFullName, ReadOnlyDictionary<int, List<GenealogicalDataCommunicationRelation>> familyIndexToCollection, bool isDefaultName, Models.GenealogicalDataCommunication genealogicalDataCommunication, bool first)
|
||||
internal static void WriteFile(string personKeyFormatted, long ticks, Models.PersonName personName, List<GenealogicalDataCommunicationRelation> genealogicalDataCommunicationRelations, string a2PeopleContentDirectory, Calendar calendar, ReadOnlyDictionary<string, string> personKeyFormattedToPersonFullName, ReadOnlyDictionary<int, List<GenealogicalDataCommunicationRelation>> familyIndexToCollection, bool isDefaultName, Models.GenealogicalDataCommunication genealogicalDataCommunication, bool first)
|
||||
{
|
||||
string decade;
|
||||
string jrOrSr;
|
||||
@ -22,9 +23,10 @@ internal abstract class MarkDown
|
||||
const string child = "CHIL";
|
||||
const string husband = "HUSB";
|
||||
const string person = "person";
|
||||
DateTime dateTime = new(ticks);
|
||||
string fullName = PersonName.GetFullName(personName);
|
||||
List<GenealogicalDataCommunicationRelation>? relations;
|
||||
string now = DateTime.Now.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
|
||||
string now = dateTime.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss.fffZ");
|
||||
string lowerHyphenFullName = $"{Regex.Replace(fullName.ToLower(), "[^a-z0-9-]", "-")}";
|
||||
string code = IPersonBirthday.GetHour(genealogicalDataCommunication.Death is null, genealogicalDataCommunication.Sex).ToString("00");
|
||||
List<string> lines = new()
|
||||
@ -143,7 +145,8 @@ internal abstract class MarkDown
|
||||
if (hasRelation)
|
||||
lines.Add(string.Empty);
|
||||
string text = string.Join(Environment.NewLine, lines);
|
||||
string directory = Path.Combine(a2PeopleContentDirectory, $"content-{ticks}", person, personKeyFormatted[..3]);
|
||||
string weekOfYear = calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00");
|
||||
string directory = Path.Combine(a2PeopleContentDirectory, $"{dateTime.Year}-Markdown", $"{dateTime.Year}-Week-{weekOfYear}", ticks.ToString(), person, personKeyFormatted[..3]);
|
||||
if (!Directory.Exists(directory))
|
||||
_ = Directory.CreateDirectory(directory);
|
||||
_ = IPath.WriteAllText(Path.Combine(directory, $"{lowerHyphenFullName}.md"), text, updateDateWhenMatches: false, compareBeforeWrite: true);
|
||||
|
@ -1,4 +1,5 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Globalization;
|
||||
|
||||
namespace View_by_Distance.Shared.Models.Stateless.Methods;
|
||||
|
||||
@ -400,6 +401,7 @@ internal abstract class PersonContainer
|
||||
bool verify = true;
|
||||
const int zero = 0;
|
||||
string personKeyFormatted;
|
||||
Calendar calendar = new CultureInfo("en-US").Calendar;
|
||||
Models.GenealogicalDataCommunication genealogicalDataCommunication;
|
||||
GenealogicalDataCommunicationLines? genealogicalDataCommunicationLines;
|
||||
ReadOnlyDictionary<string, string> personKeyFormattedToPersonFullName = GetPersonKeyFormattedToPersonFullName(personBirthdayFormat, personContainers);
|
||||
@ -429,7 +431,7 @@ internal abstract class PersonContainer
|
||||
if (genealogicalDataCommunication.Death is null && personContainer.PersonDirectory.Status == 'D' || genealogicalDataCommunication.Death is not null && personContainer.PersonDirectory.Status == 'A')
|
||||
continue;
|
||||
GenealogicalDataCommunication.WriteFile(personKeyFormatted, personContainer.Person.Name, personContainer.GenealogicalDataCommunicationRelationIndividualsLines, isDefaultName, directory, genealogicalDataCommunication, verify, first.Value);
|
||||
MarkDown.WriteFile(personKeyFormatted, ticks, personContainer.Person.Name, genealogicalDataCommunicationRelations, a2PeopleContentDirectory, personKeyFormattedToPersonFullName, familyIndexToCollection, isDefaultName, genealogicalDataCommunication, first.Value);
|
||||
MarkDown.WriteFile(personKeyFormatted, ticks, personContainer.Person.Name, genealogicalDataCommunicationRelations, a2PeopleContentDirectory, calendar, personKeyFormattedToPersonFullName, familyIndexToCollection, isDefaultName, genealogicalDataCommunication, first.Value);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4,6 +4,7 @@ using Phares.Shared;
|
||||
using Serilog;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Diagnostics;
|
||||
using System.Globalization;
|
||||
using System.Reflection;
|
||||
using View_by_Distance.Shared.Models;
|
||||
using View_by_Distance.Shared.Models.Stateless.Methods;
|
||||
@ -85,7 +86,7 @@ public partial class UnitTestHardCoded
|
||||
[TestMethod]
|
||||
public void TestMethodDel()
|
||||
{
|
||||
string directory = @"F:\Tmp\Phares\Compare\Images 2022-09-15 - 7390c13 - III - Results\E) Distance\2022-09-15\7680 x 4320\7680x4320 - Hog - Large\()\(637992984751968513)";
|
||||
string directory = "F:/Tmp/Phares/Compare/Images 2022-09-15 - 7390c13 - III - Results/E) Distance/2022-09-15/7680 x 4320/7680x4320 - Hog - Large/()/(637992984751968513)";
|
||||
if (Directory.Exists(Path.GetPathRoot(directory)) && Directory.Exists(directory))
|
||||
{
|
||||
for (int i = 1; i < 11; i++)
|
||||
@ -98,7 +99,7 @@ public partial class UnitTestHardCoded
|
||||
[TestMethod]
|
||||
public void TestMethodGetApproximateYears()
|
||||
{
|
||||
string personDisplayDirectory = @"D:\1-Images-A\Images-dd514b88-Results\A2) People\dd514b88\{}\^\Sydney Dupray^9";
|
||||
string personDisplayDirectory = "D:/1-Images-A/Images-dd514b88-Results/A2) People/dd514b88/{}/^/Sydney Dupray^9";
|
||||
if (Directory.Exists(Directory.GetDirectoryRoot(personDisplayDirectory)) && Directory.Exists(personDisplayDirectory))
|
||||
{
|
||||
char numberSign = '#';
|
||||
@ -122,7 +123,7 @@ public partial class UnitTestHardCoded
|
||||
[TestMethod]
|
||||
public void TestMethodDel2()
|
||||
{
|
||||
string directory = @"F:\Tmp\Phares\Compare\Images 2022-09-15 - 7390c13 - III - Results\E) Distance\2022-09-15\7680 x 4320\7680x4320 - Hog - Large\()\(637992984751968513)";
|
||||
string directory = "F:/Tmp/Phares/Compare/Images 2022-09-15 - 7390c13 - III - Results/E) Distance/2022-09-15/7680 x 4320/7680x4320 - Hog - Large/()/(637992984751968513)";
|
||||
if (Directory.Exists(Path.GetPathRoot(directory)) && Directory.Exists(directory))
|
||||
{
|
||||
for (int i = 1; i < 11; i++)
|
||||
@ -201,7 +202,7 @@ public partial class UnitTestHardCoded
|
||||
[TestMethod]
|
||||
public void TestMethodRenameAbandoned()
|
||||
{
|
||||
string directory = @"D:\1-Images-A\Images-dd514b88-Results\A2) People\dd514b88\{}\!\Abandoned";
|
||||
string directory = "D:/1-Images-A/Images-dd514b88-Results/A2) People/dd514b88/{}/!/Abandoned";
|
||||
if (Directory.Exists(Path.GetPathRoot(directory)) && Directory.Exists(directory))
|
||||
{
|
||||
string checkFile;
|
||||
@ -221,7 +222,7 @@ public partial class UnitTestHardCoded
|
||||
[TestMethod]
|
||||
public void TestMethodRenameDelete()
|
||||
{
|
||||
string directory = @"D:\1-Images-A\Images-dd514b88-Results\A) Property\dd514b88\{}";
|
||||
string directory = "D:/1-Images-A/Images-dd514b88-Results/A) Property/dd514b88/{}";
|
||||
if (Directory.Exists(Path.GetPathRoot(directory)) && Directory.Exists(directory))
|
||||
{
|
||||
string checkFile;
|
||||
@ -241,7 +242,7 @@ public partial class UnitTestHardCoded
|
||||
[TestMethod]
|
||||
public void TestMethodRenameOld()
|
||||
{
|
||||
string directory = @"D:\2-Images-B\Not-Copy-Copy-dd514b88-Results\E) Distance\dd514b88\()";
|
||||
string directory = "D:/2-Images-B/Not-Copy-Copy-dd514b88-Results/E) Distance/dd514b88/()";
|
||||
if (Directory.Exists(Path.GetPathRoot(directory)) && Directory.Exists(directory))
|
||||
{
|
||||
string checkFile;
|
||||
@ -756,9 +757,9 @@ public partial class UnitTestHardCoded
|
||||
[TestMethod]
|
||||
public void TestMethodRename()
|
||||
{
|
||||
// string directory = @"D:\2-Images-B\Not-Copy-Copy-dd514b88";
|
||||
string directory = @"D:\1-Images-A\Images-dd514b88";
|
||||
// string directory = @"D:\2-Images-B\Not-Copy-Copy-dd514b88";
|
||||
// string directory = "D:/2-Images-B/Not-Copy-Copy-dd514b88";
|
||||
string directory = "D:/1-Images-A/Images-dd514b88";
|
||||
// string directory = "D:/2-Images-B/Not-Copy-Copy-dd514b88";
|
||||
if (Directory.Exists(Path.GetPathRoot(directory)) && Directory.Exists(directory))
|
||||
{
|
||||
string[] directories = Directory.GetDirectories(directory, "*;*", SearchOption.AllDirectories);
|
||||
@ -775,7 +776,7 @@ public partial class UnitTestHardCoded
|
||||
[TestMethod]
|
||||
public void TestMethodRenameForUnkown()
|
||||
{
|
||||
string directory = @"D:\1-Images-A\Images-dd514b88-Results\E) Distance\dd514b88\(RectInt-2023-06-19-less-0.99)";
|
||||
string directory = "D:/1-Images-A/Images-dd514b88-Results/E) Distance/dd514b88/(RectInt-2023-06-19-less-0.99)";
|
||||
if (Directory.Exists(Path.GetPathRoot(directory)) && Directory.Exists(directory))
|
||||
{
|
||||
string[] files = Directory.GetFiles(directory, "*.unk", SearchOption.AllDirectories);
|
||||
@ -785,4 +786,34 @@ public partial class UnitTestHardCoded
|
||||
NonThrowTryCatch();
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void TestMethodRenameForTicks()
|
||||
{
|
||||
string directory = "D:/1-Images-A/Images-dd514b88-Results/A2) People/dd514b88/([])/ged";
|
||||
if (Directory.Exists(Path.GetPathRoot(directory)) && Directory.Exists(directory))
|
||||
{
|
||||
string checkName;
|
||||
DateTime dateTime;
|
||||
string weekOfYear;
|
||||
string checkDirectoy;
|
||||
Calendar calendar = new CultureInfo("en-US").Calendar;
|
||||
string[] files = Directory.GetFiles(directory, "*.ged", SearchOption.TopDirectoryOnly);
|
||||
foreach (string file in files)
|
||||
{
|
||||
if (!long.TryParse(Path.GetFileNameWithoutExtension(file), out long ticks))
|
||||
continue;
|
||||
dateTime = new(ticks);
|
||||
weekOfYear = calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstDay, DayOfWeek.Sunday).ToString("00");
|
||||
checkDirectoy = Path.Combine(directory, dateTime.Year.ToString(), $"{dateTime.Year}-Week-{weekOfYear}");
|
||||
checkName = Path.Combine(checkDirectoy, Path.GetFileName(file));
|
||||
if (!Directory.Exists(checkDirectoy))
|
||||
_ = Directory.CreateDirectory(checkDirectoy);
|
||||
if (File.Exists(checkName))
|
||||
continue;
|
||||
File.Move(file, checkName);
|
||||
}
|
||||
}
|
||||
NonThrowTryCatch();
|
||||
}
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user