diff --git a/Wonky.Client/Components/ActivityTableComponent.razor b/Wonky.Client/Components/ActivityTableComponent.razor index fe44779b..a827f3ce 100644 --- a/Wonky.Client/Components/ActivityTableComponent.razor +++ b/Wonky.Client/Components/ActivityTableComponent.razor @@ -49,4 +49,8 @@ +} +else +{ + } \ No newline at end of file diff --git a/Wonky.Client/Components/AdminAdvisorCompanyTableComponent.razor b/Wonky.Client/Components/AdminAdvisorCompanyTableComponent.razor index 3246eaf6..33327b11 100644 --- a/Wonky.Client/Components/AdminAdvisorCompanyTableComponent.razor +++ b/Wonky.Client/Components/AdminAdvisorCompanyTableComponent.razor @@ -78,5 +78,5 @@ } else { - + } \ No newline at end of file diff --git a/Wonky.Client/Components/AdminAdvisorTableComponent.razor b/Wonky.Client/Components/AdminAdvisorTableComponent.razor index e22627fd..b65e8593 100644 --- a/Wonky.Client/Components/AdminAdvisorTableComponent.razor +++ b/Wonky.Client/Components/AdminAdvisorTableComponent.razor @@ -54,5 +54,5 @@ } else { - + } \ No newline at end of file diff --git a/Wonky.Client/Components/AdminReportTableComponent.razor b/Wonky.Client/Components/AdminReportTableComponent.razor index fd124af5..482ca124 100644 --- a/Wonky.Client/Components/AdminReportTableComponent.razor +++ b/Wonky.Client/Components/AdminReportTableComponent.razor @@ -84,7 +84,5 @@ } else { -
- Ingen data -
+ } \ No newline at end of file diff --git a/Wonky.Client/Components/AdminUserTableComponent.razor b/Wonky.Client/Components/AdminUserTableComponent.razor index 05d54bcb..5d4600c9 100644 --- a/Wonky.Client/Components/AdminUserTableComponent.razor +++ b/Wonky.Client/Components/AdminUserTableComponent.razor @@ -51,5 +51,5 @@ } else { - + } \ No newline at end of file diff --git a/Wonky.Client/Components/CompanyTableComponent.razor b/Wonky.Client/Components/CompanyTableComponent.razor index 3b9e85b6..af568e2c 100644 --- a/Wonky.Client/Components/CompanyTableComponent.razor +++ b/Wonky.Client/Components/CompanyTableComponent.razor @@ -67,5 +67,5 @@ } else { - + } \ No newline at end of file diff --git a/Wonky.Client/Components/ItemTableComponent.razor b/Wonky.Client/Components/ItemTableComponent.razor index 04ff6ca3..3953d720 100644 --- a/Wonky.Client/Components/ItemTableComponent.razor +++ b/Wonky.Client/Components/ItemTableComponent.razor @@ -55,5 +55,5 @@ } else { - + } \ No newline at end of file diff --git a/Wonky.Client/Components/LoaderBallTriangle.razor b/Wonky.Client/Components/LoaderBallTriangle.razor new file mode 100644 index 00000000..dc933d37 --- /dev/null +++ b/Wonky.Client/Components/LoaderBallTriangle.razor @@ -0,0 +1,26 @@ +@* +// Copyright (C) 2022 FCS Frede's Computer Services. +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html] +// +*@ + +@if (Loading) +{ +
+
+ + loading ... +
+
+} \ No newline at end of file diff --git a/Wonky.Client/Components/LoaderBallTriangle.razor.cs b/Wonky.Client/Components/LoaderBallTriangle.razor.cs new file mode 100644 index 00000000..9176186e --- /dev/null +++ b/Wonky.Client/Components/LoaderBallTriangle.razor.cs @@ -0,0 +1,18 @@ + +namespace Wonky.Client.Components; + +public partial class LoaderBallTriangle +{ + private bool Loading { get; set; } + + protected override async Task OnInitializedAsync() + { + Loading = true; + + await Task.Delay(10000); + + Loading = false; + } + + +} \ No newline at end of file diff --git a/Wonky.Client/Components/AppSpinner.razor b/Wonky.Client/Components/LoaderBars.razor similarity index 73% rename from Wonky.Client/Components/AppSpinner.razor rename to Wonky.Client/Components/LoaderBars.razor index 16f0cfc1..d5e9f34f 100644 --- a/Wonky.Client/Components/AppSpinner.razor +++ b/Wonky.Client/Components/LoaderBars.razor @@ -14,6 +14,13 @@ // along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html] // *@ -
- Loading... -
+ +@if (Loading) +{ +
+
+ + loading ... +
+
+} \ No newline at end of file diff --git a/Wonky.Client/Components/LoaderBars.razor.cs b/Wonky.Client/Components/LoaderBars.razor.cs new file mode 100644 index 00000000..ed3ed82e --- /dev/null +++ b/Wonky.Client/Components/LoaderBars.razor.cs @@ -0,0 +1,18 @@ + +namespace Wonky.Client.Components; + +public partial class LoaderBars +{ + private bool Loading { get; set; } + + protected override async Task OnInitializedAsync() + { + Loading = true; + + await Task.Delay(10000); + + Loading = false; + } + + +} \ No newline at end of file diff --git a/Wonky.Client/Components/LoaderSnake.razor b/Wonky.Client/Components/LoaderSnake.razor new file mode 100644 index 00000000..34a1fb49 --- /dev/null +++ b/Wonky.Client/Components/LoaderSnake.razor @@ -0,0 +1,26 @@ +@* +// Copyright (C) 2022 FCS Frede's Computer Services. +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html] +// +*@ + +@if (Loading) +{ +
+
+ + loading ... +
+
+} \ No newline at end of file diff --git a/Wonky.Client/Components/LoaderSnake.razor.cs b/Wonky.Client/Components/LoaderSnake.razor.cs new file mode 100644 index 00000000..3464d043 --- /dev/null +++ b/Wonky.Client/Components/LoaderSnake.razor.cs @@ -0,0 +1,18 @@ + +namespace Wonky.Client.Components; + +public partial class LoaderSnake +{ + private bool Loading { get; set; } + + protected override async Task OnInitializedAsync() + { + Loading = true; + + await Task.Delay(10000); + + Loading = false; + } + + +} \ No newline at end of file diff --git a/Wonky.Client/Components/ReportTableComponent.razor b/Wonky.Client/Components/ReportTableComponent.razor index c672569a..b991ca96 100644 --- a/Wonky.Client/Components/ReportTableComponent.razor +++ b/Wonky.Client/Components/ReportTableComponent.razor @@ -82,5 +82,5 @@ } else { - + } \ No newline at end of file diff --git a/Wonky.Client/Components/SearchPhraseComponent.razor.cs b/Wonky.Client/Components/SearchPhraseComponent.razor.cs index c8a8de17..22ca22ca 100644 --- a/Wonky.Client/Components/SearchPhraseComponent.razor.cs +++ b/Wonky.Client/Components/SearchPhraseComponent.razor.cs @@ -15,7 +15,6 @@ using System.Timers; using Microsoft.AspNetCore.Components; -using Microsoft.VisualBasic; using Timer = System.Timers.Timer; namespace Wonky.Client.Components diff --git a/Wonky.Client/Components/TaskItemTableComponent.razor b/Wonky.Client/Components/TaskItemTableComponent.razor index 3afe83b4..05d31cf0 100644 --- a/Wonky.Client/Components/TaskItemTableComponent.razor +++ b/Wonky.Client/Components/TaskItemTableComponent.razor @@ -73,5 +73,5 @@ } else { - + } \ No newline at end of file diff --git a/Wonky.Client/Components/WarehouseListComponent.razor b/Wonky.Client/Components/WarehouseListComponent.razor new file mode 100644 index 00000000..95b499ac --- /dev/null +++ b/Wonky.Client/Components/WarehouseListComponent.razor @@ -0,0 +1,85 @@ +
+
+
+ + + + + + + + + + + +
+
+
+ @if (_readyToShip && _orders.Any()) + { + + } +
+
+@if (_orders.Any()) +{ + +} +else +{ + +} + +@code { + +} \ No newline at end of file diff --git a/Wonky.Client/Pages/WarehouseOrderListPage.razor.cs b/Wonky.Client/Components/WarehouseListComponent.razor.cs similarity index 76% rename from Wonky.Client/Pages/WarehouseOrderListPage.razor.cs rename to Wonky.Client/Components/WarehouseListComponent.razor.cs index c9323677..17c0e5a1 100644 --- a/Wonky.Client/Pages/WarehouseOrderListPage.razor.cs +++ b/Wonky.Client/Components/WarehouseListComponent.razor.cs @@ -4,9 +4,9 @@ using Wonky.Client.HttpInterceptors; using Wonky.Client.HttpRepository; using Wonky.Entity.Views; -namespace Wonky.Client.Pages; +namespace Wonky.Client.Components; -public partial class WarehouseOrderListPage : IDisposable +public partial class WarehouseListComponent { [Inject] private HttpInterceptorService _interceptor { get; set; } [Inject] private IWarehouseHttpRepository _warehouseRepo { get; set; } @@ -28,21 +28,32 @@ public partial class WarehouseOrderListPage : IDisposable private async Task GetOrderStatusNone() { + _orders = new List(); _orders = await _warehouseRepo.GetWarehouseOrderListByStatus("none"); _readyToShip = false; } private async Task GetOrderStatusPicked() { + _orders = new List(); _orders = await _warehouseRepo.GetWarehouseOrderListByStatus("picked"); _readyToShip = false; } private async Task GetOrderStatusPacked() { + _orders = new List(); _orders = await _warehouseRepo.GetWarehouseOrderListByStatus("packed"); _readyToShip = true; } + + private async Task GetOrderStatusShipped() + { + _orders = new List(); + var orderList = await _warehouseRepo.GetWarehouseOrderListByStatus("shipped"); + _orders = orderList.OrderByDescending(x => x.OrderDate).ToList(); + _readyToShip = false; + } private async Task SetProcessStatusShipped() { @@ -63,4 +74,5 @@ public partial class WarehouseOrderListPage : IDisposable { _interceptor.DisposeEvent(); } + } \ No newline at end of file diff --git a/Wonky.Client/HttpRepository/ActivityHttpRepository.cs b/Wonky.Client/HttpRepository/ActivityHttpRepository.cs index 3c70f13e..ba1a0bc7 100644 --- a/Wonky.Client/HttpRepository/ActivityHttpRepository.cs +++ b/Wonky.Client/HttpRepository/ActivityHttpRepository.cs @@ -57,7 +57,7 @@ public class ActivityHttpRepository : IActivityHttpRepository public async Task GetActivities(string activityDate) { var response = await _client - .GetAsync($"{_apiConfig.ActivityUri}/date/{activityDate}"); + .GetAsync($"{_apiConfig.CrmSale}/date/{activityDate}"); var content = await response.Content.ReadAsStringAsync(); return string.IsNullOrWhiteSpace(content) ? new ReportItemListView() @@ -67,7 +67,7 @@ public class ActivityHttpRepository : IActivityHttpRepository public async Task CreateActivity(ActivityDto model) { Console.WriteLine(JsonSerializer.Serialize(model, _options)); - var response = await _client.PostAsJsonAsync($"{_apiConfig.ActivityUri}", model, _options); + var response = await _client.PostAsJsonAsync($"{_apiConfig.CrmSale}", model, _options); var content = await response.Content.ReadAsStringAsync(); var result = JsonSerializer.Deserialize(content); return result!; @@ -76,13 +76,13 @@ public class ActivityHttpRepository : IActivityHttpRepository public async Task GetActivity(string id) { var salesItem = await _client - .GetFromJsonAsync($"{_apiConfig.ActivityUri}/{id}"); + .GetFromJsonAsync($"{_apiConfig.CrmSale}/{id}"); return salesItem ?? new ActivityDto(); } public async Task AcceptOffer(string id) { - var response = await _client.PostAsJsonAsync($"{_apiConfig.ActivityUri}/{id}/accept", id) + var response = await _client.PostAsJsonAsync($"{_apiConfig.CrmSale}/{id}/accept", id) ; var content = await response.Content.ReadAsStringAsync(); var result = JsonSerializer.Deserialize(content); diff --git a/Wonky.Client/HttpRepository/AdminReportHttpRepository.cs b/Wonky.Client/HttpRepository/AdminReportHttpRepository.cs index c90494e3..9f0b52bd 100644 --- a/Wonky.Client/HttpRepository/AdminReportHttpRepository.cs +++ b/Wonky.Client/HttpRepository/AdminReportHttpRepository.cs @@ -47,12 +47,12 @@ public class AdminReportHttpRepository : IAdminReportHttpRepository public async Task> GetReports(string userId) { - return await _client.GetFromJsonAsync>($"{_apiConfig.AdminAdvisorUri}/{userId}/reports"); + return await _client.GetFromJsonAsync>($"{_apiConfig.AdminUser}/{userId}/reports"); } public async Task GetReport(string userId, string workDate) { - return await _client.GetFromJsonAsync($"{_apiConfig.AdminAdvisorUri}/{userId}/reports/{workDate}"); + return await _client.GetFromJsonAsync($"{_apiConfig.AdminUser}/{userId}/reports/{workDate}"); } } \ No newline at end of file diff --git a/Wonky.Client/HttpRepository/CompanyHttpRepository.cs b/Wonky.Client/HttpRepository/CompanyHttpRepository.cs index 66cd3a81..91c47051 100644 --- a/Wonky.Client/HttpRepository/CompanyHttpRepository.cs +++ b/Wonky.Client/HttpRepository/CompanyHttpRepository.cs @@ -68,7 +68,7 @@ public class CompanyHttpRepository : ICompanyHttpRepository ["isHidden"] = pagingParameters.IsHidden.ToString(), ["hasFolded"] = pagingParameters.HasFolded.ToString() }; - var response = await _client.GetAsync(QueryHelpers.AddQueryString($"{_apiConfig.CompanyUri}/page", queryString)); + var response = await _client.GetAsync(QueryHelpers.AddQueryString($"{_apiConfig.CrmCustomer}/page", queryString)); var content = await response.Content.ReadAsStringAsync(); @@ -93,7 +93,7 @@ public class CompanyHttpRepository : ICompanyHttpRepository ["hasFolded"] = pagingParameters.HasFolded.ToString() }; var response = await _client - .GetAsync(QueryHelpers.AddQueryString($"{_apiConfig.AdminAdvisorUri}/{userId}/companies", queryString)); + .GetAsync(QueryHelpers.AddQueryString($"{_apiConfig.AdminUser}/{userId}/companies", queryString)); var content = await response.Content.ReadAsStringAsync(); @@ -107,13 +107,13 @@ public class CompanyHttpRepository : ICompanyHttpRepository public async Task GetCompanyByAccount(string accountNumber) { - var company = await _client.GetFromJsonAsync($"{_apiConfig.CompanyUri}/account/{accountNumber}"); + var company = await _client.GetFromJsonAsync($"{_apiConfig.CrmCustomer}/account/{accountNumber}"); return company ?? new CompanyDto(); } public async Task GetCompanyById(string companyId) { - var company = await _client.GetFromJsonAsync($"{_apiConfig.CompanyUri}/{companyId}"); + var company = await _client.GetFromJsonAsync($"{_apiConfig.CrmCustomer}/{companyId}"); return company ?? new CompanyDto(); } @@ -124,7 +124,7 @@ public class CompanyHttpRepository : ICompanyHttpRepository /// company id public async Task CreateCompany(CompanyDto model) { - var response = await _client.PostAsJsonAsync($"{_apiConfig.CompanyUri}", model); + var response = await _client.PostAsJsonAsync($"{_apiConfig.CrmCustomer}", model); var content = await response.Content.ReadAsStringAsync(); var result = JsonSerializer.Deserialize(content, _options); return result.CompanyId; @@ -132,7 +132,7 @@ public class CompanyHttpRepository : ICompanyHttpRepository public async Task UpdateCompany(string companyId, CompanyDto model) { - var response = await _client.PutAsJsonAsync($"{_apiConfig.CompanyUri}/{companyId}", model); + var response = await _client.PutAsJsonAsync($"{_apiConfig.CrmCustomer}/{companyId}", model); var content = await response.Content.ReadAsStringAsync(); Console.WriteLine(content); return response.IsSuccessStatusCode; @@ -140,7 +140,7 @@ public class CompanyHttpRepository : ICompanyHttpRepository public async Task DeleteCompany(string companyId) { - var response = await _client.DeleteAsync($"{_apiConfig.CompanyUri}/{companyId}"); + var response = await _client.DeleteAsync($"{_apiConfig.CrmCustomer}/{companyId}"); return response.IsSuccessStatusCode; } } \ No newline at end of file diff --git a/Wonky.Client/HttpRepository/HistoryHttpRepository.cs b/Wonky.Client/HttpRepository/HistoryHttpRepository.cs index dbff5f6f..557f1d84 100644 --- a/Wonky.Client/HttpRepository/HistoryHttpRepository.cs +++ b/Wonky.Client/HttpRepository/HistoryHttpRepository.cs @@ -48,7 +48,7 @@ public class HistoryHttpRepository : IHistoryHttpRepository } public async Task> FetchInventory(string companyId) { - var response = await _client.GetAsync($"{_api.CompanyUri}/{companyId}/{_api.InventoryUri}"); + var response = await _client.GetAsync($"{_api.CrmCustomer}/{companyId}/{_api.CrmInventory}"); var content = await response.Content.ReadAsStringAsync(); return response.IsSuccessStatusCode ? JsonSerializer.Deserialize>(content, _options) @@ -59,18 +59,18 @@ public class HistoryHttpRepository : IHistoryHttpRepository public async Task> FetchHistory(string companyId) { return await _client.GetFromJsonAsync>( - $"{_api.CompanyUri}/{companyId}/{_api.ProductUri}"); + $"{_api.CrmCustomer}/{companyId}/{_api.CrmProduct}"); } public async Task> FetchHistory(string companyId, string sku) { return await _client.GetFromJsonAsync>( - $"{_api.CompanyUri}/{companyId}/{_api.ProductUri}/{sku}"); + $"{_api.CrmCustomer}/{companyId}/{_api.CrmProduct}/{sku}"); } public async Task UpdateProductHistory(string companyId, string syncDate = "2010-01-01") { - return await _client.GetStringAsync($"{_api.CompanyUri}/{companyId}/{_api.SyncUri}/{syncDate}"); + return await _client.GetStringAsync($"{_api.CrmCustomer}/{companyId}/{_api.CrmSync}/{syncDate}"); } } \ No newline at end of file diff --git a/Wonky.Client/HttpRepository/ReportHttpRepository.cs b/Wonky.Client/HttpRepository/ReportHttpRepository.cs index 6e21fead..ea934d0d 100644 --- a/Wonky.Client/HttpRepository/ReportHttpRepository.cs +++ b/Wonky.Client/HttpRepository/ReportHttpRepository.cs @@ -48,32 +48,32 @@ public class ReportHttpRepository :IReportHttpRepository public async Task> GetReports() { - return await _client.GetFromJsonAsync>($"{_apiConfig.ReportUri}"); + return await _client.GetFromJsonAsync>($"{_apiConfig.CrmReport}"); } public async Task ReportExist(string workDate) { var result = await _client - .GetFromJsonAsync($"{_apiConfig.ReportUri}/exist/{workDate}"); + .GetFromJsonAsync($"{_apiConfig.CrmReport}/exist/{workDate}"); return result.ReportClosed; } public async Task GetReport(string workDate) { - return await _client.GetFromJsonAsync($"{_apiConfig.ReportUri}/{workDate}"); + return await _client.GetFromJsonAsync($"{_apiConfig.CrmReport}/{workDate}"); } public async Task InitializeReportData(string workDate) { var initData = await _client - .GetFromJsonAsync($"{_apiConfig.ReportUri}/init/{workDate}"); + .GetFromJsonAsync($"{_apiConfig.CrmReport}/init/{workDate}"); return initData ?? new ReportInitDto(); } public async Task PostReport(string workDate, ReportDto reportDto) { var response = await _client - .PostAsJsonAsync($"{_apiConfig.ReportUri}/{workDate}", reportDto, _options); + .PostAsJsonAsync($"{_apiConfig.CrmReport}/{workDate}", reportDto, _options); var jsonDate = await response.Content.ReadAsStringAsync(); var result = JsonSerializer.Deserialize(jsonDate); diff --git a/Wonky.Client/HttpRepository/SalesItemHttpRepository.cs b/Wonky.Client/HttpRepository/SalesItemHttpRepository.cs index c061b05d..e85be4e6 100644 --- a/Wonky.Client/HttpRepository/SalesItemHttpRepository.cs +++ b/Wonky.Client/HttpRepository/SalesItemHttpRepository.cs @@ -64,7 +64,7 @@ public class SalesItemHttpRepository : ISalesItemHttpRepository ["selectGroup"] = pagingParameters.SelectGroup == "0" ? "" : pagingParameters.SelectGroup, }; var response = await _client - .GetAsync(QueryHelpers.AddQueryString($"{_apiConfig.CatalogUri}/page", queryString)); + .GetAsync(QueryHelpers.AddQueryString($"{_apiConfig.CrmCatalog}/page", queryString)); var content = await response.Content.ReadAsStringAsync(); @@ -80,7 +80,7 @@ public class SalesItemHttpRepository : ISalesItemHttpRepository public async Task GetSalesItem(string id) { var salesItem = await _client - .GetFromJsonAsync($"{_apiConfig.CatalogUri}/{id}"); + .GetFromJsonAsync($"{_apiConfig.CrmCatalog}/{id}"); return salesItem ?? new SalesItemView(); } } \ No newline at end of file diff --git a/Wonky.Client/HttpRepository/TaskItemHttpRepository.cs b/Wonky.Client/HttpRepository/TaskItemHttpRepository.cs index 8321eb73..a613b682 100644 --- a/Wonky.Client/HttpRepository/TaskItemHttpRepository.cs +++ b/Wonky.Client/HttpRepository/TaskItemHttpRepository.cs @@ -51,31 +51,31 @@ public class TaskItemHttpRepository : ITaskItemHttpRepository public async Task?> GetTaskList() { - return await _client.GetFromJsonAsync>($"{_apiConfig.TaskUri}", _options); + return await _client.GetFromJsonAsync>($"{_apiConfig.CrmTask}", _options); } public async Task?> GetTaskList(string workDate) { - return await _client.GetFromJsonAsync>($"{_apiConfig.TaskUri}/date/{workDate}", _options); + return await _client.GetFromJsonAsync>($"{_apiConfig.CrmTask}/date/{workDate}", _options); } public async Task GetTaskItem(string taskItemId) { - return await _client.GetFromJsonAsync($"{_apiConfig.TaskUri}/{taskItemId}", _options); + return await _client.GetFromJsonAsync($"{_apiConfig.CrmTask}/{taskItemId}", _options); } public async Task CreateTaskItem(TaskItemDto taskItem) { - await _client.PostAsJsonAsync($"{_apiConfig.TaskUri}", taskItem, _options); + await _client.PostAsJsonAsync($"{_apiConfig.CrmTask}", taskItem, _options); } public async Task UpdateTaskItem(string taskItemId, TaskItemDto taskItem) { - await _client.PutAsJsonAsync($"{_apiConfig.TaskUri}/{taskItemId}", taskItem, _options); + await _client.PutAsJsonAsync($"{_apiConfig.CrmTask}/{taskItemId}", taskItem, _options); } public async Task DeleteTaskItem(string taskItemId) { - await _client.DeleteAsync($"{_apiConfig.TaskUri}/{taskItemId}"); + await _client.DeleteAsync($"{_apiConfig.CrmTask}/{taskItemId}"); } } \ No newline at end of file diff --git a/Wonky.Client/HttpRepository/UserHttpRepository.cs b/Wonky.Client/HttpRepository/UserHttpRepository.cs index 7d9bc78a..7415df98 100644 --- a/Wonky.Client/HttpRepository/UserHttpRepository.cs +++ b/Wonky.Client/HttpRepository/UserHttpRepository.cs @@ -49,37 +49,37 @@ public class UserHttpRepository : IUserHttpRepository public async Task> GetAdvisors() { - return await _client.GetFromJsonAsync>(_api.AdminAdvisorUri); + return await _client.GetFromJsonAsync>(_api.AdminUser); } public async Task GetAdvisorInfo(string userId) { - return await _client.GetFromJsonAsync($"{_api.AdminAdvisorUri}/{userId}"); + return await _client.GetFromJsonAsync($"{_api.AdminUser}/{userId}"); } public async Task UpdateAdvisor(string userId, UserUpdateDto model) { - await _client.PutAsJsonAsync($"{_api.AdminAdvisorUri}/{userId}", model, _options); + await _client.PutAsJsonAsync($"{_api.AdminUser}/{userId}", model, _options); } public async Task> GetAdminUsers() { - return await _client.GetFromJsonAsync>(_api.AdminUserUri); + return await _client.GetFromJsonAsync>(_api.AdminOffice); } public async Task GetAdminUserInfo(string userId) { - return await _client.GetFromJsonAsync($"{_api.AdminUserUri}/{userId}"); + return await _client.GetFromJsonAsync($"{_api.AdminOffice}/{userId}"); } public async Task UpdateAdminUser(string userId, UserUpdateDto model) { - await _client.PutAsJsonAsync($"{_api.AdminUserUri}/{userId}", model, _options); + await _client.PutAsJsonAsync($"{_api.AdminOffice}/{userId}", model, _options); } public async Task ResetUserPassword(string userId, string newPasswd, string confirmPasswd) { var passwd = new Dictionary {{"newPassword", newPasswd}, {"confirmPassword", confirmPasswd}}; - await _client.PostAsJsonAsync($"{_api.AdminPasswdUri}/{userId}", passwd, _options); + await _client.PostAsJsonAsync($"{_api.AdminPasswd}/{userId}", passwd, _options); } } \ No newline at end of file diff --git a/Wonky.Client/HttpRepository/WarehouseHttpRepository.cs b/Wonky.Client/HttpRepository/WarehouseHttpRepository.cs index 24b10fd2..8791c5cb 100644 --- a/Wonky.Client/HttpRepository/WarehouseHttpRepository.cs +++ b/Wonky.Client/HttpRepository/WarehouseHttpRepository.cs @@ -32,21 +32,21 @@ public class WarehouseHttpRepository : IWarehouseHttpRepository public async Task> GetWarehouseOrderListByDate(string date) { - return await _client.GetFromJsonAsync>($"{_api.WarehouseUri}?date={date}", _options); + return await _client.GetFromJsonAsync>($"{_api.Warehouse}?date={date}", _options); } public async Task> GetWarehouseOrderListByStatus(string status) { - return await _client.GetFromJsonAsync>($"{_api.WarehouseUri}?status={status}", _options); + return await _client.GetFromJsonAsync>($"{_api.Warehouse}?status={status}", _options); } public async Task GetWarehouseOrder(string orderId) { - return await _client.GetFromJsonAsync($"{_api.WarehouseUri}/{orderId}", _options); + return await _client.GetFromJsonAsync($"{_api.Warehouse}/{orderId}", _options); } public async Task UpdateWarehouseOrderStatus(WarehouseProcess process) { _logger.LogDebug("process => {}", JsonSerializer.Serialize(process)); - await _client.PutAsJsonAsync($"{_api.WarehouseUri}/{process.OrderId}", process, _options); + await _client.PutAsJsonAsync($"{_api.Warehouse}/{process.OrderId}", process, _options); } } \ No newline at end of file diff --git a/Wonky.Client/Pages/ActivityNewVisitPage.razor b/Wonky.Client/Pages/ActivityNewVisitPage.razor index 910328a7..d86c839c 100644 --- a/Wonky.Client/Pages/ActivityNewVisitPage.razor +++ b/Wonky.Client/Pages/ActivityNewVisitPage.razor @@ -352,7 +352,7 @@ \ No newline at end of file diff --git a/Wonky.Client/Pages/AdminOfficeUserViewPage.razor b/Wonky.Client/Pages/AdminOfficeUserViewPage.razor index f5ad9c17..237e3d43 100644 --- a/Wonky.Client/Pages/AdminOfficeUserViewPage.razor +++ b/Wonky.Client/Pages/AdminOfficeUserViewPage.razor @@ -17,6 +17,7 @@ @page "/admin/users/office/{CountryCode}/{UserId}/view" @using Microsoft.AspNetCore.Authorization +@using Wonky.Client.Components @attribute [Authorize(Roles = "Admin")]
@@ -112,7 +113,7 @@ } else { - + }
\ No newline at end of file diff --git a/Wonky.Client/Pages/AdvisorReportNewPage.razor b/Wonky.Client/Pages/AdvisorReportNewPage.razor index 33404b86..64a8fe95 100644 --- a/Wonky.Client/Pages/AdvisorReportNewPage.razor +++ b/Wonky.Client/Pages/AdvisorReportNewPage.razor @@ -33,7 +33,7 @@
@if (_working) { - + }
diff --git a/Wonky.Client/Pages/CustomerViewPage.razor b/Wonky.Client/Pages/CustomerViewPage.razor index f1aa6fdb..bb17da22 100644 --- a/Wonky.Client/Pages/CustomerViewPage.razor +++ b/Wonky.Client/Pages/CustomerViewPage.razor @@ -219,5 +219,5 @@ } else { - + } \ No newline at end of file diff --git a/Wonky.Client/Pages/HelpPage.razor b/Wonky.Client/Pages/HelpPage.razor index df8ff86b..99122065 100644 --- a/Wonky.Client/Pages/HelpPage.razor +++ b/Wonky.Client/Pages/HelpPage.razor @@ -23,22 +23,44 @@ @attribute [Authorize(Roles = "Advisor,Admin,Office,Warehouse")]
-
- Wonky Logo -
-
-
Browservalg
- Den nyeste udgave af Google Chrome, Chromium, Microsoft Edge, Apple Safari eller Vivaldi. +
+
+ Wonky Logo +
+
-
-
+ +
+
+

