Neue Filter nach Betreuungsart und Funktion bei Klienten bzw. Personen hinzugefügt

This commit is contained in:
2026-04-16 16:26:40 +02:00
parent 252d2f7d93
commit 17e12f959c
8 changed files with 199 additions and 28 deletions

View File

@@ -18,7 +18,7 @@ namespace BeWo.Converter
{
var showOnlyArchived = false;
var showOnlyOnlyDeleted = false;
CustomFilter customFilter = null;
IList<CustomFilter> customFilters = null;
if (values.Length >= 3)
{
@@ -29,9 +29,9 @@ namespace BeWo.Converter
if (values.Length >= 4)
{
if (values[3] is CustomFilter)
if (values[3] is IList<CustomFilter>)
{
customFilter = values[3] as CustomFilter;
customFilters = values[3] as IList<CustomFilter>;
}
if (values.Length >= 5)
@@ -51,14 +51,15 @@ namespace BeWo.Converter
var ret = (values[0] as IEnumerable<IFilterableDC>).Where(
dc =>
{
var filterRelevants = dc.FilterRelevants != null && dc.FilterRelevants.ContainsAll(lFilter) && (customFilter == null || customFilter.IsValid(dc));
var filterRelevants = dc.FilterRelevants != null && dc.FilterRelevants.ContainsAll(lFilter);
var aktiv = (!showOnlyOnlyDeleted && !showOnlyArchived && dc.ActivationType == ActivationTypeId.Active);
var archiviert = ((showOnlyArchived && dc.ActivationType == ActivationTypeId.Archived));
var geloescht = ((!showOnlyArchived && showOnlyOnlyDeleted && dc.ActivationType == ActivationTypeId.Deleted));
var geloeschtOderArchiviert = (showOnlyArchived && dc.ActivationType == ActivationTypeId.Archived || showOnlyOnlyDeleted && dc.ActivationType == ActivationTypeId.Deleted) && filterRelevants;
var ergebnis = (aktiv || archiviert || geloescht || geloeschtOderArchiviert) && filterRelevants;
var customerFilterValid = (customFilters == null || customFilters.All(f => f.IsValid(dc)));
var ergebnis = (aktiv || archiviert || geloescht || geloeschtOderArchiviert) && filterRelevants && customerFilterValid;
return ergebnis;
});