From b3cd44431efe23e841e830e9035b92d689575f89 Mon Sep 17 00:00:00 2001 From: Frede Hundewadt <22748698+fhdk@users.noreply.github.com> Date: Wed, 16 Mar 2022 18:32:02 +0100 Subject: [PATCH] wip - make user preferences available --- .../Components/CompanySearchColumn.razor | 14 +++++------ .../Components/CompanySearchColumn.razor.cs | 25 +++++++++++++++---- .../Components/CompanySortColumn.razor | 12 ++++----- .../Components/CompanySortColumn.razor.cs | 11 ++++++-- Wonky.Client/Components/ItemGroupFilter.razor | 21 +++++++--------- .../Components/ItemGroupFilter.razor.cs | 2 +- .../Components/ItemSearchColumn.razor | 15 +++++------ .../Components/ItemSearchColumn.razor.cs | 14 ++++++++--- Wonky.Client/Components/ItemSortColumn.razor | 11 ++++---- .../Components/ItemSortColumn.razor.cs | 18 +++++++++---- .../Components/PageSizeDropDown.razor | 12 ++++----- .../Components/PageSizeDropDown.razor.cs | 11 ++++---- Wonky.Client/Components/SearchPhrase.razor | 1 - .../Models/Draft.cs | 2 +- Wonky.Client/Pages/CompanyList.razor | 8 +++--- Wonky.Client/Pages/CompanyList.razor.cs | 16 ++++++------ Wonky.Client/Pages/DraftDocument.razor | 2 +- Wonky.Client/Pages/DraftDocument.razor.cs | 1 + Wonky.Client/Pages/SalesItemCatalog.razor | 18 ++++++------- Wonky.Client/Pages/SalesItemCatalog.razor.cs | 8 +++--- Wonky.Client/Shared/NavMenu.razor | 7 +++++- 21 files changed, 134 insertions(+), 95 deletions(-) rename {Wonky.Entity => Wonky.Client}/Models/Draft.cs (96%) diff --git a/Wonky.Client/Components/CompanySearchColumn.razor b/Wonky.Client/Components/CompanySearchColumn.razor index 95a5c0b1..ab435c64 100644 --- a/Wonky.Client/Components/CompanySearchColumn.razor +++ b/Wonky.Client/Components/CompanySearchColumn.razor @@ -15,11 +15,9 @@ // *@ - - + \ No newline at end of file diff --git a/Wonky.Client/Components/CompanySearchColumn.razor.cs b/Wonky.Client/Components/CompanySearchColumn.razor.cs index 5df81664..ec48184c 100644 --- a/Wonky.Client/Components/CompanySearchColumn.razor.cs +++ b/Wonky.Client/Components/CompanySearchColumn.razor.cs @@ -15,18 +15,33 @@ // +using System.Security.AccessControl; +using Blazored.LocalStorage; using Microsoft.AspNetCore.Components; namespace Wonky.Client.Components; public partial class CompanySearchColumn { - [Parameter] - public EventCallback OnColumnChanged { get; set; } + [Inject] private ILocalStorageService LocalStorage { get; set; } + [Parameter] public EventCallback OnColumnChanged { get; set; } + private string SearchColumn { get; set; } + private Dictionary Items { get; set; } = new(); + protected override async Task OnInitializedAsync() + { + var value = await LocalStorage.GetItemAsStringAsync("UserCompanySearch"); + var y = string.IsNullOrWhiteSpace(value) ? "name" : value.Replace("\"", ""); - private string SearchColumn { get; set; } = "name"; - private async Task ApplyFilter(ChangeEventArgs eventArgs) + Items.Add("name", "Firmanavn"); + Items.Add("account", "Konto"); + Items.Add("city", "Bynavn"); + Items.Add("zipCode", "Postnr"); + Items.Add("phone", "Telefon"); + + SearchColumn = (from x in Items where x.Key == y select x.Value).First(); + } + private async Task OnSearchColumnChange(ChangeEventArgs eventArgs) { await OnColumnChanged.InvokeAsync(SearchColumn); - } + } } \ No newline at end of file diff --git a/Wonky.Client/Components/CompanySortColumn.razor b/Wonky.Client/Components/CompanySortColumn.razor index 4ce52495..23be7f9b 100644 --- a/Wonky.Client/Components/CompanySortColumn.razor +++ b/Wonky.Client/Components/CompanySortColumn.razor @@ -15,9 +15,9 @@ // *@ - - + \ No newline at end of file diff --git a/Wonky.Client/Components/CompanySortColumn.razor.cs b/Wonky.Client/Components/CompanySortColumn.razor.cs index a31219aa..79848c67 100644 --- a/Wonky.Client/Components/CompanySortColumn.razor.cs +++ b/Wonky.Client/Components/CompanySortColumn.razor.cs @@ -15,6 +15,7 @@ // +using Blazored.LocalStorage; using Microsoft.AspNetCore.Components; namespace Wonky.Client.Components @@ -22,9 +23,15 @@ namespace Wonky.Client.Components public partial class CompanySortColumn { [Parameter] public EventCallback OnSortChanged { get; set; } - private string SortColumn { get; set; } = "name"; - private async Task ApplySort(ChangeEventArgs eventArgs) + private Dictionary Items { get; set; } = new(); + protected override void OnInitialized() + { + Items.Add("name", "Firmanavn"); + Items.Add("account", "Konto"); + Items.Add("city", "Bynavn"); + } + private async Task OnSortColumnChange(ChangeEventArgs eventArgs) { await OnSortChanged.InvokeAsync(SortColumn); } diff --git a/Wonky.Client/Components/ItemGroupFilter.razor b/Wonky.Client/Components/ItemGroupFilter.razor index c1cbf34f..7b331e4e 100644 --- a/Wonky.Client/Components/ItemGroupFilter.razor +++ b/Wonky.Client/Components/ItemGroupFilter.razor @@ -15,15 +15,12 @@ // *@ -
- - -
\ No newline at end of file + \ No newline at end of file diff --git a/Wonky.Client/Components/ItemGroupFilter.razor.cs b/Wonky.Client/Components/ItemGroupFilter.razor.cs index 99392f5e..7d0e8dde 100644 --- a/Wonky.Client/Components/ItemGroupFilter.razor.cs +++ b/Wonky.Client/Components/ItemGroupFilter.razor.cs @@ -22,7 +22,7 @@ public partial class ItemGroupFilter { [Parameter] public EventCallback OnGroupFilterChanged { get; set; } private string GroupFilter { get; set; } = "all"; - private async Task ApplyGroupFilter(ChangeEventArgs eventArgs) + private async Task OnGroupFilterChange(ChangeEventArgs eventArgs) { if (GroupFilter == "all") GroupFilter = ""; diff --git a/Wonky.Client/Components/ItemSearchColumn.razor b/Wonky.Client/Components/ItemSearchColumn.razor index b125fe20..aab286d8 100644 --- a/Wonky.Client/Components/ItemSearchColumn.razor +++ b/Wonky.Client/Components/ItemSearchColumn.razor @@ -15,12 +15,9 @@ // *@ - - + \ No newline at end of file diff --git a/Wonky.Client/Components/ItemSearchColumn.razor.cs b/Wonky.Client/Components/ItemSearchColumn.razor.cs index 3ec87ea5..b32c3584 100644 --- a/Wonky.Client/Components/ItemSearchColumn.razor.cs +++ b/Wonky.Client/Components/ItemSearchColumn.razor.cs @@ -13,16 +13,24 @@ // along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html] // +using Blazored.LocalStorage; using Microsoft.AspNetCore.Components; namespace Wonky.Client.Components; public partial class ItemSearchColumn { - [Parameter] public EventCallback OnSearchColumnChanged { get; set; } + [Parameter] public EventCallback OnColumnChanged { get; set; } private string SearchColumn { get; set; } = "name"; - private async Task ApplySearchColumn(ChangeEventArgs eventArgs) + private Dictionary Items { get; set; } = new(); + protected override void OnInitialized() { - await OnSearchColumnChanged.InvokeAsync(SearchColumn); + Items.Add("name", "Varenavn"); + Items.Add("sku", "Varenr"); + Items.Add("shortName", "Forkortelse"); + } + private async Task OnSearchColumnChange(ChangeEventArgs eventArgs) + { + await OnColumnChanged.InvokeAsync(SearchColumn); } } \ No newline at end of file diff --git a/Wonky.Client/Components/ItemSortColumn.razor b/Wonky.Client/Components/ItemSortColumn.razor index de1274b2..23be7f9b 100644 --- a/Wonky.Client/Components/ItemSortColumn.razor +++ b/Wonky.Client/Components/ItemSortColumn.razor @@ -15,8 +15,9 @@ // *@ - - + \ No newline at end of file diff --git a/Wonky.Client/Components/ItemSortColumn.razor.cs b/Wonky.Client/Components/ItemSortColumn.razor.cs index d548c4ed..f98b55f7 100644 --- a/Wonky.Client/Components/ItemSortColumn.razor.cs +++ b/Wonky.Client/Components/ItemSortColumn.razor.cs @@ -13,18 +13,26 @@ // along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html] // +using Blazored.LocalStorage; using Microsoft.AspNetCore.Components; namespace Wonky.Client.Components; public partial class ItemSortColumn { - [Parameter] - public EventCallback OnSortColumnChanged { get; set; } - + [Parameter] public EventCallback OnColumnChanged { get; set; } private string SortColumn { get; set; } = "name"; - private async Task ApplySortColumn(ChangeEventArgs eventArgs) + private Dictionary Items { get; set; } = new(); + + protected override void OnInitialized() { - await OnSortColumnChanged.InvokeAsync(SortColumn); + Items.Add("name", "Varenavn"); + Items.Add("sku", "Varenr"); } + + private async Task OnSortColumnChange(ChangeEventArgs eventArgs) + { + await OnColumnChanged.InvokeAsync(SortColumn); + } + } \ No newline at end of file diff --git a/Wonky.Client/Components/PageSizeDropDown.razor b/Wonky.Client/Components/PageSizeDropDown.razor index 46ae4e3d..f7919793 100644 --- a/Wonky.Client/Components/PageSizeDropDown.razor +++ b/Wonky.Client/Components/PageSizeDropDown.razor @@ -16,11 +16,11 @@ *@
- + + + + +
\ No newline at end of file diff --git a/Wonky.Client/Components/PageSizeDropDown.razor.cs b/Wonky.Client/Components/PageSizeDropDown.razor.cs index cf81ec2d..46da0c83 100644 --- a/Wonky.Client/Components/PageSizeDropDown.razor.cs +++ b/Wonky.Client/Components/PageSizeDropDown.razor.cs @@ -15,18 +15,19 @@ // +using Blazored.LocalStorage; using Microsoft.AspNetCore.Components; namespace Wonky.Client.Components { public partial class PageSizeDropDown { - [Parameter] - public EventCallback SelectedPageSize { get; set; } - + [Parameter] public EventCallback OnPageSizeChanged { get; set; } + private string PageSize { get; set; } = "5"; + private async Task OnPageSizeChange(ChangeEventArgs eventArgs) { - await SelectedPageSize.InvokeAsync(int.Parse(eventArgs.Value?.ToString()!)); - } + await OnPageSizeChanged.InvokeAsync(PageSize); + } } } diff --git a/Wonky.Client/Components/SearchPhrase.razor b/Wonky.Client/Components/SearchPhrase.razor index 247f2854..5a265598 100644 --- a/Wonky.Client/Components/SearchPhrase.razor +++ b/Wonky.Client/Components/SearchPhrase.razor @@ -15,7 +15,6 @@ // *@ - diff --git a/Wonky.Entity/Models/Draft.cs b/Wonky.Client/Models/Draft.cs similarity index 96% rename from Wonky.Entity/Models/Draft.cs rename to Wonky.Client/Models/Draft.cs index 11254164..7dfbabb6 100644 --- a/Wonky.Entity/Models/Draft.cs +++ b/Wonky.Client/Models/Draft.cs @@ -1,6 +1,6 @@ using Wonky.Entity.DTO; -namespace Wonky.Entity.Models; +namespace Wonky.Client.Models; public class DraftItem { diff --git a/Wonky.Client/Pages/CompanyList.razor b/Wonky.Client/Pages/CompanyList.razor index 0cb13cc3..b8d932f0 100644 --- a/Wonky.Client/Pages/CompanyList.razor +++ b/Wonky.Client/Pages/CompanyList.razor @@ -22,15 +22,15 @@ @attribute [Authorize(Roles = "Adviser")]
+
+ +
-
- -
@@ -40,7 +40,7 @@
- +
diff --git a/Wonky.Client/Pages/CompanyList.razor.cs b/Wonky.Client/Pages/CompanyList.razor.cs index 4bb5d7fe..17131129 100644 --- a/Wonky.Client/Pages/CompanyList.razor.cs +++ b/Wonky.Client/Pages/CompanyList.razor.cs @@ -16,6 +16,7 @@ using System; using System.Collections.Generic; using System.Threading.Tasks; +using Blazored.LocalStorage; using Wonky.Client.HttpInterceptors; using Wonky.Client.HttpRepository; using Microsoft.AspNetCore.Components; @@ -28,14 +29,14 @@ namespace Wonky.Client.Pages { public List? Companies { get; set; } = new(); public MetaData? MetaData { get; set; } = new(); - private PagingParams _paging = new(); - + private string CompanySearch { get; set; } = "name"; + private string CompanySort { get; set; } = "name"; + private string PageSize { get; set; } = "5"; [Inject] public ICompanyHttpRepository CompanyRepo { get; set; } - - [Inject] - public HttpInterceptorService Interceptor { get; set; } + [Inject] public HttpInterceptorService Interceptor { get; set; } + [Inject] public ILocalStorageService LocalStorage { get; set; } protected override async Task OnInitializedAsync() { @@ -59,14 +60,13 @@ namespace Wonky.Client.Pages private async Task ColumnChanged(string? searchColumn) { - _paging.SearchTerm = ""; _paging.SearchColumn = searchColumn; _paging.PageNumber = 1; await GetCompanies(); } - private async Task SetPageSize(int pageSize) + private async Task SetPageSize(string pageSize) { - _paging.PageSize = pageSize; + _paging.PageSize = Convert.ToInt32(pageSize); _paging.PageNumber = 1; await GetCompanies(); } diff --git a/Wonky.Client/Pages/DraftDocument.razor b/Wonky.Client/Pages/DraftDocument.razor index 578573da..37ca3478 100644 --- a/Wonky.Client/Pages/DraftDocument.razor +++ b/Wonky.Client/Pages/DraftDocument.razor @@ -5,7 +5,7 @@ @* display product filter options *@
- +
diff --git a/Wonky.Client/Pages/DraftDocument.razor.cs b/Wonky.Client/Pages/DraftDocument.razor.cs index 78c45dc7..6c8f5fb4 100644 --- a/Wonky.Client/Pages/DraftDocument.razor.cs +++ b/Wonky.Client/Pages/DraftDocument.razor.cs @@ -1,6 +1,7 @@ using Microsoft.AspNetCore.Components; using Wonky.Client.HttpInterceptors; using Wonky.Client.HttpRepository; +using Wonky.Client.Models; using Wonky.Client.Shared; using Wonky.Entity.DTO; using Wonky.Entity.Models; diff --git a/Wonky.Client/Pages/SalesItemCatalog.razor b/Wonky.Client/Pages/SalesItemCatalog.razor index f4a0a08f..7612f421 100644 --- a/Wonky.Client/Pages/SalesItemCatalog.razor +++ b/Wonky.Client/Pages/SalesItemCatalog.razor @@ -15,7 +15,7 @@ // *@ -@page "/price-catalog" +@page "/Price-Catalog" @using Wonky.Client.Components @using Microsoft.AspNetCore.Authorization @@ -23,24 +23,24 @@
- + +
+
+ +
+
+
-
- -
-
- -
- +
diff --git a/Wonky.Client/Pages/SalesItemCatalog.razor.cs b/Wonky.Client/Pages/SalesItemCatalog.razor.cs index f6df9b0e..af316035 100644 --- a/Wonky.Client/Pages/SalesItemCatalog.razor.cs +++ b/Wonky.Client/Pages/SalesItemCatalog.razor.cs @@ -16,9 +16,11 @@ using System; using System.Collections.Generic; using System.Threading.Tasks; +using Blazored.LocalStorage; using Wonky.Client.HttpInterceptors; using Wonky.Client.HttpRepository; using Microsoft.AspNetCore.Components; +using Wonky.Client.Components; using Wonky.Entity.DTO; using Wonky.Entity.Requests; @@ -31,6 +33,7 @@ public partial class SalesItemCatalog : IDisposable private PagingParams _paging = new(); [Inject] public ISalesItemHttpRepository SalesItemRepo { get; set; } [Inject] public HttpInterceptorService Interceptor { get; set; } + [Inject] public ILocalStorageService LocalStorage { get; set; } protected override async Task OnInitializedAsync() { @@ -52,9 +55,9 @@ public partial class SalesItemCatalog : IDisposable MetaData = pagingResponse.MetaData; } - private async Task SetPageSize(int pageSize) + private async Task SetPageSize(string pageSize) { - _paging.PageSize = pageSize; + _paging.PageSize = Convert.ToInt32(pageSize); _paging.PageNumber = 1; await GetSalesItems(); } @@ -68,7 +71,6 @@ public partial class SalesItemCatalog : IDisposable private async Task SearchColumnChanged(string columnName) { _paging.PageNumber = 1; - _paging.SearchTerm = ""; _paging.SearchColumn = columnName; await GetSalesItems(); } diff --git a/Wonky.Client/Shared/NavMenu.razor b/Wonky.Client/Shared/NavMenu.razor index 5bc2cca6..df4a480d 100644 --- a/Wonky.Client/Shared/NavMenu.razor +++ b/Wonky.Client/Shared/NavMenu.razor @@ -50,10 +50,15 @@
+