Refactor onboarding and verification workflows.

Adjusted interaction types and state filters to better streamline onboarding and verification processes. Updated UI labels, navigation, and modal dialogs to reflect new terminology and improve usability. Enhanced filtering logic and added new interaction types to support the revised process.
This commit is contained in:
Andre Beging
2025-03-27 17:12:28 +01:00
parent 572a35fd3f
commit 19796928e7
15 changed files with 148 additions and 91 deletions

View File

@@ -4,8 +4,8 @@
@inherits FsBase
<PageTitle>@AppSettings.Title - Aktuelle Einarbeitungen</PageTitle>
<h2>Aktuelle Einarbeitungen</h2>
<PageTitle>@AppSettings.Title - Neue Foodsaver</PageTitle>
<h2>Neue Foodsaver</h2>
<Button
Color="Color.Primary"
@@ -30,7 +30,7 @@
{
<div class="row m-0">
<Repeater Items="@filterList">
<ProspectContainer Prospect="context" InteractionModal="InteractionModal" ProspectModal="ProspectModal" RemoveInteraction="RemoveInteraction"></ProspectContainer>
<ProspectContainer Prospect="context" InteractionModal="InteractionModal" ProspectModal="ProspectModal" RemoveInteraction="RemoveInteraction" StateFilter="ProspectStateFilter.OnBoarding"></ProspectContainer>
</Repeater>
</div>
}

View File

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

View File

@@ -64,7 +64,7 @@ namespace FoodsharingSiegen.Server.Pages
/// </summary>
private async Task LoadProspects()
{
var parameter = new GetProspectsParameter { MustHaveInteractions = new() { InteractionType.Complete } };
var parameter = new GetProspectsParameter { MustHaveInteractions = [InteractionType.Complete] };
var prospectsR = await ProspectService.GetProspectsAsync(parameter);
if (prospectsR.Success) ProspectList = prospectsR.Data;

View File

@@ -2,9 +2,9 @@
@inherits FsBase
<PageTitle>@AppSettings.Title - Wartende Einarbeitungen</PageTitle>
<PageTitle>@AppSettings.Title - </PageTitle>
<h2>Wartende Einarbeitungen</h2>
<h2>Freischalten</h2>
@{
var filterList = ProspectList;
@@ -21,10 +21,9 @@
<TextEdit TextChanged="FilterText_Changed" Placeholder="Suchen..." Debounce="true" DebounceInterval="150" />
@if (filterList?.Any() == true)
{
<div class="text-center font-weight-bold">Bereits verifiziert, aber noch nicht abgeschlossen. Zum Beispiel, wenn noch der Druck-Ausweis fehlt o.ä.</div>
<div class="row m-0">
<Repeater Items="@filterList">
<ProspectContainer Prospect="context" InteractionModal="InteractionModal" ProspectModal="ProspectModal" RemoveInteraction="RemoveInteraction"></ProspectContainer>
<ProspectContainer Prospect="context" InteractionModal="InteractionModal" ProspectModal="ProspectModal" RemoveInteraction="RemoveInteraction" StateFilter="ProspectStateFilter.Verification"></ProspectContainer>
</Repeater>
</div>
}

View File

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