Piktogrammer

-
-
- + +
+
+

Testede browsere

+
    +
  • Safari (macOS, iOS)
  • +
  • Chrome (Linux, Windows, Android)
  • +
  • Edge (Linux, Windows, Android)
  • +
  • Firefox (Linux, Windows, Android)
  • +
  • Chromium (Linux)
  • +
  • Vivaldi (Linux)
  • +
+
+
+ + diff --git a/Wonky.Client/Pages/Index.razor b/Wonky.Client/Pages/Index.razor index a62c0127..a5c3b475 100644 --- a/Wonky.Client/Pages/Index.razor +++ b/Wonky.Client/Pages/Index.razor @@ -27,6 +27,9 @@ + + + @code{ } diff --git a/Wonky.Client/Pages/Login.razor b/Wonky.Client/Pages/Login.razor index 61b27753..83b35065 100644 --- a/Wonky.Client/Pages/Login.razor +++ b/Wonky.Client/Pages/Login.razor @@ -61,7 +61,7 @@
@if (execLogin) { - + }
diff --git a/Wonky.Client/Pages/WarehouseOrderListPage.razor b/Wonky.Client/Pages/WarehouseOrderListPage.razor index c9e1f435..6c9faaf2 100644 --- a/Wonky.Client/Pages/WarehouseOrderListPage.razor +++ b/Wonky.Client/Pages/WarehouseOrderListPage.razor @@ -1,78 +1,6 @@ @using Microsoft.AspNetCore.Authorization +@using Wonky.Client.Components @attribute [Authorize(Roles = "Admin,Warehouse,Office")] @page "/warehouse/orders" -
-
-
- - - - - - - - -
-
-
- @if (_readyToShip && _orders.Any()) - { - - } -
-
-@if (_orders.Any()) -{ - -} \ No newline at end of file + \ No newline at end of file diff --git a/Wonky.Client/Pages/WarehouseOrderViewPage.razor b/Wonky.Client/Pages/WarehouseOrderViewPage.razor index 7c2ca59f..978cb7d5 100644 --- a/Wonky.Client/Pages/WarehouseOrderViewPage.razor +++ b/Wonky.Client/Pages/WarehouseOrderViewPage.razor @@ -1,4 +1,5 @@ @using Microsoft.AspNetCore.Authorization +@using Wonky.Client.Components @attribute [Authorize(Roles = "Admin,Warehouse,Office")] @page "/warehouse/orders/{OrderId}" @@ -99,5 +100,5 @@ } else { -
Ingen data
+ } \ No newline at end of file diff --git a/Wonky.Client/Services/AuthenticationService.cs b/Wonky.Client/Services/AuthenticationService.cs index 2c490cda..101b728c 100644 --- a/Wonky.Client/Services/AuthenticationService.cs +++ b/Wonky.Client/Services/AuthenticationService.cs @@ -54,7 +54,7 @@ namespace Wonky.Client.Services }; var response = await _client - .PostAsync(_apiConfig.Value.TokenUri, new FormUrlEncodedContent(credentials)); + .PostAsync(_apiConfig.Value.CrmAuth, new FormUrlEncodedContent(credentials)); var resContent = await response.Content.ReadAsStringAsync(); @@ -89,7 +89,7 @@ namespace Wonky.Client.Services ["grant_type"] = "refresh_token", ["refresh_token"] = refreshToken }; - var response = await _client.PostAsync(_apiConfig.Value.TokenUri, new FormUrlEncodedContent(credentials)); + var response = await _client.PostAsync(_apiConfig.Value.CrmAuth, new FormUrlEncodedContent(credentials)); if (!response.IsSuccessStatusCode) return string.Empty; @@ -119,7 +119,7 @@ namespace Wonky.Client.Services public async Task UserInfo(bool write = false) { - var infoResponse = await _client.GetAsync(_apiConfig.Value.UserInfoUri); + var infoResponse = await _client.GetAsync(_apiConfig.Value.CrmUser); var infoContent = await infoResponse.Content.ReadAsStringAsync(); var userInfo = JsonSerializer.Deserialize(infoContent, _options); if(write) diff --git a/Wonky.Client/Services/VatInfoLookupService.cs b/Wonky.Client/Services/VatInfoLookupService.cs index d66525d5..aa35d943 100644 --- a/Wonky.Client/Services/VatInfoLookupService.cs +++ b/Wonky.Client/Services/VatInfoLookupService.cs @@ -51,7 +51,7 @@ public class VatInfoLookupService ["houseNumber"] = $"{query.HouseNumber}", ["zipCode"] = $"{query.ZipCode}" }; - var endpoint = QueryHelpers.AddQueryString(_config.VirkUrl, queryString); + var endpoint = QueryHelpers.AddQueryString(_config.ServiceVirk, queryString); var response = await _client.GetAsync(endpoint); var content = await response.Content.ReadAsStringAsync(); var jsonResult = JsonSerializer.Deserialize>(content, _options); @@ -70,7 +70,7 @@ public class VatInfoLookupService { ["vatNumber"] = $"{vatNumber}" }; - var endpoint = QueryHelpers.AddQueryString(_config.BrRegUrl, queryString); + var endpoint = QueryHelpers.AddQueryString(_config.ServiceBrReg, queryString); var response = await _client.GetAsync(endpoint); var content = await response.Content.ReadAsStringAsync(); @@ -91,7 +91,7 @@ public class VatInfoLookupService { ["vatNumber"] = $"{vatNumber}" }; - var endpoint = QueryHelpers.AddQueryString(_config.ViesUrl, queryString); + var endpoint = QueryHelpers.AddQueryString(_config.ServiceVies, queryString); var response = await _client.GetAsync(endpoint); var content = await response.Content.ReadAsStringAsync(); diff --git a/Wonky.Client/Wonky.Client.csproj b/Wonky.Client/Wonky.Client.csproj index 40f7798a..ea0e6907 100644 --- a/Wonky.Client/Wonky.Client.csproj +++ b/Wonky.Client/Wonky.Client.csproj @@ -11,10 +11,10 @@ - - - - + + + + diff --git a/Wonky.Client/wwwroot/appsettings.json b/Wonky.Client/wwwroot/appsettings.json index 685675bf..597fa250 100644 --- a/Wonky.Client/wwwroot/appsettings.json +++ b/Wonky.Client/wwwroot/appsettings.json @@ -1,34 +1,32 @@ { "appInfo": { "name": "Wonky Client", - "version": "0.9.19", - "rc": true, + "version": "0.10.10", + "rc": false, "sandBox": false, "image": "grumpy-coder.png" }, "apiConfig": { - "innoBaseUrl": "https://staging.innotec.dk", + "innoBaseUrl": "https://production.innotec.dk", "glsTrackUrl": "https://www.gls-group.eu/276-I-PORTAL-WEB/content/GLS/DK01/DA/5004.htm?txtAction=71000&txtRefNo=", "glsId": "", - "virkUrl": "api/v2/services/virk", - "brRegUrl": "api/v2/services/brReg", - "viesUrl": "api/v2/services/vies", - "tokenUri": "token", - "userInfoUri": "api/auth/userinfo", - "catalogUri": "api/v2/crm/catalog", - "activityUri": "api/v2/crm/advisors/sales", - "reportUri": "api/v2/crm/advisors/reports", - "taskUri": "api/v2/crm/advisors/tasks", - "companyUri": "api/v2/crm/companies", - "inventoryUri": "history/inventory", - "productUri": "history/products", - "syncUri": "history/sync", - "adminAdvisorUri": "api/v2/admin/users/advisors", - "adminUserUri": "api/v2/admin/users/office", - "adminPasswdUri": "api/v2/admin/users/passwd", - "adminReportUri": "reports", - "adminCompanyUri": "companies", - "warehouseUri": "api/v2/warehouse/orders" + "servcieVirk": "api/v2/services/virk", + "serviceBrReg": "api/v2/services/brReg", + "servcieVies": "api/v2/services/vies", + "crmAuth": "token", + "crmUser": "api/auth/userinfo", + "crmCatalog": "api/v2/crm/catalog", + "crmSale": "api/v2/crm/advisors/sales", + "crmReport": "api/v2/crm/advisors/reports", + "crmTask": "api/v2/crm/advisors/tasks", + "crmCustomer": "api/v2/crm/companies", + "crmInventory": "history/inventory", + "crmProduct": "history/products", + "crmSync": "history/sync", + "adminUser": "api/v2/admin/users/advisors", + "adminOffice": "api/v2/admin/users/office", + "adminPasswd": "api/v2/admin/users/passwd", + "warehouse": "api/v2/warehouse/orders" }, "Logging": { "LogLevel": { diff --git a/Wonky.Client/wwwroot/index.html b/Wonky.Client/wwwroot/index.html index 8ac4b78a..7b07ccb0 100644 --- a/Wonky.Client/wwwroot/index.html +++ b/Wonky.Client/wwwroot/index.html @@ -3,28 +3,28 @@ Inno Web CRM - - + + - + - - - + + +
-
- Indlæser siden ... +
+ + loading ...
- - + + - diff --git a/Wonky.Client/wwwroot/svg-loaders/audio.svg b/Wonky.Client/wwwroot/svg-loaders/audio.svg new file mode 100644 index 00000000..ee151e0d --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/audio.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Wonky.Client/wwwroot/svg-loaders/ball-triangle.svg b/Wonky.Client/wwwroot/svg-loaders/ball-triangle.svg new file mode 100644 index 00000000..88b97e36 --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/ball-triangle.svg @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Wonky.Client/wwwroot/svg-loaders/bars.svg b/Wonky.Client/wwwroot/svg-loaders/bars.svg new file mode 100644 index 00000000..4c12b21d --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/bars.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/Wonky.Client/wwwroot/svg-loaders/circles.svg b/Wonky.Client/wwwroot/svg-loaders/circles.svg new file mode 100644 index 00000000..963f42b9 --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/circles.svg @@ -0,0 +1,20 @@ + + + + + + + + diff --git a/Wonky.Client/wwwroot/svg-loaders/grid.svg b/Wonky.Client/wwwroot/svg-loaders/grid.svg new file mode 100644 index 00000000..a398670d --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/grid.svg @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Wonky.Client/wwwroot/svg-loaders/hearts.svg b/Wonky.Client/wwwroot/svg-loaders/hearts.svg new file mode 100644 index 00000000..7fbec397 --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/hearts.svg @@ -0,0 +1,18 @@ + + + + + + + + + + diff --git a/Wonky.Client/wwwroot/svg-loaders/oval.svg b/Wonky.Client/wwwroot/svg-loaders/oval.svg new file mode 100644 index 00000000..2d156e6a --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/oval.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Wonky.Client/wwwroot/svg-loaders/puff.svg b/Wonky.Client/wwwroot/svg-loaders/puff.svg new file mode 100644 index 00000000..45f93f8f --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/puff.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/Wonky.Client/wwwroot/svg-loaders/rings.svg b/Wonky.Client/wwwroot/svg-loaders/rings.svg new file mode 100644 index 00000000..78f533c6 --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/rings.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Wonky.Client/wwwroot/svg-loaders/spinning-circles.svg b/Wonky.Client/wwwroot/svg-loaders/spinning-circles.svg new file mode 100644 index 00000000..2c08b2fc --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/spinning-circles.svg @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Wonky.Client/wwwroot/svg-loaders/tail-spin.svg b/Wonky.Client/wwwroot/svg-loaders/tail-spin.svg new file mode 100644 index 00000000..33ca851a --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/tail-spin.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/Wonky.Client/wwwroot/svg-loaders/three-dots.svg b/Wonky.Client/wwwroot/svg-loaders/three-dots.svg new file mode 100644 index 00000000..4c4fa60d --- /dev/null +++ b/Wonky.Client/wwwroot/svg-loaders/three-dots.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + diff --git a/Wonky.Entity/Configuration/ApiConfig.cs b/Wonky.Entity/Configuration/ApiConfig.cs index d15ba241..7b257c28 100644 --- a/Wonky.Entity/Configuration/ApiConfig.cs +++ b/Wonky.Entity/Configuration/ApiConfig.cs @@ -16,6 +16,11 @@ namespace Wonky.Entity.Configuration; public class ApiConfig { + /// + /// Application base url + /// + public string InnoBaseUrl { get; set; } = ""; + /// /// GLS tracking url /// @@ -29,90 +34,98 @@ public class ApiConfig /// /// VAT registrar url Denmark /// - public string VirkUrl { get; set; } = ""; + public string ServiceVirk { get; set; } = ""; /// /// VAT registrar url Norway /// - public string BrRegUrl { get; set; } = ""; + public string ServiceBrReg { get; set; } = ""; /// /// VAT registrar url EU /// - public string ViesUrl { get; set; } = ""; - - /// - /// Application base url - /// - public string InnoBaseUrl { get; set; } = ""; - - /// - /// Application uri for company information request - /// - public string CompanyUri { get; set; } = ""; - - /// - /// Application uri for product catalog request - /// - public string CatalogUri { get; set; } = ""; - - /// - /// Application uri for user information request - /// - public string UserInfoUri { get; set; } = ""; + public string ServiceVies { get; set; } = ""; /// /// Application uri for token request /// - public string TokenUri { get; set; } = ""; + public string CrmAuth { get; set; } = ""; + + /// + /// Application uri for user information request + /// + public string CrmUser { get; set; } = ""; + /// + /// Application uri for product catalog request + /// + public string CrmCatalog { get; set; } = ""; + /// /// Application uri for activity request /// - public string ActivityUri { get; set; } = ""; - + public string CrmSale { get; set; } = ""; + /// /// Application uri for sales report request /// - public string ReportUri { get; set; } = ""; - + public string CrmReport { get; set; } = ""; + /// /// Application uri for task items request /// - public string TaskUri { get; set; } = ""; + public string CrmTask { get; set; } = ""; + + /// + /// Application uri for customer information request + /// + public string CrmCustomer { get; set; } = ""; /// /// Application uri for customer product inventory request /// - public string InventoryUri { get; set; } = ""; + public string CrmInventory { get; set; } = ""; /// /// Application uri for customer product sale request /// - public string ProductUri { get; set; } = ""; + public string CrmProduct { get; set; } = ""; /// /// Application uri for updating customer product sale request /// - public string SyncUri { get; set; } = ""; + public string CrmSync { get; set; } = ""; /// /// Application uri for administration of sales representatives /// - public string AdminAdvisorUri { get; set; } = ""; + public string AdminUser { get; set; } = ""; /// /// Application uri for administration of administrative users /// - public string AdminUserUri { get; set; } = ""; + public string AdminOffice { get; set; } = ""; /// /// Application uri for administrative reset of user credentials /// - public string AdminPasswdUri { get; set; } = ""; + public string AdminPasswd { get; set; } = ""; - public string WarehouseUri { get; set; } = ""; + /// + /// Uri for warehouse requests + /// + public string Warehouse { get; set; } = ""; + // /// + // /// Application uri for reading salesReports + // /// + // public string AdminReport { get; set; } = ""; + // + // /// + // /// Application uri for handling external customer login + // /// + // public string AdminCompany { get; set; } = ""; + // public string KrvVariantsUri { get; set; } = ""; // public string KrvProductsUri { get; set; } = ""; // public string ImageUploadUri { get; set; } = ""; diff --git a/icon-512.png b/icon-512.png new file mode 100644 index 00000000..61d90191 Binary files /dev/null and b/icon-512.png differ