wip
This commit is contained in:
parent
b74af73886
commit
102371306d
6 changed files with 105 additions and 92 deletions
|
@ -101,15 +101,11 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
_formContext = new EditContext(_activity);
|
_formContext = new EditContext(_activity);
|
||||||
_formContext.OnFieldChanged += ContextHandleFieldChanged!;
|
_formContext.OnFieldChanged += ContextHandleFieldChanged!;
|
||||||
_formContext.OnValidationStateChanged += ContextValidationChanged!;
|
_formContext.OnValidationStateChanged += ContextValidationChanged!;
|
||||||
|
|
||||||
Interceptor.RegisterEvent();
|
Interceptor.RegisterEvent();
|
||||||
Interceptor.RegisterBeforeSendEvent();
|
Interceptor.RegisterBeforeSendEvent();
|
||||||
|
|
||||||
_userPref = await PreferenceService.GetPreference();
|
_userPref = await PreferenceService.GetPreference();
|
||||||
_salesRep = await UserInfo.GetUserInfo();
|
_salesRep = await UserInfo.GetUserInfo();
|
||||||
|
|
||||||
_company = await CompanyRepo.GetCompanyById(CompanyId);
|
_company = await CompanyRepo.GetCompanyById(CompanyId);
|
||||||
|
|
||||||
if (_company.Account.StartsWith("KANVAS"))
|
if (_company.Account.StartsWith("KANVAS"))
|
||||||
{
|
{
|
||||||
_kanvas = true;
|
_kanvas = true;
|
||||||
|
@ -125,20 +121,17 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
// _company has shut down
|
// _company has shut down
|
||||||
_activity.OrderMessage = "BEMÆRK: CVR nummer er ophørt.";
|
_activity.OrderMessage = "BEMÆRK: CVR nummer er ophørt.";
|
||||||
}
|
}
|
||||||
|
|
||||||
_activity.ActivityStatusEnum = "noSale";
|
_activity.ActivityStatusEnum = "noSale";
|
||||||
// decide if new or recall
|
// decide if new or recall
|
||||||
_activity.ActivityVisitEnum = _company.Account.StartsWith("NY")
|
_activity.ActivityVisitEnum = _company.Account.StartsWith("NY")
|
||||||
? "new"
|
? "new"
|
||||||
: "recall";
|
: "recall";
|
||||||
|
|
||||||
// if (string.IsNullOrWhiteSpace(_company.Segment) && _salesRep.CountryCode.ToLower() == "dk")
|
// if (string.IsNullOrWhiteSpace(_company.Segment) && _salesRep.CountryCode.ToLower() == "dk")
|
||||||
// {
|
// {
|
||||||
// Toaster.ShowError("Der mangler information om Segment. Ret kunde segment, gem erp data og prøv igen.");
|
// Toaster.ShowError("Der mangler information om Segment. Ret kunde segment, gem erp data og prøv igen.");
|
||||||
// // Navigator.NavigateTo($"/advisor/customers/{CompanyId}");
|
// // Navigator.NavigateTo($"/advisor/customers/{CompanyId}");
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
// Populate base activity information
|
// Populate base activity information
|
||||||
_activity.Account = _company.Account;
|
_activity.Account = _company.Account;
|
||||||
_activity.Address1 = _company.Address1;
|
_activity.Address1 = _company.Address1;
|
||||||
|
@ -162,7 +155,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
_activity.SalesRepId = _salesRep.UserId;
|
_activity.SalesRepId = _salesRep.UserId;
|
||||||
_activity.Segment = _company.Segment;
|
_activity.Segment = _company.Segment;
|
||||||
_activity.ZipCode = _company.ZipCode;
|
_activity.ZipCode = _company.ZipCode;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* debug logging
|
* debug logging
|
||||||
*/
|
*/
|
||||||
|
@ -175,7 +167,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
SelectedDate = string.IsNullOrWhiteSpace(_userPref.WorkDate)
|
SelectedDate = string.IsNullOrWhiteSpace(_userPref.WorkDate)
|
||||||
? DateTime.Now
|
? DateTime.Now
|
||||||
: DateTime.Parse(_userPref.WorkDate);
|
: DateTime.Parse(_userPref.WorkDate);
|
||||||
|
|
||||||
// 2023-08-14 - reject orders for future dates
|
// 2023-08-14 - reject orders for future dates
|
||||||
if (SelectedDate.Date > DateTime.Now.Date)
|
if (SelectedDate.Date > DateTime.Now.Date)
|
||||||
{
|
{
|
||||||
|
@ -183,10 +174,8 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
SelectedDate = DateTime.Now;
|
SelectedDate = DateTime.Now;
|
||||||
await PreferenceService.SetWorkDate(SelectedDate);
|
await PreferenceService.SetWorkDate(SelectedDate);
|
||||||
}
|
}
|
||||||
|
|
||||||
// raise flag if report is closed
|
// raise flag if report is closed
|
||||||
ReportClosed = await ReportRepo.ReportExist($"{SelectedDate:yyyy-MM-dd}");
|
ReportClosed = await ReportRepo.ReportExist($"{SelectedDate:yyyy-MM-dd}");
|
||||||
|
|
||||||
// Lines may already have been added from the company inventory page
|
// Lines may already have been added from the company inventory page
|
||||||
if (DraftProvider.Draft.DraftType == "order")
|
if (DraftProvider.Draft.DraftType == "order")
|
||||||
{
|
{
|
||||||
|
@ -195,18 +184,14 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
{
|
{
|
||||||
_activity.ActivityTypeEnum = "onSite";
|
_activity.ActivityTypeEnum = "onSite";
|
||||||
}
|
}
|
||||||
|
|
||||||
_activity.ActivityStatusEnum = "order";
|
_activity.ActivityStatusEnum = "order";
|
||||||
_formInvalid = false;
|
_formInvalid = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_salesRep.CountryCode.ToLower() == "se")
|
if (_salesRep.CountryCode.ToLower() == "se")
|
||||||
{
|
{
|
||||||
await TestOrgNumber();
|
await TestOrgNumber();
|
||||||
}
|
}
|
||||||
|
|
||||||
Working = false;
|
Working = false;
|
||||||
|
|
||||||
// Ask for confirmation of date
|
// Ask for confirmation of date
|
||||||
Logger.LogDebug("Preferences.DateConfirmed => {}", _userPref.DateConfirmed);
|
Logger.LogDebug("Preferences.DateConfirmed => {}", _userPref.DateConfirmed);
|
||||||
if (!_userPref.DateConfirmed)
|
if (!_userPref.DateConfirmed)
|
||||||
|
@ -221,7 +206,9 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
protected override async Task OnAfterRenderAsync(bool firstRender)
|
protected override async Task OnAfterRenderAsync(bool firstRender)
|
||||||
{
|
{
|
||||||
if (_kanvas)
|
if (_kanvas)
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
if (firstRender)
|
if (firstRender)
|
||||||
{
|
{
|
||||||
if (!_company.Account.StartsWith("NY"))
|
if (!_company.Account.StartsWith("NY"))
|
||||||
|
@ -244,7 +231,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
{
|
{
|
||||||
Toaster.ShowInfo("Afventer svar fra tjenester ...");
|
Toaster.ShowInfo("Afventer svar fra tjenester ...");
|
||||||
}
|
}
|
||||||
|
|
||||||
_disableButtons = true;
|
_disableButtons = true;
|
||||||
var newSync = await HistoryRepo.RequestErpSync(CompanyId, _company.HistorySync, force);
|
var newSync = await HistoryRepo.RequestErpSync(CompanyId, _company.HistorySync, force);
|
||||||
await Task.Delay(500);
|
await Task.Delay(500);
|
||||||
|
@ -260,7 +246,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
{
|
{
|
||||||
Toaster.ShowSuccess("Alle tjenester har svaret.");
|
Toaster.ShowSuccess("Alle tjenester har svaret.");
|
||||||
}
|
}
|
||||||
|
|
||||||
_disableButtons = false;
|
_disableButtons = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -268,43 +253,37 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
private async Task TestOrgNumber()
|
private async Task TestOrgNumber()
|
||||||
{
|
{
|
||||||
var result = await OrgService.GetPersonalOrgNumber(_activity.Name);
|
var result = await OrgService.GetPersonalOrgNumber(_activity.Name);
|
||||||
|
await Task.Delay(100);
|
||||||
if (!string.IsNullOrWhiteSpace(result.PersonalId))
|
if (!string.IsNullOrWhiteSpace(result.PersonalId))
|
||||||
{
|
{
|
||||||
// Toaster.ShowSuccess($"PersonId for {result.CompanyName} er fundet til at være {result.PersonalId}");
|
if (result.PersonalId[..6] == _activity.VatNumber)
|
||||||
_activity.VatNumber = result.PersonalId;
|
{
|
||||||
|
Logger.LogDebug("search result for {}, {} is {}", _activity.Name, _activity.VatNumber, result.PersonalId);
|
||||||
|
Toaster.ShowSuccess($"PersonId for {result.CompanyName} er fundet til at være {result.PersonalId}");
|
||||||
|
_activity.VatNumber = result.PersonalId;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Show _activity Overlay
|
|
||||||
/// </summary>
|
|
||||||
private void ShowActivitiesOverlay()
|
private void ShowActivitiesOverlay()
|
||||||
{
|
{
|
||||||
ActivityListOverlay.Show();
|
ActivityListOverlay.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Show Inventory Overlay
|
|
||||||
/// </summary>
|
|
||||||
private void ShowInventoryOverlay()
|
private void ShowInventoryOverlay()
|
||||||
{
|
{
|
||||||
InventoryListOverlay.Show();
|
InventoryListOverlay.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Show Invoice Overlay
|
|
||||||
/// </summary>
|
|
||||||
private void ShowInvoiceOverlay()
|
private void ShowInvoiceOverlay()
|
||||||
{
|
{
|
||||||
InvoiceListOverlay.Show();
|
InvoiceListOverlay.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Show Product Check Overlay
|
|
||||||
/// </summary>
|
|
||||||
private async Task ShowProductCheckOverlay()
|
private async Task ShowProductCheckOverlay()
|
||||||
{
|
{
|
||||||
// check if new account
|
// check if new account
|
||||||
|
@ -322,18 +301,12 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Show Price Catalog Overlay
|
|
||||||
/// </summary>
|
|
||||||
private void ShowPriceCatalogOverlay()
|
private void ShowPriceCatalogOverlay()
|
||||||
{
|
{
|
||||||
CatalogOverlay.Show();
|
CatalogOverlay.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Show Product Price History Overlay
|
|
||||||
/// </summary>
|
|
||||||
private void ShowPriceHistoryOverlay()
|
private void ShowPriceHistoryOverlay()
|
||||||
{
|
{
|
||||||
if (ShowItem)
|
if (ShowItem)
|
||||||
|
@ -343,10 +316,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Price Catalog Overlay Callback
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="selectedItem"></param>
|
|
||||||
private async Task PriceCatalogOverlayCallback(ItemSelect selectedItem)
|
private async Task PriceCatalogOverlayCallback(ItemSelect selectedItem)
|
||||||
{
|
{
|
||||||
// get selected item
|
// get selected item
|
||||||
|
@ -368,7 +337,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Price = price.ToString("N2", CultureInfo.InvariantCulture);
|
Price = price.ToString("N2", CultureInfo.InvariantCulture);
|
||||||
StateHasChanged();
|
StateHasChanged();
|
||||||
}
|
}
|
||||||
|
@ -391,7 +359,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
item.Check = false;
|
item.Check = false;
|
||||||
}
|
}
|
||||||
await DrawerService.StoreInventoryDrawerAsync(CompanyId, _inventoryDrawer);
|
await DrawerService.StoreInventoryDrawerAsync(CompanyId, _inventoryDrawer);
|
||||||
|
|
||||||
await CreateActivity();
|
await CreateActivity();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -422,7 +389,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
*/
|
*/
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (_kanvas)
|
switch (_kanvas)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
@ -438,7 +404,6 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
Toaster.ShowError("Firma registreringsnummer er ikke korrekt.");
|
Toaster.ShowError("Firma registreringsnummer er ikke korrekt.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (_activity.ActivityStatusEnum)
|
switch (_activity.ActivityStatusEnum)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
@ -541,44 +506,38 @@ public partial class AdvisorActivityCreatePage : IDisposable
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Toggle Delivery Address Input
|
|
||||||
/// </summary>
|
|
||||||
private void ToggleDeliveryAddress()
|
private void ToggleDeliveryAddress()
|
||||||
{
|
{
|
||||||
_hideDeliveryAddress = !_hideDeliveryAddress;
|
_hideDeliveryAddress = !_hideDeliveryAddress;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// /// <summary>
|
private async Task ShowOrgWarning()
|
||||||
// /// Show Incomplete Organization Number Warning
|
{
|
||||||
// /// </summary>
|
if (_kanvas)
|
||||||
// private async Task ShowOrgWarning()
|
{
|
||||||
// {
|
return;
|
||||||
// if (_kanvas)
|
}
|
||||||
// {
|
// if (OrgWarning)
|
||||||
// return;
|
// {
|
||||||
// }
|
// return;
|
||||||
// // if (OrgWarning)
|
// }
|
||||||
// // {
|
// OrgWarning = true;
|
||||||
// // return;
|
if (_company.CountryCode.ToLower() == "se"
|
||||||
// // }
|
&& Utils.StringToDigits(_activity.VatNumber).Length < 10
|
||||||
// // OrgWarning = true;
|
&& _activity.ActivityStatusEnum == "order")
|
||||||
// if (_company.CountryCode.ToLower() == "se"
|
{
|
||||||
// && Utils.StringToDigits(_activity.VatNumber).Length < 10
|
// Toaster.ShowWarning("Org nummer er ufuldstændig. Skal opdateres før bestilling kan sendes.");
|
||||||
// && _activity.ActivityStatusEnum == "order")
|
// Toaster.ShowInfo("Vent mens vi soger at finde de manglende cifre ...");
|
||||||
// {
|
var result = await OrgService.GetPersonalOrgNumber(_activity.Name);
|
||||||
// // Toaster.ShowWarning("Org nummer er ufuldstændig. Skal opdateres før bestilling kan sendes.");
|
if (!string.IsNullOrWhiteSpace(result.PersonalId))
|
||||||
// // Toaster.ShowInfo("Vent mens vi soger at finde de manglende cifre ...");
|
{
|
||||||
// var result = await OrgService.GetPersonalOrgNumber(_activity.Name);
|
_activity.VatNumber = result.PersonalId;
|
||||||
// if (!string.IsNullOrWhiteSpace(result.PersonalId))
|
Toaster.ShowSuccess($"Org nummer for {result.CompanyName} er fundet at være {result.PersonalId}.");
|
||||||
// {
|
}
|
||||||
// _activity.VatNumber = result.PersonalId;
|
}
|
||||||
// Toaster.ShowSuccess($"Org nummer for {result.CompanyName} er fundet at være {result.PersonalId}.");
|
// OrgWarning = false;
|
||||||
// }
|
}
|
||||||
// }
|
|
||||||
// // OrgWarning = false;
|
|
||||||
// }
|
|
||||||
|
|
||||||
|
|
||||||
private async Task DeleteDraft()
|
private async Task DeleteDraft()
|
||||||
|
|
|
@ -24,8 +24,18 @@
|
||||||
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header bg-dark text-white">
|
<div class="card-header bg-dark text-white">
|
||||||
<div class="mt-3 h3 card-title">
|
<div class="row">
|
||||||
Sælger Oversigt @CountryName
|
<div class="col-sm-6">
|
||||||
|
<div class="mt-3 h3 card-title">
|
||||||
|
Sælger Oversigt @CountryName
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-5 text-end">
|
||||||
|
<button class="btn btn-secondary" @onclick="@ToggleShowAll">@_buttonText</button>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-1">
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
|
|
@ -35,22 +35,49 @@ public partial class OfficeAdvisorListPage :IDisposable
|
||||||
|
|
||||||
// #############################################################
|
// #############################################################
|
||||||
private List<UserInfoListView> SalesReps { get; set; } = new();
|
private List<UserInfoListView> SalesReps { get; set; } = new();
|
||||||
|
private List<UserInfoListView> _advisors = new();
|
||||||
private bool Working { get; set; } = true;
|
private bool Working { get; set; } = true;
|
||||||
private string CountryName { get; set; } = "";
|
private string CountryName { get; set; } = "";
|
||||||
|
private string _buttonText = "";
|
||||||
|
private bool _showAll;
|
||||||
|
private int _active;
|
||||||
|
private int _all;
|
||||||
|
|
||||||
protected override async Task OnInitializedAsync()
|
protected override async Task OnInitializedAsync()
|
||||||
{
|
{
|
||||||
Interceptor.RegisterEvent();
|
Interceptor.RegisterEvent();
|
||||||
Interceptor.RegisterBeforeSendEvent();
|
Interceptor.RegisterBeforeSendEvent();
|
||||||
CountryName = Utils.CountryName(CountryCode);
|
CountryName = Utils.CountryName(CountryCode);
|
||||||
var AdvisorList = await UserRepo.GetUsers("Advisor");
|
_advisors = await UserRepo.GetUsers("Advisor");
|
||||||
SalesReps = AdvisorList
|
_all = _advisors.Count;
|
||||||
|
_active = _advisors.Count(x => !x.LockoutEnabled);
|
||||||
|
_buttonText = $"Vis Alle ({_all})";
|
||||||
|
SalesReps = _advisors
|
||||||
.Where(x => string.Equals(x.CountryCode, CountryCode, StringComparison.InvariantCultureIgnoreCase))
|
.Where(x => string.Equals(x.CountryCode, CountryCode, StringComparison.InvariantCultureIgnoreCase))
|
||||||
|
.Where(x => !x.LockoutEnabled)
|
||||||
.OrderBy(x => x.FullName)
|
.OrderBy(x => x.FullName)
|
||||||
.ToList();
|
.ToList();
|
||||||
Working = false;
|
Working = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ToggleShowAll()
|
||||||
|
{
|
||||||
|
_showAll = !_showAll;
|
||||||
|
if (_showAll)
|
||||||
|
{
|
||||||
|
SalesReps = _advisors.Where(x => string.Equals(x.CountryCode, CountryCode, StringComparison.InvariantCultureIgnoreCase))
|
||||||
|
.OrderBy(x => x.FullName)
|
||||||
|
.ToList();
|
||||||
|
_buttonText = $"Vis Aktive ({_active})";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
SalesReps = _advisors
|
||||||
|
.Where(x => string.Equals(x.CountryCode, CountryCode, StringComparison.InvariantCultureIgnoreCase))
|
||||||
|
.Where(x => !x.LockoutEnabled)
|
||||||
|
.OrderBy(x => x.FullName)
|
||||||
|
.ToList();
|
||||||
|
_buttonText = $"Vis Alle ({_all})";
|
||||||
|
}
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
Interceptor.DisposeEvent();
|
Interceptor.DisposeEvent();
|
||||||
|
|
|
@ -21,10 +21,11 @@
|
||||||
|
|
||||||
<PageTitle>System Bruger Oversigt</PageTitle>
|
<PageTitle>System Bruger Oversigt</PageTitle>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-6">
|
||||||
<h3>System Bruger Oversigt</h3>
|
<h3>System Bruger Oversigt</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-3 text-end">
|
<div class="col-sm-5 text-end">
|
||||||
|
<button class="btn btn-secondary" @onclick="@ShowLocked">@_showLockedCaption</button>
|
||||||
<a class="btn btn-primary" href="/system/users/create"><i class="bi-plus-lg"></i>Opret bruger</a>
|
<a class="btn btn-primary" href="/system/users/create"><i class="bi-plus-lg"></i>Opret bruger</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-1">
|
<div class="col-sm-1">
|
||||||
|
@ -57,9 +58,9 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@if (UserList.Any())
|
@if (DisplayList.Any())
|
||||||
{
|
{
|
||||||
foreach (var user in UserList)
|
foreach (var user in DisplayList)
|
||||||
{
|
{
|
||||||
<a class="list-group-item list-group-item-action" href="/system/users/@user.UserId">
|
<a class="list-group-item list-group-item-action" href="/system/users/@user.UserId">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
|
@ -32,7 +32,10 @@ public partial class SystemUserListPage : IDisposable
|
||||||
private List<UserInfoListView> UserList { get; set; } = new();
|
private List<UserInfoListView> UserList { get; set; } = new();
|
||||||
private List<UserInfoListView> DisplayList { get; set; } = new();
|
private List<UserInfoListView> DisplayList { get; set; } = new();
|
||||||
private bool Working { get; set; } = true;
|
private bool Working { get; set; } = true;
|
||||||
|
private bool _showLocked;
|
||||||
|
private string _showLockedCaption = "";
|
||||||
|
private int _activeUsers;
|
||||||
|
private int _allUsers;
|
||||||
|
|
||||||
protected override async Task OnInitializedAsync()
|
protected override async Task OnInitializedAsync()
|
||||||
{
|
{
|
||||||
|
@ -40,16 +43,29 @@ public partial class SystemUserListPage : IDisposable
|
||||||
Interceptor.RegisterBeforeSendEvent();
|
Interceptor.RegisterBeforeSendEvent();
|
||||||
|
|
||||||
UserList = await UserRepo.GetUsers();
|
UserList = await UserRepo.GetUsers();
|
||||||
|
_allUsers = UserList.Count;
|
||||||
|
_activeUsers = UserList.Count(x => !x.LockoutEnabled);
|
||||||
if (UserList.Any())
|
if (UserList.Any())
|
||||||
{
|
{
|
||||||
UserList = UserList.Where(x => !x.LockoutEnabled).ToList();
|
DisplayList = UserList.Where(x => !x.LockoutEnabled).ToList();
|
||||||
}
|
}
|
||||||
|
_showLockedCaption = $"Vis Alle ({_allUsers})";
|
||||||
DisplayList = UserList;
|
|
||||||
|
|
||||||
Working = false;
|
Working = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ShowLocked()
|
||||||
|
{
|
||||||
|
_showLocked = !_showLocked;
|
||||||
|
if (_showLocked)
|
||||||
|
{
|
||||||
|
DisplayList = UserList;
|
||||||
|
_showLockedCaption = $"Vis aktive ({_activeUsers})";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
_showLockedCaption = $"Vis Alle ({UserList.Count})";
|
||||||
|
DisplayList = UserList.Where(x => !x.LockoutEnabled).ToList();
|
||||||
|
|
||||||
|
}
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
Interceptor.DisposeEvent();
|
Interceptor.DisposeEvent();
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"appInfo": {
|
"appInfo": {
|
||||||
"name": "Wonky Online",
|
"name": "Wonky Online",
|
||||||
"version": "232.0",
|
"version": "234.0",
|
||||||
"rc": true,
|
"rc": true,
|
||||||
"sandBox": true,
|
"sandBox": true,
|
||||||
"image": "grumpy-coder.png",
|
"image": "grumpy-coder.png",
|
||||||
|
|
Loading…
Reference in a new issue