Buildversion and FilterHelper

This commit is contained in:
Andre Beging
2025-03-28 08:55:49 +01:00
parent d11a225ffa
commit ff5fbd50bf
11 changed files with 134 additions and 88 deletions

View File

@@ -2,6 +2,7 @@
@page "/prospect"
@page "/prospects"
@using FoodsharingSiegen.Shared.Helper
@inherits FsBase
<PageTitle>Neue Foodsaver - @AppSettings.Title</PageTitle>
@@ -15,28 +16,15 @@
</Button>
@{
var filterListQ = ProspectList?.AsQueryable();
if (!string.IsNullOrWhiteSpace(Filter.Text))
{
filterListQ = filterListQ?
.Where(x =>
x.Name.Contains(Filter.Text, StringComparison.OrdinalIgnoreCase) ||
(!string.IsNullOrWhiteSpace(x.Memo) && x.Memo.Contains(Filter.Text, StringComparison.OrdinalIgnoreCase) == true) ||
x.FsId.ToString().Contains(Filter.Text, StringComparison.OrdinalIgnoreCase)).AsQueryable();
}
if (Filter.WithoutStepInBriefing)
filterListQ = filterListQ?.Where(x => x.Interactions.All(i => i.Type != InteractionType.StepInBriefing));
var filterList = filterListQ?.ToList();
var filterList = ProspectList.ApplyFilter(Filter);
}
<hr/>
<ProspectFilterControl @bind-Filter="Filter"></ProspectFilterControl>
<hr />
<h5>@(filterList?.Count ?? 0) Einträge</h5>
<h5>@(filterList.Count) Einträge</h5>
@if (filterList?.Any() == true)
@if (filterList.Any())
{
<div class="row m-0">
<Repeater Items="@filterList">

View File

@@ -80,6 +80,7 @@ namespace FoodsharingSiegen.Server.Pages
{
CannotHaveInteractions = [InteractionType.Complete, InteractionType.Verify, InteractionType.ReleasedForVerification]
};
var prospectsR = await ProspectService.GetProspectsAsync(parameter);
if (prospectsR.Success) ProspectList = prospectsR.Data;

View File

@@ -1,32 +1,20 @@
@page "/done"
@using FoodsharingSiegen.Shared.Helper
@inherits FsBase
<PageTitle>Abgeschlossene Einarbeitungen - @AppSettings.Title</PageTitle>
<h2>Abgeschlossene Einarbeitungen</h2>
@{
var filterListQ = ProspectList?.AsQueryable();
if (!string.IsNullOrWhiteSpace(Filter.Text))
{
filterListQ = filterListQ?
.Where(x =>
x.Name.Contains(Filter.Text, StringComparison.OrdinalIgnoreCase) ||
(!string.IsNullOrWhiteSpace(x.Memo) && x.Memo.Contains(Filter.Text, StringComparison.OrdinalIgnoreCase) == true) ||
x.FsId.ToString().Contains(Filter.Text, StringComparison.OrdinalIgnoreCase)).AsQueryable();
}
if (Filter.WithoutStepInBriefing)
filterListQ = filterListQ?.Where(x => x.Interactions.All(i => i.Type != InteractionType.StepInBriefing));
var filterList = filterListQ?.ToList();
var filterList = ProspectList.ApplyFilter(Filter);
}
<hr />
<ProspectFilterControl @bind-Filter="Filter"></ProspectFilterControl>
<hr />
<h5>@(filterList?.Count ?? 0) Einträge</h5>
@if (filterList?.Any() == true)
<h5>@(filterList.Count) Einträge</h5>
@if (filterList.Any())
{
<div class="row m-0">

View File

@@ -1,40 +0,0 @@
@page "/todo"
@inherits FsBase
<PageTitle>Freischalten - @AppSettings.Title</PageTitle>
<h2>Freischalten</h2>
@{
var filterListQ = ProspectList?.AsQueryable();
if (!string.IsNullOrWhiteSpace(Filter.Text))
{
filterListQ = filterListQ?
.Where(x =>
x.Name.Contains(Filter.Text, StringComparison.OrdinalIgnoreCase) ||
(!string.IsNullOrWhiteSpace(x.Memo) && x.Memo.Contains(Filter.Text, StringComparison.OrdinalIgnoreCase) == true) ||
x.FsId.ToString().Contains(Filter.Text, StringComparison.OrdinalIgnoreCase)).AsQueryable();
}
if (Filter.WithoutStepInBriefing)
filterListQ = filterListQ?.Where(x => x.Interactions.All(i => i.Type != InteractionType.StepInBriefing));
var filterList = filterListQ?.ToList();
}
<hr/>
<ProspectFilterControl @bind-Filter="Filter"></ProspectFilterControl>
<hr />
<h5>@(filterList?.Count ?? 0) Einträge</h5>
@if (filterList?.Any() == true)
{
<div class="row m-0">
<Repeater Items="@filterList">
<ProspectContainer Prospect="context" InteractionModal="InteractionModal" ProspectModal="ProspectModal" RemoveInteraction="RemoveInteraction" StateFilter="ProspectStateFilter.Verification"></ProspectContainer>
</Repeater>
</div>
}
<AddProspectModal @ref="ProspectModal" OnUpdate="OnUpdateProspect"></AddProspectModal>
<AddInteractionModal @ref="InteractionModal" OnAdd="OnAddInteraction" Users="Users"></AddInteractionModal>

View File

@@ -0,0 +1,28 @@
@page "/verify"
@using FoodsharingSiegen.Shared.Helper
@inherits FsBase
<PageTitle>Freischalten - @AppSettings.Title</PageTitle>
<h2>Freischalten</h2>
@{
var filterList = ProspectList.ApplyFilter(Filter);
}
<hr/>
<ProspectFilterControl @bind-Filter="Filter"></ProspectFilterControl>
<hr />
<h5>@(filterList.Count) Einträge</h5>
@if (filterList.Any())
{
<div class="row m-0">
<Repeater Items="@filterList">
<ProspectContainer Prospect="context" InteractionModal="InteractionModal" ProspectModal="ProspectModal" RemoveInteraction="RemoveInteraction" StateFilter="ProspectStateFilter.Verification"></ProspectContainer>
</Repeater>
</div>
}
<AddProspectModal @ref="ProspectModal" OnUpdate="OnUpdateProspect"></AddProspectModal>
<AddInteractionModal @ref="InteractionModal" OnAdd="OnAddInteraction" Users="Users"></AddInteractionModal>

View File

@@ -9,7 +9,7 @@ namespace FoodsharingSiegen.Server.Pages
/// <summary>
/// The prospects done class (a. beging, 07.02.2023)
/// </summary>
public partial class ProspectsTodo
public partial class ProspectsVerify
{
#region Dependencies