This commit is contained in:
2021-10-21 18:04:57 +01:00
parent 057b75462e
commit ea61d37840
32 changed files with 1486 additions and 523 deletions
@@ -35,7 +35,7 @@ namespace Saxonite.Net.Core.Web.Admin.Controllers
// Paging.
Model_Organisation model = new Model_Organisation(Localiser);
model.Paging.PageNo = 1;
model.Paging.PageLength = 6;
model.Paging.PageLength = 8;
// Default status.
if (sta.StartsWithCI("Awa"))
@@ -109,8 +109,10 @@ namespace Saxonite.Net.Core.Web.Admin.Controllers
// Item filter.
SaxUserAccount.Params prmUserAccount = new SaxUserAccount.Params();
prmUserAccount.UserAccountFilter = model.Filter.User;
prmUserAccount.StatusCat = SaxUserAccount.StatusCat.NotDeleted;
prmUserAccount.UserFilterPartial = model.Filter.User;
prmUserAccount.SportIdsIncluded.AddId(model.Filter.UserSportId.ToSysId());
prmUserAccount.RegionIdsIncluded.AddId(model.Filter.UserRegionId.ToSysId());
prmUserAccount.StatusCat = model.Filter.UserStatusCategoryCode != null ? model.FilterUserStatusCategory : SaxUserAccount.StatusCat.NotDeleted;
model.Paging.ItemTotal = (ulong)AccountMgr.GetUserAccountCount(prmUserAccount);
model.PopulatePagingTo(prmUserAccount.ResultsPaging);
@@ -1,8 +1,10 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
using Sarand.Net.Standard.Base.Utils;
using Saxonite.Net.Core.Web.Admin.Models;
using Saxonite.Net.Core.Web.Base.App;
using Saxonite.Net.Core.Web.Base.Controllers;
using Saxonite.Net.Standard.Base.Bus;
using System;
using System.Collections.Generic;
using System.Diagnostics;
@@ -23,7 +25,7 @@ namespace Saxonite.Net.Core.Web.Admin.Controllers
//-------------------------------------------------------------------
[HttpGet]
public IActionResult Index()
public IActionResult Index(String sta)
{
// Validate session.
if (!ValidUserSession)
@@ -34,6 +36,10 @@ namespace Saxonite.Net.Core.Web.Admin.Controllers
model.Paging.PageNo = 1;
model.Paging.PageLength = 12;
// Default status.
if (sta.StartsWithCI("Awa"))
model.Filter.UserStatusCategoryCode = nameof(SaxUserAccount.StatusCat.AwaitingOnly);
return View(model);
}
@@ -28,7 +28,7 @@ namespace Saxonite.Net.Core.Web.Admin.Models
}
//-------------------------------------------------------------------
// List configuration.
// Organisation filter properties.
public class FilterData
{
public String Organisation { get; set; }
@@ -1,4 +1,5 @@
using Sarand.Net.Standard.Base.App;
using Microsoft.AspNetCore.Mvc.Rendering;
using Sarand.Net.Standard.Base.App;
using Sarand.Net.Standard.Base.Bus;
using Sarand.Net.Standard.Base.Core;
using Sarand.Net.Standard.Base.Helpers;
@@ -29,12 +30,34 @@ namespace Saxonite.Net.Core.Web.Admin.Models
}
//-------------------------------------------------------------------
// User list configuration.
// User filter properties.
public class FilterData
{
public String User { get; set; }
public String UserSportId { get; set; }
public String UserRegionId { get; set; }
public String UserStatusCategoryCode { get; set; }
}
public FilterData Filter { get; } = new FilterData();
public SaxUserAccount.StatusCat FilterUserStatusCategory
{
get { return EnumUtil.ParseEnum(Filter.UserStatusCategoryCode, SaxUserAccount.StatusCat.Any); }
}
/// <summary>User Status Categories for filter.</summary>
public IEnumerable<SelectListItem> UserFilterStatusCategoriesForSelect
{
get
{
List<CodeDesc> statusCategories = new List<CodeDesc>();
statusCategories.Add(SaxUserAccount.StatusCat.Any.ToString(), Localiser["label.any"]);
statusCategories.Add(SaxUserAccount.StatusCat.AwaitingOnly.ToString(), "Awaiting");
statusCategories.Add(SaxUserAccount.StatusCat.ActiveOnly.ToString(), "Active");
statusCategories.Add(SaxUserAccount.StatusCat.InactiveOnly.ToString(), "Inactive");
statusCategories.Add(SaxUserAccount.StatusCat.NotDeleted.ToString(), "Not deleted");
statusCategories.Add(SaxUserAccount.StatusCat.DeletedOnly.ToString(), "Deleted");
return new SelectList(statusCategories, "Code", "Desc", SaxUserAccount.StatusCat.Any.ToString());
}
}
//-------------------------------------------------------------------
// User properties.