From 58e04c0df300bb2f4edb54bb7e3cf34a2cd88e73 Mon Sep 17 00:00:00 2001 From: Lyndon Date: Tue, 9 Sep 2025 10:27:54 +0200 Subject: [PATCH] . --- BeWoPlanerMobil.sln | 12 +- .../.vs/BeWoPlanerMobil.csproj.dtbcache.json | 2 +- BeWoPlanerMobil/BeWoPlanerMobil.csproj | 7 +- BeWoPlanerMobil/BeWoPlanerMobil.csproj.user | 13 +- BeWoPlanerMobil/Controllers/MainController.cs | 70 ++- .../Scripts/ownSoft-Scripts/mobileUtils.js | 8 + .../ownSoft-Scripts/utils/js-helper.js | 20 +- .../Scripts/ownSoft-Scripts/utils/logging.js | 12 +- .../utils/service-record-time-calc.js | 44 +- .../ownSoft-Scripts/view-scripts/main.js | 38 +- .../Service/ASPHibernateSessionManager.cs | 8 +- .../Util/FormCollectionConstants.cs | 3 +- .../Customer/CustomerBargeldkassen.cshtml | 2 +- ...omerBargeldtransaktionenFormPartial.cshtml | 2 +- .../Category2ServiceDescriptionPartial.cshtml | 17 +- .../Main/GoalRatingPopupContentPartial.cshtml | 16 +- .../Views/Main/GroupBookingFormPartial.cshtml | 45 +- .../Views/Main/GroupBookingPartial.cshtml | 109 ++-- BeWoPlanerMobil/Views/Main/Main.cshtml | 189 +++--- .../Views/Main/MultiBookingFormPartial.cshtml | 63 +- .../Views/Main/MultiBookingPartial.cshtml | 160 ++--- .../Main/MultiBookingSelectionPartial.cshtml | 2 +- .../RestoreServiceRecordInputsPartial.cshtml | 595 ++++++------------ .../Views/Main/SingleBookingPartial.cshtml | 274 ++++---- .../Views/Main/TextModulePartial.cshtml | 6 +- BeWoPlanerMobil/Views/Shared/_Layout.cshtml | 42 +- Shared/Extensions/DateTimeExtensions.cs | 30 + Shared/Extensions/StringExtensions.cs | 5 + .../BeWoDatabaseUpdater.csproj | 5 +- .../BeWoDatabaseUpdater/Program.cs | 120 +--- .../BeWoDatabaseUpdater/Utils.cs | 21 - 31 files changed, 871 insertions(+), 1069 deletions(-) delete mode 100644 Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/Utils.cs diff --git a/BeWoPlanerMobil.sln b/BeWoPlanerMobil.sln index 552eab665..036a7f5a1 100644 --- a/BeWoPlanerMobil.sln +++ b/BeWoPlanerMobil.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.31729.503 +# Visual Studio Version 17 +VisualStudioVersion = 17.14.36408.4 d17.14 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BeWoPlanerMobil", "BeWoPlanerMobil\BeWoPlanerMobil.csproj", "{284B02ED-114A-426C-9162-31BB6CF05589}" EndProject @@ -25,6 +25,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HausDuelken", "ReportImp\Ha EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FeidPartnerReports", "ReportImp\FeidPartnerReports\FeidPartnerReports.csproj", "{36E7D251-2F15-4589-81C2-6BDDC67F16AE}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Host", "Host\Host.csproj", "{E1154C7B-BB77-4155-9854-DAD8FC5A8BC3}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -92,6 +94,12 @@ Global {36E7D251-2F15-4589-81C2-6BDDC67F16AE}.DebugRemote|Any CPU.Build.0 = DebugRemote|Any CPU {36E7D251-2F15-4589-81C2-6BDDC67F16AE}.Release|Any CPU.ActiveCfg = Release|Any CPU {36E7D251-2F15-4589-81C2-6BDDC67F16AE}.Release|Any CPU.Build.0 = Release|Any CPU + {E1154C7B-BB77-4155-9854-DAD8FC5A8BC3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E1154C7B-BB77-4155-9854-DAD8FC5A8BC3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E1154C7B-BB77-4155-9854-DAD8FC5A8BC3}.DebugRemote|Any CPU.ActiveCfg = Debug|Any CPU + {E1154C7B-BB77-4155-9854-DAD8FC5A8BC3}.DebugRemote|Any CPU.Build.0 = Debug|Any CPU + {E1154C7B-BB77-4155-9854-DAD8FC5A8BC3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E1154C7B-BB77-4155-9854-DAD8FC5A8BC3}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/BeWoPlanerMobil/.vs/BeWoPlanerMobil.csproj.dtbcache.json b/BeWoPlanerMobil/.vs/BeWoPlanerMobil.csproj.dtbcache.json index e075b221f..43a6c575f 100644 --- a/BeWoPlanerMobil/.vs/BeWoPlanerMobil.csproj.dtbcache.json +++ b/BeWoPlanerMobil/.vs/BeWoPlanerMobil.csproj.dtbcache.json @@ -1 +1 @@ -{"RootPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\BeWoPlanerMobil","ProjectFileName":"BeWoPlanerMobil.csproj","Configuration":"Debug|AnyCPU","FrameworkPath":"","Sources":[],"References":[],"Analyzers":[],"Outputs":[{"OutputItemFullPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\BeWoPlanerMobil\\bin\\BeWoPlanerMobil.dll","OutputItemRelativePath":"BeWoPlanerMobil.dll"},{"OutputItemFullPath":"","OutputItemRelativePath":""}],"CopyToOutputEntries":[]} \ No newline at end of file +{"RootPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\BeWoPlanerMobil","ProjectFileName":"BeWoPlanerMobil.csproj","Configuration":"Debug|AnyCPU","FrameworkPath":"","Sources":[{"SourceFile":"App_Start\\BundleConfig.cs"},{"SourceFile":"App_Start\\FilterConfig.cs"},{"SourceFile":"App_Start\\RouteConfig.cs"},{"SourceFile":"App_Start\\WebApiConfig.cs"},{"SourceFile":"Controllers\\AbstractBaseController.cs"},{"SourceFile":"Controllers\\ChatController.cs"},{"SourceFile":"Controllers\\CustomerController.cs"},{"SourceFile":"Controllers\\DevToolsController.cs"},{"SourceFile":"Controllers\\DevExpressSchedulerController.cs"},{"SourceFile":"Controllers\\ExternalSignatureController.cs"},{"SourceFile":"Controllers\\ReportBaseController.cs"},{"SourceFile":"Controllers\\ReportController.cs"},{"SourceFile":"Controllers\\ReportViewerController.cs"},{"SourceFile":"Controllers\\SchedulerController.cs"},{"SourceFile":"Models\\AbstractModel.cs"},{"SourceFile":"Models\\MokZiel.cs"},{"SourceFile":"Models\\MokSupportConceptListObject.cs"},{"SourceFile":"Models\\MokMandator.cs"},{"SourceFile":"Models\\MokServiceRecord.cs"},{"SourceFile":"Models\\SchedulerSessionModel.cs"},{"SourceFile":"Models\\MainSessionModel.cs"},{"SourceFile":"Models\\ReportSessionModel .cs"},{"SourceFile":"Models\\ReportViewerSessionModel.cs"},{"SourceFile":"Models\\CustomerSessionModel.cs"},{"SourceFile":"Models\\CustomerModel.cs"},{"SourceFile":"Models\\DevToolsModel.cs"},{"SourceFile":"Models\\DevExpressSchedulerModel.cs"},{"SourceFile":"Models\\ExternalSignatureModel.cs"},{"SourceFile":"Models\\ISessionModel.cs"},{"SourceFile":"Models\\ReportModel.cs"},{"SourceFile":"Models\\ReportViewerModel.cs"},{"SourceFile":"Models\\SchedulerModel.cs"},{"SourceFile":"Util\\DcToMokMapper.cs"},{"SourceFile":"Util\\MokSettings.cs"},{"SourceFile":"Util\\AppointmentListItem.cs"},{"SourceFile":"Util\\BeWoLoginState.cs"},{"SourceFile":"Util\\BootstrapTreeViewItem.cs"},{"SourceFile":"Util\\ConvertedDateTimes.cs"},{"SourceFile":"Util\\FormCollectionConstants.cs"},{"SourceFile":"Util\\GoalRating.cs"},{"SourceFile":"Util\\GoalTreeItem.cs"},{"SourceFile":"Controllers\\LoginController.cs"},{"SourceFile":"Controllers\\MainController.cs"},{"SourceFile":"Util\\GroupBookingSelectionObject.cs"},{"SourceFile":"Util\\GroupOfPeopleItem.cs"},{"SourceFile":"Util\\HtmlHelperExtensions.cs"},{"SourceFile":"Util\\JsonAbsenceTime.cs"},{"SourceFile":"Util\\JsonCustomer.cs"},{"SourceFile":"Util\\JsonOrganisation.cs"},{"SourceFile":"Util\\MobileUserSettingsUtils.cs"},{"SourceFile":"Util\\MoKExtensions\\TagBuilderExtensions.cs"},{"SourceFile":"Util\\NullableDateTimeSpan.cs"},{"SourceFile":"Util\\PasswordUtils.cs"},{"SourceFile":"Util\\QuittierungsbelegItem.cs"},{"SourceFile":"Util\\QuittierungsbelegResult.cs"},{"SourceFile":"Util\\RecurrenceInformation.cs"},{"SourceFile":"Global.asax.cs"},{"SourceFile":"Models\\LoginModel.cs"},{"SourceFile":"Models\\MainModel.cs"},{"SourceFile":"Models\\ServiceCategoryModel.cs"},{"SourceFile":"Properties\\AssemblyInfo.cs"},{"SourceFile":"Service\\ASPHibernateSessionManager.cs"},{"SourceFile":"Service\\MobileSessionFacade.cs"},{"SourceFile":"Service\\MobileUpdInsInterceptor.cs"},{"SourceFile":"TestWebService.asmx.cs"},{"SourceFile":"Util\\MobileUtils.cs"},{"SourceFile":"Util\\ReferenceNumberWithNotice.cs"},{"SourceFile":"Util\\ReportUtils\\ConfirmationReceiptObject.cs"},{"SourceFile":"Util\\ReportUtils\\Quittierungsbelegsunterschriftenobjekt.cs"},{"SourceFile":"Util\\ReportUtils\\QuittierungsbelegsReportSettings.cs"},{"SourceFile":"Util\\ReportUtils\\ReportTimeFrame.cs"},{"SourceFile":"Util\\ServiceRecord2Validation.cs"},{"SourceFile":"Util\\SignatureUtils.cs"},{"SourceFile":"Util\\SupportConceptStatisticsData.cs"},{"SourceFile":"Util\\TextbausteinDisplayItem.cs"},{"SourceFile":"Util\\Umfeldsperson.cs"},{"SourceFile":"Util\\ValidationResult.cs"},{"SourceFile":"Util\\Watermarker.cs"},{"SourceFile":"Views\\DevExpressScheduler\\SchedulerHelper.cs"},{"SourceFile":"obj\\Debug\\.NETFramework,Version=v4.7.2.AssemblyAttributes.cs"}],"References":[{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Antlr.3.5.0.2\\lib\\Antlr3.Runtime.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Data\\bin\\Debug\\BeWo.Data.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":true,"ProjectPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Data\\bin\\Debug\\BeWo.Data.dll"},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Report\\bin\\Debug\\BeWo.Report.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":true,"ProjectPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Report\\bin\\Debug\\BeWo.Report.dll"},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Service\\bin\\Debug\\BeWo.Service.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":true,"ProjectPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Service\\bin\\Debug\\BeWo.Service.dll"},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Bogus.35.6.3\\lib\\net40\\Bogus.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Shared\\bin\\Debug\\BS.Shared.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":true,"ProjectPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Shared\\bin\\Debug\\BS.Shared.dll"},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Charts.v23.2.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.CodeParser.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Data.Desktop.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Data.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.DataAccess.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Drawing.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Mvvm.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Office.v23.2.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.PivotGrid.v23.2.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Printing.v23.2.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.RichEdit.v23.2.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.RichEdit.v23.2.Export.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Sparkline.v23.2.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Utils.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Web.ASPxScheduler.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Web.ASPxThemes.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Web.Mvc5.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Web.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.Xpo.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraCharts.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraEditors.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraPivotGrid.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraPrinting.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraReports.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraReports.v23.2.Extensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraReports.v23.2.Web.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraReports.v23.2.Web.WebForms.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraScheduler.v23.2.Core.Desktop.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraScheduler.v23.2.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraScheduler.v23.2.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraScheduler.v23.2.Reporting.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files\\DevExpress 23.2\\Components\\Bin\\Framework\\DevExpress.XtraScheduler.v23.2.Reporting.Extensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\EntityFramework.6.5.1\\lib\\net45\\EntityFramework.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\EntityFramework.6.5.1\\lib\\net45\\EntityFramework.SqlServer.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\log4net.3.1.0\\lib\\net462\\log4net.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.4.1.0\\lib\\net472\\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\Microsoft.CSharp.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebHelpers.3.3.0\\lib\\net45\\Microsoft.Web.Helpers.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.Web.Infrastructure.2.0.0\\lib\\net40\\Microsoft.Web.Infrastructure.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\mscorlib.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Newtonsoft.Json.Bson.1.0.3\\lib\\net45\\Newtonsoft.Json.Bson.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Newtonsoft.Json.13.0.3\\lib\\net45\\Newtonsoft.Json.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Lib\\NHibernate.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\PresentationCore.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\PresentationFramework.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\ReportService\\bin\\Debug\\ReportingService.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":true,"ProjectPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\ReportService\\bin\\Debug\\ReportingService.dll"},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\RestSharp.106.13.0\\lib\\net452\\RestSharp.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\System.Buffers.4.6.1\\lib\\net462\\System.Buffers.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.ComponentModel.DataAnnotations.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Configuration.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Core.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Data.DataSetExtensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Data.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Data.Entity.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Drawing.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.EnterpriseServices.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Net.Http.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.Net.Http.2.2.29\\lib\\net45\\System.Net.Http.Extensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebApi.Client.6.0.0\\lib\\net45\\System.Net.Http.Formatting.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.Net.Http.2.2.29\\lib\\net45\\System.Net.Http.Primitives.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Numerics.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\System.Numerics.Vectors.4.6.1\\lib\\net462\\System.Numerics.Vectors.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Lib\\System.Runtime.CompilerServices.Unsafe.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.ServiceModel.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\Lib\\System.Threading.Tasks.Extensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Web.Abstractions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Web.ApplicationServices.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Web.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Web.DynamicData.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Web.Entity.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Web.Extensions.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebPages.3.3.0\\lib\\net45\\System.Web.Helpers.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebApi.Core.5.3.0\\lib\\net45\\System.Web.Http.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebApi.WebHost.5.3.0\\lib\\net45\\System.Web.Http.WebHost.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.Mvc.5.3.0\\lib\\net45\\System.Web.Mvc.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.Web.Optimization.1.1.3\\lib\\net40\\System.Web.Optimization.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.Razor.3.3.0\\lib\\net45\\System.Web.Razor.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Web.Routing.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Web.Services.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebPages.3.3.0\\lib\\net45\\System.Web.WebPages.Deployment.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebPages.3.3.0\\lib\\net45\\System.Web.WebPages.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebPages.3.3.0\\lib\\net45\\System.Web.WebPages.Razor.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Windows.Forms.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Xaml.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Xml.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\System.Xml.Linq.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\WebGrease.1.6.0\\lib\\WebGrease.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebPages.Data.3.3.0\\lib\\net45\\WebMatrix.Data.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\packages\\Microsoft.AspNet.WebPages.WebData.3.3.0\\lib\\net45\\WebMatrix.WebData.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""},{"Reference":"C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\.NETFramework\\v4.7.2\\WindowsBase.dll","ResolvedFrom":"","OriginalItemSpec":"","Name":"","EmbedInteropTypes":false,"CopyLocal":false,"IsProjectReference":false,"ProjectPath":""}],"Analyzers":[],"Outputs":[{"OutputItemFullPath":"C:\\Users\\Lyndon\\Documents\\Entwicklung\\BeWo\\BeWoPlanerMobil\\bin\\BeWoPlanerMobil.dll","OutputItemRelativePath":"BeWoPlanerMobil.dll"},{"OutputItemFullPath":"","OutputItemRelativePath":""}],"CopyToOutputEntries":[]} \ No newline at end of file diff --git a/BeWoPlanerMobil/BeWoPlanerMobil.csproj b/BeWoPlanerMobil/BeWoPlanerMobil.csproj index 1a2ce855a..5a4a7d69b 100644 --- a/BeWoPlanerMobil/BeWoPlanerMobil.csproj +++ b/BeWoPlanerMobil/BeWoPlanerMobil.csproj @@ -39,17 +39,17 @@ 4 AnyCPU false - ES2015 + ES2021 React ES6 True False - False + True False True - True + False @@ -676,6 +676,7 @@ + diff --git a/BeWoPlanerMobil/BeWoPlanerMobil.csproj.user b/BeWoPlanerMobil/BeWoPlanerMobil.csproj.user index 197827697..b4ed802f5 100644 --- a/BeWoPlanerMobil/BeWoPlanerMobil.csproj.user +++ b/BeWoPlanerMobil/BeWoPlanerMobil.csproj.user @@ -1,4 +1,4 @@ - + false @@ -8,7 +8,7 @@ - Release|Any CPU + Debug|Any CPU ProjectFiles 600 MvcControllerEmptyScaffolder @@ -34,13 +34,10 @@ False False False - - + C:\Program Files\Google\Chrome\Application\chrome.exe http://localhost/BeWoPlanerMobil/Login/demo - - - - + --auto-open-devtools-for-tabs + C:\Program Files (x86)\IIS Express True False diff --git a/BeWoPlanerMobil/Controllers/MainController.cs b/BeWoPlanerMobil/Controllers/MainController.cs index 8c4933224..9762d7e13 100644 --- a/BeWoPlanerMobil/Controllers/MainController.cs +++ b/BeWoPlanerMobil/Controllers/MainController.cs @@ -2119,6 +2119,10 @@ namespace BeWoPlanerMobil.Controllers Model.SelectedCostBearerSupportConceptOid = cb2ScOid; Model.CurrentPage = 1; + + // Sorgt dafür, dass nach dem Neuladen die Abhängigkeiten vom Hilfeplan erhalten bleiben + TempData[TempDataConstants.SupportConceptRelSelectedKey] = true; + return RedirectToActionPermanent("Main");//ResetEditingMode(); } catch (Exception e) @@ -2590,7 +2594,7 @@ namespace BeWoPlanerMobil.Controllers [Authorize] public ActionResult SelectRecordToEdit(FormCollection formCollection) { - if (!IsUserLoggedIn()) + if(!IsUserLoggedIn()) { TempData[TempDataConstants.DoLogoutKey] = true; return Logout(); @@ -2616,6 +2620,10 @@ namespace BeWoPlanerMobil.Controllers return RedirectToActionPermanent("Main"); } +#if DEBUG + Model.SelectedServiceRecord = selectedServiceRecord; +#endif + Model.SelectedGoalOids = selectedServiceRecord.Goals.Select(g => g.ValueListEntryOid.Value).ToList(); Model.SelectedGoals = DcToMokMapper.CreateZiele(selectedServiceRecord.Goals); @@ -3749,6 +3757,9 @@ namespace BeWoPlanerMobil.Controllers CreateModelSupportConceptListObjects(false); LoadSupportConceptThings(null, true); + + // Sorgt dafür, dass nach dem Neuladen die Abhängigkeiten vom Hilfeplan erhalten bleiben + TempData[TempDataConstants.SupportConceptRelSelectedKey] = true; } [Authorize] @@ -4909,42 +4920,20 @@ namespace BeWoPlanerMobil.Controllers .ThenBy(serviceRecord => serviceRecord.End.Value.Minute) .ThenByDescending(serviceRecord => serviceRecord.InsertedOn.Value).ToList(); - var serviceRecordOids2GoalHeaders = new Dictionary>(); - var goalOids = new List(); - //var measures = new List(); serviceRecords.DoForEach(serviceRecord => { - //measures.AddRangeIfElementsNotIn(serviceRecord.Goals); goalOids.AddRangeIfElementsNotIn(serviceRecord.Goals.Where(goal => goal.ParentOid.HasValue).Select(goal => goal.ParentOid.Value)); }); var goalCategories = ValueListService.GetGoalCategoriesByOids(goalOids); - //serviceRecords.DoForEach(serviceRecord => - //{ - // if(serviceRecord.ServiceRecordOid is null) - // { - // return; - // } - - // serviceRecord.Goals.OrderBy(vle => $"{vle.Abbreviation}-{vle.TypeDescription}").DoForEach(goal => - // { - // var goalCategory = goalCategories.FirstOrDefault(g => g.ValueListEntryOid.HasValue && goal.ValueListEntryOid.HasValue && g.ValueListEntryOid.Value.Equals(goal.ValueListEntryOid.Value) || (g.ValueListEntryOid.HasValue && goal.ParentOid.HasValue && g.ValueListEntryOid.Value.Equals(goal.ParentOid.Value))); - - // if(goalCategory != null) - // { - // serviceRecordOids2GoalHeaders.AddOrUpdateValueInDictionary(serviceRecord.ServiceRecordOid.Value, new List { goalCategory.DisplayName }); - // } - // }); - //}); - Model.ServiceRecordOids2GoalHeader = GetServiceRecordOids2GoalHeaders(serviceRecords, goalCategories); Model.ServiceRecords = serviceRecords; - if (selectedPage > 1 && Model.ServiceRecordPageCount < selectedPage) + if(selectedPage > 1 && Model.ServiceRecordPageCount < selectedPage) { LoadPaginatedServiceRecordsToModel(1); } @@ -4987,7 +4976,6 @@ namespace BeWoPlanerMobil.Controllers { return LoadServiceRecordPage(Model.ServiceRecordPageCount); } - #endregion #region Einmal-Link für die Unterschrift @@ -5132,8 +5120,10 @@ namespace BeWoPlanerMobil.Controllers var dateInputValue = formCollection[FormCollectionConstants.DateKey]; var startTimeInputValue = formCollection[FormCollectionConstants.StartKey]; - var endTimeInputValue = formCollection[FormCollectionConstants.EndKey]; + var endDateInputValue = formCollection[FormCollectionConstants.EndDateKey]; + var endTimeInputValue = formCollection[FormCollectionConstants.EndKey]; + var doku1 = formCollection[FormCollectionConstants.Dokumentation1Key]; var doku2 = formCollection[FormCollectionConstants.Dokumentation2Key]; var doku3 = formCollection[FormCollectionConstants.Dokumentation3Key]; @@ -5141,7 +5131,7 @@ namespace BeWoPlanerMobil.Controllers var doku5 = formCollection[FormCollectionConstants.Dokumentation5Key]; var doku6 = formCollection[FormCollectionConstants.Dokumentation6Key]; var distanceInputValue = formCollection[FormCollectionConstants.DistanceKey]; - var markerInputValue = formCollection[FormCollectionConstants.MarkerKey]; + var marker = formCollection[FormCollectionConstants.MarkerKey] == "true"; var serviceDescriptionOidInputValue = formCollection[FormCollectionConstants.ServiceDescriptionKey]; var durationInputValue = formCollection[FormCollectionConstants.DurationKey]; var betragInputValue = formCollection[FormCollectionConstants.BetragKey]; @@ -5152,13 +5142,31 @@ namespace BeWoPlanerMobil.Controllers var selectedMultiBookingEmployeeOidsInputValue = formCollection[FormCollectionConstants.MultiBookingSelectedEmployeeOidsKey]; var selectedGoalOidsInputValue = formCollection[FormCollectionConstants.SelectedGoalOids]; - DateTime.TryParse(dateInputValue, out var date); - DateTime.TryParse(endDateInputValue, out var endDate); + var isStartDateValid = DateTime.TryParse(dateInputValue, out var startDate); + var isEndDateValid = DateTime.TryParse(endDateInputValue, out var endDate); decimal.TryParse(distanceInputValue, out var distance); - + decimal.TryParse(betragInputValue, out var betrag); + TempData[TempDataConstants.AfterRestoreKey] = true; - return View("Main", Model); + var serviceRecord = new ServiceRecordDC(); + + if(Model.SelectedServiceRecord is ServiceRecordDC selectedServiceRecord) + { + serviceRecord = selectedServiceRecord; + } + + serviceRecord.ServiceRecordType = marker ? ServiceRecordTypeId.Content : ServiceRecordTypeId.DefaultActivity; + serviceRecord.Start = startDate.MergeDateAndTimeString(startTimeInputValue); + + if(isEndDateValid == false) + { + endDate = startDate; + } + + serviceRecord.End = endDate.MergeDateAndTimeString(endTimeInputValue); + + return RedirectToActionPermanent("Main", Model); } } diff --git a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/mobileUtils.js b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/mobileUtils.js index 3bffb65fd..84490d05f 100644 --- a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/mobileUtils.js +++ b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/mobileUtils.js @@ -459,4 +459,12 @@ function getCurrentTimeStamp() { const milliseconds = String(3).padStart(3, now.getMilliseconds().toString()); return `${date}.${month}.${now.getFullYear()} ${hours}:${minutes}:${seconds}.${milliseconds}`; +} + +function firstCharToUpperCase(str) { + if(str === null || str === undefined || str.length === 0) { + return str; + } + + return str.charAt(0).toUpperCase() + str.slice(1); } \ No newline at end of file diff --git a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/js-helper.js b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/js-helper.js index d602562ab..11a504f27 100644 --- a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/js-helper.js +++ b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/js-helper.js @@ -1,7 +1,7 @@ function arrayContainsAllItems(a1, a2) { var result = true; - if (a1 !== null && a2 !== null && Array.isArray(a1) && Array.isArray(a2)) { + if (a1 !== undefined && a1 !== null && a2 !== undefined && a2 !== null && Array.isArray(a1) && Array.isArray(a2)) { for (let i = 0; i < a2.length; i++) { if (!a1.includes(a2[i])) { result = false; @@ -20,22 +20,22 @@ function isEmptyOrSpaces(str) { } function isInArray(value, array) { - if (value === undefined || value === null || array === undefined || array === null) { + if(value === undefined || value === null || array === undefined || array === null) { return false; } - if (!Array.isArray(array)) { + if(!Array.isArray(array)) { return false; } const intValue = parseInt(value, 10); - if (isNaN(intValue)) { + if(isNaN(intValue)) { return false; } - for (let i = 0; i < array.length; i++) { - if (array[i] === intValue) { + for(let i = 0; i < array.length; i++) { + if(array[i] === intValue) { return true; } } @@ -45,13 +45,13 @@ function isInArray(value, array) { function checkArraysForEquality(a1, a2) { try { - if (Array.isArray(a1) && Array.isArray(a2) && a1.length === a2.length) { + if(Array.isArray(a1) && Array.isArray(a2) && a1.length === a2.length) { a1 = a1.sort(); a2 = a2.sort(); - for(var i = 0; i < a1.length; i++) { - var obj1 = a1[i]; - var obj2 = a2[i]; + for(let i = 0; i < a1.length; i++) { + const obj1 = a1[i]; + const obj2 = a2[i]; if(typeof obj1 !== typeof obj2 || obj1 !== obj2) { return false; diff --git a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/logging.js b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/logging.js index c3997d000..2a085eadb 100644 --- a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/logging.js +++ b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/logging.js @@ -1,25 +1,25 @@ function logInfo(message) { - logColorfulMessage(message, "#FF0094"); + logColorfulMessage(message, "#990059"); } function logWarning(message) { - logColorfulMessage(message, "#FF5A00"); + logColorfulMessage(message, "#F2AA10"); } function logError(message) { - console.error(`%c${message}`, "font-size: 14px; font-family: monospace; color: red"); + console.error(`%c${message}`, "font-size: 16px; font-weight: bold; font-family: IBM Plex Mono; color: red"); } function logDebug(message) { - logColorfulMessage(message, "#AAF500"); + logColorfulMessage(message, "#6FA100"); } function logColorfulMessage(message, color) { - console.log(`%c${message}`, `font-size: 14px; font-family: monospace; color: ${color}`); + console.log(`%c${message}`, `font-size: 16px; font-weight: bold; font-family: IBM Plex Mono; color: ${color}`); } function logInfo2(message) { - logColorfulMessage(message, "#DBFF8C"); + logColorfulMessage(message, "#95AD5F"); } function logInfo3(message) { diff --git a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/service-record-time-calc.js b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/service-record-time-calc.js index 876bdba6d..330590a8c 100644 --- a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/service-record-time-calc.js +++ b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/utils/service-record-time-calc.js @@ -1,17 +1,17 @@ function calcDuration(idPrefix, isFormatChange, isInvokedByStart, isInvokedByEnd) { - const endDateInput = $(`#${idPrefix}-end-date-input`); - const startDateInput = $(`#${idPrefix}-start-date-input`); - const endTimeInput = $(`#${idPrefix}-end-time-input`); - const startTimeInput = $(`#${idPrefix}-start-time-input`); - const durationInput = $(`#${idPrefix}-duration-input`); + const endDateInput = $(`#${idPrefix}-end-date-input`); + const startDateInput = $(`#${idPrefix}-start-date-input`); + const endTimeInput = $(`#${idPrefix}-end-time-input`); + const startTimeInput = $(`#${idPrefix}-start-time-input`); + const durationInput = $(`#${idPrefix}-duration-input`); const hoursMinutesBtn = $(`#${idPrefix}-hours-minutes-dropdown-btn`); - const durationLabel = $(`#${idPrefix}-duration-label`); + const durationLabel = $(`#${idPrefix}-duration-label`); const startDateValue = startDateInput.val(); const startTimeValue = startTimeInput.val(); - const endDateValue = endDateInput.val(); - const endTimeValue = endTimeInput.val(); - const durationValue = durationInput.val(); + const endDateValue = endDateInput.val(); + const endTimeValue = endTimeInput.val(); + const durationValue = durationInput.val(); const hasMinutesHoursDropdown = hoursMinutesBtn.length > 0; @@ -46,12 +46,18 @@ endTimeInput.val(getTimeAsString(end)); endDateInput.val(getDateAsString(end)); + + updateEndDate(idPrefix, getDateAsString(end)); + updateEndTime(idPrefix, getTimeAsString(end)); } else if(true === isInvokedByEnd) { end.setDate(end.getDate() + 1); endTimeInput.val(getTimeAsString(end)); endDateInput.val(getDateAsString(end)); + + updateEndDate(idPrefix, getDateAsString(end)); + updateEndTime(idPrefix, getTimeAsString(end)); } dauer = (end.getTime() - start.getTime()) / 60000; @@ -62,8 +68,10 @@ } durationInput.val(dauer); + updateDuration(idPrefix, durationInput.val()); } else if(true === isStartTimeValid && true === isDurationValid) { var newDuration = duration; + if(true === isFormatChange) { let newDurationValue = true === isInMin ? duration * 60.0 : duration / 60.0; @@ -71,24 +79,27 @@ durationInput.val(""); } else { durationInput.val(newDurationValue); + updateDuration(idPrefix, durationInput.val()); } + if(true === isInMin) { newDuration = newDurationValue; } - } calcTimeWithDuration(startTimeValue, endTimeInput, start, newDuration, isFormatChange, isInMin); } else if(true === isEndTimeValid && true === isDurationValid) { if(true === isFormatChange) { durationInput.val(formatDuration(isInMin, true === isInMin ? duration * 60.0 : duration / 60.0)); + updateDuration(idPrefix, durationInput.val()); } calcTimeWithDuration(endTimeValue, startTimeInput, start, duration * -1.0, isFormatChange, isInMin); } else if(true === isFormatChange) { if (true === isFormatChange) { durationInput.val(formatDuration(isInMin, true === isInMin ? duration * 60.0 : duration / 60.0)); + updateDuration(idPrefix, durationInput.val()); } } } @@ -122,6 +133,7 @@ function calcTimeWithDuration(timeAsString, timeElement, start, duration, isForm const x = new Date(start.getTime() + duration * 60000); const timeString = `${x.getHours().toString().padStart(2, "0")}:${x.getMinutes().toString().padStart(2, "0")}`; timeElement.val(timeString); + timeElement.trigger("change"); } function beiDaueraenderung(idPrefix) { @@ -140,13 +152,15 @@ function beiDaueraenderung(idPrefix) { const startTimeCondition = startTimeInput.val().length > 0; const endTimeCondition = endTimeInput.val().length > 0; + var dauerString = durationInput.val(); - if (dauerString.indexOf(".") >= 0) { + + if(dauerString.indexOf(".") >= 0) { dauerString = dauerString.replace(".", ","); durationInput.val(dauerString); } + let duration = parseFloat(dauerString.replace(",", ".")); - const durationCondition = false === isNaN(duration); @@ -177,6 +191,9 @@ function beiDaueraenderung(idPrefix) { endTimeInput.val(getTimeAsString(end)); endDateInput.val(getDateAsString(end)); + + endTimeInput.trigger("change"); + endDateInput.trigger("change"); } else { const endDateAndTimeCombined = combineDateAndTime(end, endTimeInput.val()); @@ -184,6 +201,9 @@ function beiDaueraenderung(idPrefix) { startTimeInput.val(getTimeAsString(start)); startDateInput.val(getDateAsString(start)); + + startTimeInput.trigger("change"); + startDateInput.trigger("change"); } } diff --git a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/view-scripts/main.js b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/view-scripts/main.js index 7f52a77f5..202084fe6 100644 --- a/BeWoPlanerMobil/Scripts/ownSoft-Scripts/view-scripts/main.js +++ b/BeWoPlanerMobil/Scripts/ownSoft-Scripts/view-scripts/main.js @@ -2,24 +2,11 @@ showSpinner(); $("#sb-cb2ScRelOid").val(cb2ScOid); - window.saveItemValueLocally(document.getElementById("sb-cb2ScRelOid")); + window.updateCbScRelOids("sb", cb2ScOid); $("#selectSupportConceptForm").submit(); } -function setSelectedEmployee() { - const employeeOid = parseInt($("#employeesDropDown").find(":selected").val()); - - if(isNaN(employeeOid)) { - return; - } - - $("#sb-employee-input").val(employeeOid); - window.saveItemValueLocally($("#sb-employee-input").val()); - - $.get(window.getSetServiceRecordEmployeeUrl(), { employeeOid: employeeOid }); -} - function checkJson(str) { try { JSON.parse(str); @@ -301,18 +288,15 @@ function validateForm(form, prefix) { $("#srv-duration").val(duration); $("#srv-betrag").val(betrag); - window.saveItemValueLocally(document.getElementById(`${prefix}-start-date-input`)); - window.saveItemValueLocally(document.getElementById(`${prefix}-end-date-input`)); - window.saveItemValueLocally(document.getElementById(`${prefix}-start-time-input`)); - window.saveItemValueLocally(document.getElementById(`${prefix}-end-time-input`)); - window.saveItemValueLocally(document.getElementById(`${prefix}-distance-input`)); - window.saveItemValueLocally(document.getElementById(`${prefix}-marker-cb`)); - - - window.saveItemValueLocally(document.getElementById(`${prefix}-service-description-${serviceDescriptionOid}`)); - - window.saveItemValueLocally(document.getElementById(`${prefix}-duration-input`)); - window.saveItemValueLocally(document.getElementById(`${prefix}-betrag`)); + window.updateStartDate(prefix, $(`${prefix}-start-date-input`).val()); + window.updateStartTime(prefix, $(`${prefix}-start-time-input`).val()); + window.updateEndDate(prefix, $(`${prefix}-end-date-input`).val()); + window.updateEndTime(prefix, $(`${prefix}-end-time-input`).val()); + window.updateDistance(prefix, $(`${prefix}-distance-input`).val()); + window.updateMarker(prefix, $(`${prefix}-marker-cb`).val()); + window.updateServiceDescription(prefix, $(`${prefix}-service-description-${serviceDescriptionOid}`).val()); + window.updateDuration(prefix, $(`${prefix}-duration-input`).val()); + window.updateBetrag(prefix, $(`${prefix}-betrag`).val()); showSpinner(); $("#service-record-validation-form").submit(); @@ -513,7 +497,7 @@ function setServiceDescription(id) { const selectedServiceDescription = selectedOption.val(); - window.saveServiceDescriptionLocally(selectedServiceDescription); + window.updateServiceDescription(id.split("-")[0], selectedServiceDescription); $.get(url, {pServiceDescriptionOid: selectedServiceDescription}); } catch(error) { diff --git a/BeWoPlanerMobil/Service/ASPHibernateSessionManager.cs b/BeWoPlanerMobil/Service/ASPHibernateSessionManager.cs index 102139bd2..085d9b200 100644 --- a/BeWoPlanerMobil/Service/ASPHibernateSessionManager.cs +++ b/BeWoPlanerMobil/Service/ASPHibernateSessionManager.cs @@ -64,7 +64,13 @@ namespace BeWoPlanerMobil.Service if(!File.Exists(serverPath)) { - return null; + serverPath = HttpContext.Current.Server.MapPath(null); + serverPath = Path.Combine(serverPath, Path.Combine(@"..\..\", Path.Combine(multitenancyPath, configFileName))); + + if(!File.Exists(serverPath)) + { + return null; + } } } diff --git a/BeWoPlanerMobil/Util/FormCollectionConstants.cs b/BeWoPlanerMobil/Util/FormCollectionConstants.cs index c5a31022d..674d72321 100644 --- a/BeWoPlanerMobil/Util/FormCollectionConstants.cs +++ b/BeWoPlanerMobil/Util/FormCollectionConstants.cs @@ -38,8 +38,6 @@ public static string MultiBookingSelectedEmployeeOidsKey => "service-record-multi-booking-employee-oids"; public static string SingleBookingEmployeeOidKey => "service-record-single-booking-employee-oid"; public static string SelectedGoalOids => "service-record-selected-goal-oids"; - public static string GroupBookingSelectedGroupOidsKey => "service-record-group-booking-employee-oids"; - public static string MultiBookingSelectedGroupOidsKey => "service-record-multi-booking-employee-oids"; public static string BookingModeKey => "BookingMode"; @@ -97,5 +95,6 @@ public static string AfterRestoreKey => "AfterRestore"; public static string SaveSupportConceptDependenciesKey => "SaveSupportConceptDependencies"; public static string DeleteLocalInputsKey => "DeleteLocalInputsKey"; + public static string SupportConceptRelSelectedKey => "SupportConceptRelSelected"; } } \ No newline at end of file diff --git a/BeWoPlanerMobil/Views/Customer/CustomerBargeldkassen.cshtml b/BeWoPlanerMobil/Views/Customer/CustomerBargeldkassen.cshtml index 5443bce64..00c32d392 100644 --- a/BeWoPlanerMobil/Views/Customer/CustomerBargeldkassen.cshtml +++ b/BeWoPlanerMobil/Views/Customer/CustomerBargeldkassen.cshtml @@ -465,7 +465,7 @@
- +
@{ var count = 0; diff --git a/BeWoPlanerMobil/Views/Customer/CustomerBargeldtransaktionenFormPartial.cshtml b/BeWoPlanerMobil/Views/Customer/CustomerBargeldtransaktionenFormPartial.cshtml index 2322815ec..909fde3bb 100644 --- a/BeWoPlanerMobil/Views/Customer/CustomerBargeldtransaktionenFormPartial.cshtml +++ b/BeWoPlanerMobil/Views/Customer/CustomerBargeldtransaktionenFormPartial.cshtml @@ -142,7 +142,7 @@ { if(selectedBargeldtransaktion.Zahlungsdatum.HasValue) { - transaktionsdatum = selectedBargeldtransaktion.Zahlungsdatum.Value.ToString("dd.MM.yyyy"); + transaktionsdatum = selectedBargeldtransaktion.Zahlungsdatum.Value.ToString("yyyy-MM-dd"); } transaktionsbelegnummer = selectedBargeldtransaktion.Belegnummer; diff --git a/BeWoPlanerMobil/Views/Main/Category2ServiceDescriptionPartial.cshtml b/BeWoPlanerMobil/Views/Main/Category2ServiceDescriptionPartial.cshtml index 602fa3493..3623554c9 100644 --- a/BeWoPlanerMobil/Views/Main/Category2ServiceDescriptionPartial.cshtml +++ b/BeWoPlanerMobil/Views/Main/Category2ServiceDescriptionPartial.cshtml @@ -41,12 +41,15 @@ function setSelectedServiceCategory() { const selectedCategoryOid = $("#@(Model.BookingModePrefix)-category-select").find(":selected").val(); - $("#category-to-description-container").load("@Url.Action("SetSelectedServiceCategory")", {categoryOidStr: selectedCategoryOid}, function() { - window.saveServiceCategoryLocally($("#@prefix-category-select").find(":selected").val()); - window.saveServiceDescriptionLocally($("#@prefix-leistung-select").find(":selected").val()); + window.updateCategory("@prefix", selectedCategoryOid); - $("#tree").load("@Url.Action("LoadUpToDateTextModules")"); - }); + $("#category-to-description-container").load("@Url.Action("SetSelectedServiceCategory")", {categoryOidStr: selectedCategoryOid}, + function() { + window.updateServiceDescription("@prefix", $("#@prefix-leistung-select").find(":selected").val()); + + $("#tree").load("@Url.Action("LoadUpToDateTextModules")"); + } + ); } $(document).ready(function() { @@ -54,11 +57,11 @@ window.addEventListener("load", function() { $("#@prefix-category-select").on("change", function() { - window.saveServiceCategoryLocally($("#@prefix-category-select").find(":selected").val()); + window.updateCategory("@prefix", $("#@prefix-category-select").find(":selected").val()); }); $("#@prefix-leistung-select").on("change", function() { - window.saveServiceDescriptionLocally($("#@prefix-leistung-select").find(":selected").val()); + window.updateServiceDescription("@prefix", $("#@prefix-leistung-select").find(":selected").val()); }); }); }); diff --git a/BeWoPlanerMobil/Views/Main/GoalRatingPopupContentPartial.cshtml b/BeWoPlanerMobil/Views/Main/GoalRatingPopupContentPartial.cshtml index b3f99c37f..d57cad4f4 100644 --- a/BeWoPlanerMobil/Views/Main/GoalRatingPopupContentPartial.cshtml +++ b/BeWoPlanerMobil/Views/Main/GoalRatingPopupContentPartial.cshtml @@ -1,9 +1,8 @@ -@using BeWoPlanerMobil.Models -@using BeWoPlanerMobil.Util +@using BeWoPlanerMobil.Util @model BeWoPlanerMobil.Models.MainModel @{ - if(TempData[TempDataConstants.DoLogoutKey] is bool doLogout && doLogout) + if(TempData[TempDataConstants.DoLogoutKey] is true) { @@ -122,7 +110,7 @@
- +
@@ -147,7 +135,7 @@ Betrag
- +
@@ -173,7 +161,7 @@ Startdatum - + @if(Model.IsEndDateVisible) @@ -185,7 +173,7 @@ Enddatum - + } @@ -219,11 +207,11 @@ Von - + Bis - + @@ -241,7 +229,7 @@ @labelText - + @if(Model.IsZeiterfassungInStdMin) {
@@ -269,7 +257,7 @@
Gefahrene Kilometer
- +
@@ -292,8 +280,8 @@ @if(Model.NumberOfDokuTypes == 0) {
- - + +
} else @@ -316,7 +304,7 @@ var textareaName = i + 1 < 1 ? "Dokumentation" : "Dokumentation" + (i + 1);
- +
} @@ -345,6 +333,5 @@ } @Html.Partial("RestoreServiceRecordInputsPartial", Model) - } \ No newline at end of file diff --git a/BeWoPlanerMobil/Views/Main/GroupBookingPartial.cshtml b/BeWoPlanerMobil/Views/Main/GroupBookingPartial.cshtml index 68bc68b3a..1c4fc1124 100644 --- a/BeWoPlanerMobil/Views/Main/GroupBookingPartial.cshtml +++ b/BeWoPlanerMobil/Views/Main/GroupBookingPartial.cshtml @@ -6,76 +6,95 @@ { } } @using(Html.BeginForm("ResetGroupBookingForm", "Main", FormMethod.Post, new { Id = "reset-group-booking-form-form" })) diff --git a/BeWoPlanerMobil/Views/Main/Main.cshtml b/BeWoPlanerMobil/Views/Main/Main.cshtml index ff83da3e4..e3fafa98b 100644 --- a/BeWoPlanerMobil/Views/Main/Main.cshtml +++ b/BeWoPlanerMobil/Views/Main/Main.cshtml @@ -1,5 +1,6 @@ @using BeWoPlanerMobil.Models; @using BeWoPlanerMobil.Util; +@using BS.Shared @model MainModel @{ @@ -25,6 +26,8 @@ } @@ -105,7 +105,7 @@
- +
@@ -150,7 +150,7 @@ Startdatum
- + @if(Model.IsEndDateVisible) @@ -162,7 +162,7 @@ Enddatum - + } @@ -197,11 +197,11 @@ Von - + Bis - + @@ -219,7 +219,7 @@ @labelText - + @if(Model.IsZeiterfassungInStdMin) {
@@ -249,7 +249,7 @@ Gefahrene Kilometer
- + @@ -273,7 +273,7 @@ {
- +
} else @@ -296,7 +296,7 @@ var textareaName = i + 1 < 1 ? "Dokumentation" : "Dokumentation" + (i + 1);
- +
} @@ -315,6 +315,5 @@ } @Html.Partial("RestoreServiceRecordInputsPartial", Model) - } \ No newline at end of file diff --git a/BeWoPlanerMobil/Views/Main/MultiBookingPartial.cshtml b/BeWoPlanerMobil/Views/Main/MultiBookingPartial.cshtml index 05a48d2e4..15a34bd26 100644 --- a/BeWoPlanerMobil/Views/Main/MultiBookingPartial.cshtml +++ b/BeWoPlanerMobil/Views/Main/MultiBookingPartial.cshtml @@ -6,103 +6,123 @@ { } }
diff --git a/BeWoPlanerMobil/Views/Main/MultiBookingSelectionPartial.cshtml b/BeWoPlanerMobil/Views/Main/MultiBookingSelectionPartial.cshtml index baddcc70b..ee45788c7 100644 --- a/BeWoPlanerMobil/Views/Main/MultiBookingSelectionPartial.cshtml +++ b/BeWoPlanerMobil/Views/Main/MultiBookingSelectionPartial.cshtml @@ -17,7 +17,7 @@
-
+ @* (Mehrfachbuchung) Ausgewählte Hilfepläne *@
diff --git a/BeWoPlanerMobil/Views/Main/RestoreServiceRecordInputsPartial.cshtml b/BeWoPlanerMobil/Views/Main/RestoreServiceRecordInputsPartial.cshtml index 46aee2de1..827c28196 100644 --- a/BeWoPlanerMobil/Views/Main/RestoreServiceRecordInputsPartial.cshtml +++ b/BeWoPlanerMobil/Views/Main/RestoreServiceRecordInputsPartial.cshtml @@ -1,483 +1,266 @@  @using BeWoPlanerMobil.Service @using BeWoPlanerMobil.Util +@using BS.Shared @model BeWoPlanerMobil.Models.MainModel @* - ToDo: Bei Hilfeplan schauen, ob die Ziele/Maßnahmen, Kategorie/Leistung, Textbausteines korrekt sind. -*@ + ToDo: Bei Hilfeplan schauen, ob die Ziele/Maßnahmen, Kategorie/Leistung, Textbausteines korrekt sind. +*@ + -@if(TempData[TempDataConstants.AfterRestoreKey] is bool and true) -{ - - - -} -@using(Html.BeginForm("RestoreServiceRecordForm", "Main", FormMethod.Post, new {id="restore-service-record-form"})) +@using(Html.BeginForm("RestoreServiceRecordForm", "Main", FormMethod.Post, new { id = "restore-service-record-form" })) { - + + + - + + + + + + + + + + - - - - - - - - + } + + + +@if(Html.IsInDebugMode()) +{ + +} \ No newline at end of file diff --git a/BeWoPlanerMobil/Views/Main/SingleBookingPartial.cshtml b/BeWoPlanerMobil/Views/Main/SingleBookingPartial.cshtml index ae0c7b53d..532eae60a 100644 --- a/BeWoPlanerMobil/Views/Main/SingleBookingPartial.cshtml +++ b/BeWoPlanerMobil/Views/Main/SingleBookingPartial.cshtml @@ -5,147 +5,167 @@ @model MainModel @{ - if(TempData[TempDataConstants.DoLogoutKey] is bool and true) + if(TempData[TempDataConstants.DoLogoutKey] is true) { } } @using(Html.BeginForm("ResetSingleBookingForm", "Main", FormMethod.Post, new { Id = "reset-single-booking-form-form" })) { } @@ -274,7 +294,7 @@ } } - +
@@ -309,7 +329,7 @@
- +
@@ -334,7 +354,7 @@ Betrag
- +
@@ -373,7 +393,7 @@ Startdatum - + @if(Model.IsEndDateVisible) @@ -385,7 +405,7 @@ Enddatum - + } @@ -398,11 +418,11 @@ Von - + Bis - + @@ -420,7 +440,7 @@ @labelText - + @if(Model.IsZeiterfassungInStdMin) {
@@ -450,7 +470,7 @@ Gefahrene Kilometer
- + @@ -461,10 +481,10 @@ @if(Model.HasRightToSeeTextModules) { + function textModuleButtonOnClick() { + $('#tree').load('@Url.Action("LoadUpToDateTextModules")'); + } +
@@ -479,7 +499,7 @@ {
- +
} else @@ -490,7 +510,7 @@ var currentDokuType = Model.Dokutypes[i]; @@ -502,7 +522,7 @@ var textareaName = i + 1 < 1 ? "Dokumentation" : "Dokumentation" + (i + 1);
- +
}
diff --git a/BeWoPlanerMobil/Views/Main/TextModulePartial.cshtml b/BeWoPlanerMobil/Views/Main/TextModulePartial.cshtml index 561eb90f5..48d672bf7 100644 --- a/BeWoPlanerMobil/Views/Main/TextModulePartial.cshtml +++ b/BeWoPlanerMobil/Views/Main/TextModulePartial.cshtml @@ -40,7 +40,7 @@ prefix = "mb"; } - const dokufeldId = `#${prefix}-dokufeld-textarea`; + const dokufeldId = `#${prefix}-doku-textarea`; const dokuTextareaId = `#${prefix}-doku-textarea-`; const textareaContainerId = `#${prefix}-doku_`; @@ -51,10 +51,10 @@ const numberOfDokutypes = getNumberOfDokutypes(); for(let i = 0; i < numberOfDokutypes; i++) { - const currentElement = $(`#${prefix}-doku_${i}`); + const currentElement = $(`${textareaContainerId}${i}`); if(currentElement.css("display") !== "none") { - focusedDokuFeld = $(dokuTextareaId + i); + focusedDokuFeld = $(`${dokuTextareaId}${i}`); break; } } diff --git a/BeWoPlanerMobil/Views/Shared/_Layout.cshtml b/BeWoPlanerMobil/Views/Shared/_Layout.cshtml index 34ceca949..e96a768cd 100644 --- a/BeWoPlanerMobil/Views/Shared/_Layout.cshtml +++ b/BeWoPlanerMobil/Views/Shared/_Layout.cshtml @@ -2,9 +2,9 @@ @using BeWoPlanerMobil.Models @using BeWoPlanerMobil.Service @using BeWoPlanerMobil.Util -@using DevExpress.XtraReports.Web + - + @@ -51,7 +51,7 @@ - + @@ -254,7 +254,7 @@ }); function toggleRestoreButton() { - const state = !window.getRestoreButtonState(); + const state = false; if($(".bewo-restore-btn").length > 0) { $(".bewo-restore-btn").each(function(index, item) { @@ -396,12 +396,16 @@ } - } - @if(Html.IsInDebugMode()) - { + +
+ + @if(Html.IsInDebugMode()) + { + + } @if(TempData[TempDataConstants.ErrorMessageKey] is string errorMessage) { diff --git a/Shared/Extensions/DateTimeExtensions.cs b/Shared/Extensions/DateTimeExtensions.cs index 912673c46..8179b80f8 100644 --- a/Shared/Extensions/DateTimeExtensions.cs +++ b/Shared/Extensions/DateTimeExtensions.cs @@ -2,6 +2,7 @@ using System.Globalization; using BS.Shared.Core; using System.Collections.Generic; +using System.Text.RegularExpressions; using DevExpress.XtraScheduler; namespace BS.Shared.Extensions @@ -28,6 +29,8 @@ namespace BS.Shared.Extensions public static class DateTimeExtensions { + private static string _TimePattern = @"^(?:[01]\d|2[0-3]):[0-5]\d$"; + public static DateTimeUnit GetDateTimeUnit(this DateTime Date1, DateTime Date2, TimeUnit unit) { List period = new List() { Date1, Date2 }; @@ -720,5 +723,32 @@ namespace BS.Shared.Extensions { return date.Hour == date2.Hour && date.Minute == date2.Minute && date.Second == date2.Second; } + + /// + /// Fügt einem Datumsobjekt die Uhrzeit aus einem Uhrzeitenstring im Format HH:mm hinzu. Ist der Uhrzeitenstring ungültig, wird 00:00:00 Uhr genommen. + /// Ist aber useSecond1IfNoValidTimeString true, wird 00:00:01 Uhr für ServiceRecords genommen, die ohne Uhrzeit gespeichert werden. + /// + /// Datum, dem der Uhrzeitteil hinzugefügt werden soll + /// Die Zeichenkette mit dem Uhrzeitteil im Format HH:mm + /// Flag, das bestimmt, ob die Sekunde bei fehlendem/ungültigem Uhrzeitteil auf 1 gesetzt werden soll. + /// Das Datumsobjekt mit Uhrzeitteil. + public static DateTime MergeDateAndTimeString(this DateTime date, string timeString, bool useSecond1IfNoValidTimeString = false) + { + if(Regex.IsMatch(timeString, _TimePattern)) + { + var hour2Minute = timeString.Split(':'); + + var hour = int.Parse(hour2Minute[0]); + var minute = int.Parse(hour2Minute[1]); + + date.MergeDateWithHoursMinutesSeconds(hour, minute, 0); + } + else if(useSecond1IfNoValidTimeString) + { + date.MergeDateWithHoursMinutesSeconds(0, 0, 1); + } + + return date; + } } } \ No newline at end of file diff --git a/Shared/Extensions/StringExtensions.cs b/Shared/Extensions/StringExtensions.cs index 802851889..8d2003789 100644 --- a/Shared/Extensions/StringExtensions.cs +++ b/Shared/Extensions/StringExtensions.cs @@ -84,6 +84,11 @@ namespace BS.Shared.Extensions throw new ArgumentException("Not found.", "description"); } + /// + /// Ersetzt das große ẞ durch ein kleines, da das große ẞ nicht von latin01 inder Datenbank unterstützt wird. + /// + /// String, der möglicherweise ein großes ẞ enthält. + /// pString, mit ersetzten, großen ẞ, falls vorher vorhanden. public static string RemoveUppercaseEsszett(this string pString) { return pString?.Replace("ẞ", "ß"); diff --git a/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/BeWoDatabaseUpdater.csproj b/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/BeWoDatabaseUpdater.csproj index 01232a757..70bfc9cf3 100644 --- a/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/BeWoDatabaseUpdater.csproj +++ b/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/BeWoDatabaseUpdater.csproj @@ -110,9 +110,11 @@ + - + + @@ -130,5 +132,6 @@ false + \ No newline at end of file diff --git a/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/Program.cs b/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/Program.cs index 08eac9988..018cb8fec 100644 --- a/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/Program.cs +++ b/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/Program.cs @@ -1,6 +1,5 @@ using System; using System.Collections.Generic; -using System.Data; using System.Diagnostics; using System.IO; using System.Linq; @@ -8,7 +7,7 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using BeWoDatabaseUpdater.Extensions; -using MySql.Data.MySqlClient; +using BeWoDatabaseUpdater.Utils; namespace BeWoDatabaseUpdater { @@ -29,6 +28,8 @@ namespace BeWoDatabaseUpdater private static readonly List _LastAccessTimes = []; private static readonly Stopwatch _Stopwatch = new(); + private static int _OpenDbConnections = 0; + private static async Task Main(string[] args) { var settingsFilePath = Path.Combine(AppContext.BaseDirectory, UpdaterSettingsFilePath); @@ -51,7 +52,7 @@ namespace BeWoDatabaseUpdater if(string.IsNullOrWhiteSpace(_ConnectionString)) { Console.WriteLine(); - Console.Write("Connection String: "); + Console.Write("Connection String (Server, User Id, Passwort): "); _ConnectionString = Console.ReadLine(); } @@ -64,9 +65,7 @@ namespace BeWoDatabaseUpdater Console.WriteLine($"{DateTime.Now:dd.MM.yyyy HH:mm:ss.fff}: Führe Updates durch ...{Environment.NewLine}"); - var helper = new MySqlHelper(_ConnectionString); - - _BeWoSchemaNames = await helper.LoadBeWoDatabaseNames() ?? []; + _BeWoSchemaNames = await MySqlBeWoHelper.LoadBeWoDatabaseNames(_ConnectionString) ?? []; LoadSqlScriptsFromFilesToMemory(() => { @@ -79,7 +78,7 @@ namespace BeWoDatabaseUpdater fileCount++; }); - var message = $"{DateTime.Now:dd.MM.yyyy HH:mm:ss.fff}: {commandCount} MySQL-Abfragen in {fileCount} Dateien und {_BeWoSchemaNames.Count} BeWoPlaner-Datenbanken ({_BeWoSchemaNames.Count * commandCount} Transaktionen gesamt):{Environment.NewLine}"; + var message = $"{DateTime.Now:dd.MM.yyyy HH:mm:ss.fff}: {commandCount} MySQL-Abfrag{(commandCount != 1 ? "en" : string.Empty)} in {fileCount} Datei{(fileCount != 1 ? "en" : string.Empty)} und {_BeWoSchemaNames.Count} BeWoPlaner-Datenbanken ({_BeWoSchemaNames.Count * commandCount} Transaktionen gesamt):{Environment.NewLine}"; var sb = new StringBuilder(); @@ -96,9 +95,8 @@ namespace BeWoDatabaseUpdater return; } - helper.OpenSession(); - // Ein Thread pro Sql-Kommando + // ToDo: Threads beachten! var threads = new List(); foreach(var schemaName in _BeWoSchemaNames) @@ -109,11 +107,11 @@ namespace BeWoDatabaseUpdater foreach(var command in path2Commands.Commands) { - var thread = new Thread(async () => + var thread = new Thread(() => { var sql = $"USE `{schemaName}`; {command}"; - await helper.ExecuteUpdateOrCreate(sql, path2Commands.FilePath); + MySqlBeWoHelper.ExecuteUpdateOrCreateAsync(sql, path2Commands.FilePath, _ConnectionString); }); thread.Start(); @@ -127,7 +125,6 @@ namespace BeWoDatabaseUpdater { thread.Join(); - helper.CloseSession(); OnAllThreadsCompleted(); }); }); @@ -136,7 +133,7 @@ namespace BeWoDatabaseUpdater Console.Read(); #endif - if(MySqlHelper.DistinctErrors.Any()) + if(MySqlBeWoHelper.DistinctErrors.Any()) { Console.Read(); } @@ -158,9 +155,11 @@ namespace BeWoDatabaseUpdater Console.WriteLine($"{DateTime.Now:dd.MM.yyyy HH:mm:ss.fff}: Dauer: {timeSpan.ToShortString()}{Environment.NewLine}"); - Console.WriteLine($"{MySqlHelper.DistinctErrors.Count} Fehler{(MySqlHelper.DistinctErrors.Any() ? ":" : "")}"); + Console.WriteLine($"{MySqlBeWoHelper.DistinctErrors.Count} Fehler{(MySqlBeWoHelper.DistinctErrors.Any() ? ":" : "")}"); - MySqlHelper.DistinctErrors.DoForEach(number2Message => Console.WriteLine($"{number2Message.Key}: {number2Message.Value}")); + //MySqlBeWoHelper.WriteSqlErrorsToFile(); + + MySqlBeWoHelper.DistinctErrors.DoForEach(number2Message => Console.WriteLine($"{number2Message.Key}: {number2Message.Value}")); } private static void GetTextAndSqlFiles() @@ -273,95 +272,4 @@ namespace BeWoDatabaseUpdater }); } } - - public class FilePath2MySqlCommands(string filePath, List commands) - { - public string FilePath { get; set; } = filePath; - public List Commands { get; set; } = commands ?? []; - } - - public class MySqlHelper - { - public string ConnectionString { get; set; } - - private readonly MySqlConnection _Connection; - - public async Task> LoadBeWoDatabaseNames() - { - var connection = new MySqlConnection(ConnectionString); - - var result = new List(); - - try - { - await connection.OpenAsync(); - - var command = new MySqlCommand("SELECT TABLE_SCHEMA FROM INFORMATION_SCHEMA.TABLES tables WHERE tables.TABLE_NAME = 'bewofile';") {Connection = connection}; - - await using var dataReader = command.ExecuteReader(); - - while(await dataReader.ReadAsync()) - { - var schemaName = dataReader["TABLE_SCHEMA"]?.ToString(); - - if(schemaName is not null) - { - result.AddIfNotIn(schemaName); - } - } - } - catch(Exception exception) - { - Console.WriteLine(exception); - } - finally - { - if(connection.State is ConnectionState.Open or ConnectionState.Executing) - { - await connection.CloseAsync(); - } - } - - return result; - } - - public MySqlHelper(string connectionString) - { - ConnectionString = connectionString; - - _Connection = new MySqlConnection(ConnectionString); - } - - public static Dictionary DistinctErrors = []; - - public void OpenSession() - { - _Connection.Open(); - } - - public void CloseSession() - { - _Connection.Close(); - WriteSqlErrorsToFile(); - } - - public void WriteSqlErrorsToFile() - { - File.WriteAllLines(Program.FailedSqlCommandsFilePath, DistinctErrors.Values); - } - - public async Task ExecuteUpdateOrCreate(string sql, string filePath) - { - try - { - await new MySqlCommand(sql) { Connection = _Connection }.ExecuteNonQueryAsync(); - } - catch(MySqlException exception) - { - var errorMessage = $"{exception.Number} {new FileInfo(filePath).Name}: {exception.Message}"; - - DistinctErrors.AddAndIgnoreDuplicates(exception.Number, errorMessage); - } - } - } } diff --git a/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/Utils.cs b/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/Utils.cs deleted file mode 100644 index d6a1459dd..000000000 --- a/Tools/BeWoDatabaseUpdater/BeWoDatabaseUpdater/Utils.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; - -namespace BeWoDatabaseUpdater -{ - public static class Utils - { - public static void ConsoleWriteException(Exception exception) - { - ConsoleWriteError(exception.ToString()); - } - - public static void ConsoleWriteError(string errorMessage) - { - Console.BackgroundColor = ConsoleColor.Black; - Console.ForegroundColor = ConsoleColor.DarkRed; - Console.WriteLine(errorMessage); - Console.BackgroundColor = ConsoleColor.Black; - Console.ForegroundColor = ConsoleColor.White; - } - } -}