From e740f32fd7adc6d8c7e7f40714e7edb517340d9e Mon Sep 17 00:00:00 2001 From: Frede Hundewadt Date: Wed, 22 Feb 2023 15:23:55 +0100 Subject: [PATCH] WIP: rename pages --- Wonky.Client/Helpers/InputDateTime.cs | 150 ------------------ ...azor => AdvisorActivityViewEditPage.razor} | 0 ...s => AdvisorActivityViewEditPage.razor.cs} | 6 +- ...azor => AdvisorCustomerViewEditPage.razor} | 0 ...s => AdvisorCustomerViewEditPage.razor.cs} | 10 +- 5 files changed, 8 insertions(+), 158 deletions(-) delete mode 100644 Wonky.Client/Helpers/InputDateTime.cs rename Wonky.Client/Pages/{AdvisorActivityViewPage.razor => AdvisorActivityViewEditPage.razor} (100%) rename Wonky.Client/Pages/{AdvisorActivityViewPage.razor.cs => AdvisorActivityViewEditPage.razor.cs} (93%) rename Wonky.Client/Pages/{AdvisorCustomerViewPage.razor => AdvisorCustomerViewEditPage.razor} (100%) rename Wonky.Client/Pages/{AdvisorCustomerViewPage.razor.cs => AdvisorCustomerViewEditPage.razor.cs} (98%) diff --git a/Wonky.Client/Helpers/InputDateTime.cs b/Wonky.Client/Helpers/InputDateTime.cs deleted file mode 100644 index c75a2b92..00000000 --- a/Wonky.Client/Helpers/InputDateTime.cs +++ /dev/null @@ -1,150 +0,0 @@ - -// 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] -// - -using System.Globalization; -using Microsoft.AspNetCore.Components; -using Microsoft.AspNetCore.Components.Forms; -using Microsoft.AspNetCore.Components.Rendering; - -namespace Wonky.Client.Helpers; - -/// -/// InputDateTime Component -/// -/// -public class InputDateTime : InputDate -{ - private const string DateFormat = "yyyy-MM-ddTHH:mm"; - - /// - /// BuildTender - /// - /// - protected override void BuildRenderTree(RenderTreeBuilder builder) - { - builder.OpenElement(0, "input"); - builder.AddMultipleAttributes(1, AdditionalAttributes); - builder.AddAttribute(2, "type", "datetime-local"); - builder.AddAttribute(3, "class", CssClass); - builder.AddAttribute(4, "value", BindConverter.FormatValue(CurrentValueAsString)); - builder.AddAttribute(5, "onchange", - EventCallback.Factory.CreateBinder(this, __value => CurrentValueAsString = __value, - CurrentValueAsString)); - builder.CloseElement(); - } - - /// - /// Format value as string - /// - /// - /// - protected override string FormatValueAsString(TValue value) - { - return value switch - { - DateTime dateTimeValue => - BindConverter.FormatValue(dateTimeValue, DateFormat, CultureInfo.InvariantCulture), - DateTimeOffset dateTimeOffsetValue => BindConverter.FormatValue(dateTimeOffsetValue, DateFormat, - CultureInfo.InvariantCulture), - _ => string.Empty - }; - } - - /// - /// TryParseValueFromString - /// - /// - /// - /// - /// - /// - protected override bool TryParseValueFromString(string value, out TValue result, out string validationErrorMessage) - { - // Unwrap nullable types. We don't have to deal with receiving empty values for nullable - // types here, because the underlying InputBase already covers that. - var targetType = Nullable.GetUnderlyingType(typeof(TValue)) ?? typeof(TValue); - - bool success; - if (targetType == typeof(DateTime)) - { - success = TryParseDateTime(value, out result); - } - else if (targetType == typeof(DateTimeOffset)) - { - success = TryParseDateTimeOffset(value, out result); - } - else - { - throw new InvalidOperationException($"The type '{targetType}' is not a supported date type."); - } - - if (success) - { - validationErrorMessage = null; - return true; - } - else - { - validationErrorMessage = string.Format(ParsingErrorMessage, FieldIdentifier.FieldName); - return false; - } - } - - /// - /// TrypParseDateTime - /// - /// - /// - /// - private static bool TryParseDateTime(string value, out TValue result) - { - var success = - BindConverter.TryConvertToDateTime(value, CultureInfo.InvariantCulture, DateFormat, out var parsedValue); - if (success) - { - result = (TValue)(object)parsedValue; - return true; - } - else - { - result = default; - return false; - } - } - - /// - /// TryParseDateTimeOffset - /// - /// - /// - /// - private static bool TryParseDateTimeOffset(string value, out TValue result) - { - var success = - BindConverter.TryConvertToDateTimeOffset(value, CultureInfo.InvariantCulture, DateFormat, - out var parsedValue); - if (success) - { - result = (TValue)(object)parsedValue; - return true; - } - else - { - result = default; - return false; - } - } -} \ No newline at end of file diff --git a/Wonky.Client/Pages/AdvisorActivityViewPage.razor b/Wonky.Client/Pages/AdvisorActivityViewEditPage.razor similarity index 100% rename from Wonky.Client/Pages/AdvisorActivityViewPage.razor rename to Wonky.Client/Pages/AdvisorActivityViewEditPage.razor diff --git a/Wonky.Client/Pages/AdvisorActivityViewPage.razor.cs b/Wonky.Client/Pages/AdvisorActivityViewEditPage.razor.cs similarity index 93% rename from Wonky.Client/Pages/AdvisorActivityViewPage.razor.cs rename to Wonky.Client/Pages/AdvisorActivityViewEditPage.razor.cs index cb8aad8f..4c9a9bdd 100644 --- a/Wonky.Client/Pages/AdvisorActivityViewPage.razor.cs +++ b/Wonky.Client/Pages/AdvisorActivityViewEditPage.razor.cs @@ -26,13 +26,13 @@ using Wonky.Entity.Views; namespace Wonky.Client.Pages; -public partial class AdvisorActivityViewPage : IDisposable +public partial class AdvisorActivityViewEditPage : IDisposable { [Parameter] public string CompanyId { get; set; } = ""; [Parameter] public string OrderId { get; set; } = ""; [Inject] public HttpInterceptorService Interceptor { get; set; } [Inject] public IAdvisorActivityRepository AdvisorActivityRepo { get; set; } - [Inject] public ILogger Logger { get; set; } + [Inject] public ILogger Logger { get; set; } [Inject] public IToastService Toaster { get; set; } [Inject] public NavigationManager Navigator { get; set; } private ReportItemView ReportItem { get; set; } = new(); @@ -55,7 +55,7 @@ public partial class AdvisorActivityViewPage : IDisposable Working = false; } - private void HandleFieldChanged(object sender, FieldChangedEventArgs e) + private void HandleFieldChanged(object? sender, FieldChangedEventArgs? e) { StateHasChanged(); } diff --git a/Wonky.Client/Pages/AdvisorCustomerViewPage.razor b/Wonky.Client/Pages/AdvisorCustomerViewEditPage.razor similarity index 100% rename from Wonky.Client/Pages/AdvisorCustomerViewPage.razor rename to Wonky.Client/Pages/AdvisorCustomerViewEditPage.razor diff --git a/Wonky.Client/Pages/AdvisorCustomerViewPage.razor.cs b/Wonky.Client/Pages/AdvisorCustomerViewEditPage.razor.cs similarity index 98% rename from Wonky.Client/Pages/AdvisorCustomerViewPage.razor.cs rename to Wonky.Client/Pages/AdvisorCustomerViewEditPage.razor.cs index 86f9a215..4b141086 100644 --- a/Wonky.Client/Pages/AdvisorCustomerViewPage.razor.cs +++ b/Wonky.Client/Pages/AdvisorCustomerViewEditPage.razor.cs @@ -33,11 +33,11 @@ using Wonky.Entity.Views; namespace Wonky.Client.Pages; -public partial class AdvisorCustomerViewPage : IDisposable +public partial class AdvisorCustomerViewEditPage : IDisposable { [Parameter] public string CompanyId { get; set; } = ""; [Inject] public IToastService Toaster { get; set; } - [Inject] public ILogger Logger { get; set; } + [Inject] public ILogger Logger { get; set; } [Inject] public NavigationManager Navigator { get; set; } [Inject] public IAdvisorCustomerRepository CompanyRepo { get; set; } [Inject] public IAdvisorCustomerHistoryRepository HistoryRepo { get; set; } @@ -380,7 +380,7 @@ public partial class AdvisorCustomerViewPage : IDisposable /// /// /// - private void HandleFieldChanged(object sender, FieldChangedEventArgs e) + private void HandleFieldChanged(object? sender, FieldChangedEventArgs? e) { NextVisit = LastVisit.AddDays(Company.Interval * 7); // avoid nesting if by assuming ValidVat is false @@ -402,7 +402,7 @@ public partial class AdvisorCustomerViewPage : IDisposable private void ValidationChanged(object sender, ValidationStateChangedEventArgs e) { ErpContext.OnFieldChanged -= HandleFieldChanged; - ErpContext.OnValidationStateChanged -= ValidationChanged; + ErpContext.OnValidationStateChanged -= ValidationChanged!; ErpContext = new EditContext(Company); @@ -417,6 +417,6 @@ public partial class AdvisorCustomerViewPage : IDisposable { Interceptor.DisposeEvent(); ErpContext.OnFieldChanged -= HandleFieldChanged; - ErpContext.OnValidationStateChanged -= ValidationChanged; + ErpContext.OnValidationStateChanged -= ValidationChanged!; } } \ No newline at end of file