[chore:] introducing KasPerson.id (refsid remains but isn't used in the mgmt-backend anymore)
This commit is contained in:
@@ -16,7 +16,8 @@ public class CombineAddresses
|
||||
_progress = progressWindow;
|
||||
}
|
||||
|
||||
public async Task<(KasAddressList,KasAddressList)> Perform(List<KasAddressList> address_lists, string type, bool? exportUnused)
|
||||
public async Task<(KasAddressList, KasAddressList)> Perform(List<KasAddressList> address_lists, string type,
|
||||
bool? exportUnused)
|
||||
{
|
||||
var res = await Task.Run(async () =>
|
||||
{
|
||||
@@ -48,7 +49,7 @@ public class CombineAddresses
|
||||
// }
|
||||
// });
|
||||
// return result;
|
||||
return (null,null);
|
||||
return (null, null);
|
||||
}
|
||||
|
||||
|
||||
@@ -91,11 +92,12 @@ public class CombineAddresses
|
||||
return false;
|
||||
}
|
||||
|
||||
public async Task<(KasAddressList,KasAddressList)> Difference(List<KasAddressList> address_lists, bool? return_unused,
|
||||
public async Task<(KasAddressList, KasAddressList)> Difference(List<KasAddressList> address_lists,
|
||||
bool? return_unused,
|
||||
Progress? progress = null)
|
||||
{
|
||||
if (address_lists == null || address_lists.Count == 0)
|
||||
return (new KasAddressList(KasAddressList.GenerateName("difference")),null);
|
||||
return (new KasAddressList(KasAddressList.GenerateName("difference")), null);
|
||||
|
||||
progress ??= new Progress
|
||||
{
|
||||
@@ -117,26 +119,28 @@ public class CombineAddresses
|
||||
result.KasPersons.Add(person);
|
||||
else
|
||||
second_result.KasPersons.Add(person);
|
||||
|
||||
|
||||
|
||||
progress.Increment();
|
||||
if (progress.LogAction == null) continue;
|
||||
var logMessage =
|
||||
$"Person mit refsid {person.refsid} verglichen mit {restUnion.Count} Personen des Restes.";
|
||||
$"Person mit id {person.id} verglichen mit {restUnion.Count} Personen des Restes.";
|
||||
await Dispatcher.UIThread.InvokeAsync(() => progress.LogAction?.Invoke(logMessage));
|
||||
}
|
||||
if(return_unused == true) return (result,second_result);
|
||||
else return (result, null);
|
||||
|
||||
if (return_unused == true) return (result, second_result);
|
||||
return (result, null);
|
||||
}
|
||||
|
||||
|
||||
public async Task<(KasAddressList,KasAddressList)> Union(List<KasAddressList> address_lists, bool? return_unused, Progress progress = null)
|
||||
public async Task<(KasAddressList, KasAddressList)> Union(List<KasAddressList> address_lists, bool? return_unused,
|
||||
Progress progress = null)
|
||||
{
|
||||
var result = new KasAddressList(KasAddressList.GenerateName("union"));
|
||||
var second_result = new KasAddressList(KasAddressList.GenerateName("union_rest"));
|
||||
|
||||
if (address_lists == null || address_lists.Count == 0)
|
||||
return (result,null);
|
||||
return (result, null);
|
||||
|
||||
var total = address_lists.Sum(l => l.KasPersons.Count);
|
||||
var processed = 0;
|
||||
@@ -152,7 +156,7 @@ public class CombineAddresses
|
||||
processed++;
|
||||
var percent = processed / (double)total * 100;
|
||||
var logMessage =
|
||||
$"{percent:F1}%: Person mit {person.refsid} hinzugefügt (aktuell {result.KasPersons.Count} Einträge)";
|
||||
$"{percent:F1}%: Person mit {person.id} hinzugefügt (aktuell {result.KasPersons.Count} Einträge)";
|
||||
|
||||
if (progress == null) continue;
|
||||
if (Dispatcher.UIThread.CheckAccess())
|
||||
@@ -161,8 +165,8 @@ public class CombineAddresses
|
||||
Dispatcher.UIThread.Post(() => progress.LogAction?.Invoke(logMessage));
|
||||
}
|
||||
|
||||
if(return_unused == true) return (result,second_result);
|
||||
else return (result, null);
|
||||
if (return_unused == true) return (result, second_result);
|
||||
return (result, null);
|
||||
}
|
||||
|
||||
|
||||
@@ -171,13 +175,14 @@ public class CombineAddresses
|
||||
return null;
|
||||
}
|
||||
|
||||
public async Task<(KasAddressList,KasAddressList)> Intersection(List<KasAddressList> address_lists, bool? return_unused, Progress progress = null)
|
||||
public async Task<(KasAddressList, KasAddressList)> Intersection(List<KasAddressList> address_lists,
|
||||
bool? return_unused, Progress progress = null)
|
||||
{
|
||||
var result = new KasAddressList(KasAddressList.GenerateName("intersection"));
|
||||
var second_result = new KasAddressList(KasAddressList.GenerateName("intersection_rest"));
|
||||
|
||||
if (address_lists == null || address_lists.Count == 0)
|
||||
return (result,null);
|
||||
return (result, null);
|
||||
|
||||
// Nur die erste Liste als Ausgangspunkt verwenden
|
||||
var baseList = address_lists[0];
|
||||
@@ -200,7 +205,7 @@ public class CombineAddresses
|
||||
processed++;
|
||||
var percent = processed / (double)total * 100;
|
||||
var logMessage =
|
||||
$"{percent:F1}%: Person mit {person.refsid} geprüft – {(isInAll ? "in allen enthalten" : "nicht überall vorhanden")}";
|
||||
$"{percent:F1}%: Person mit {person.id} geprüft – {(isInAll ? "in allen enthalten" : "nicht überall vorhanden")}";
|
||||
|
||||
// Sicher und nicht blockierend loggen
|
||||
if (progress != null)
|
||||
@@ -212,12 +217,13 @@ public class CombineAddresses
|
||||
}
|
||||
}
|
||||
|
||||
if(return_unused == true) return (result,second_result);
|
||||
else return (result, null);
|
||||
if (return_unused == true) return (result, second_result);
|
||||
return (result, null);
|
||||
}
|
||||
|
||||
|
||||
public async Task<(KasAddressList,KasAddressList)> SymmetricDifference(List<KasAddressList> address_lists, bool? return_unused, Progress progress = null)
|
||||
public async Task<(KasAddressList, KasAddressList)> SymmetricDifference(List<KasAddressList> address_lists,
|
||||
bool? return_unused, Progress progress = null)
|
||||
{
|
||||
var result = new KasAddressList(KasAddressList.GenerateName("symmetric_difference"));
|
||||
var second_result = new KasAddressList(KasAddressList.GenerateName("symmetric_rest"));
|
||||
@@ -251,7 +257,7 @@ public class CombineAddresses
|
||||
processed++;
|
||||
var percent = processed / (double)total * 100;
|
||||
var logMessage =
|
||||
$"{percent:F1}%: Person mit {person.refsid} verarbeitet (Zwischengröße {allPersons.Count})";
|
||||
$"{percent:F1}%: Person mit {person.id} verarbeitet (Zwischengröße {allPersons.Count})";
|
||||
|
||||
if (progress != null)
|
||||
{
|
||||
@@ -269,8 +275,8 @@ public class CombineAddresses
|
||||
else
|
||||
second_result.KasPersons.Add(person);
|
||||
|
||||
if(return_unused == true) return (result,second_result);
|
||||
else return (result, null);
|
||||
if (return_unused == true) return (result, second_result);
|
||||
return (result, null);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user