diff --git a/.gitignore b/.gitignore index ffc11549c..86bbd14f7 100644 --- a/.gitignore +++ b/.gitignore @@ -413,4 +413,5 @@ FodyWeavers.xsd *.msp # JetBrains Rider -*.sln.iml \ No newline at end of file +*.sln.iml +/ReportImp/RatPlusTat/CustomBudgetnachweisAnhangRO.cs diff --git a/BeWo/BeWo.csproj b/BeWo/BeWo.csproj index 444fa6d32..45d8da754 100644 --- a/BeWo/BeWo.csproj +++ b/BeWo/BeWo.csproj @@ -9,7 +9,7 @@ Properties BeWo BeWoPlaner - v4.7.2 + v4.5.2 512 {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 4 @@ -19,8 +19,8 @@ false - 8CA4066C36C87B745E4016FDA715A6DB16FCFFA9 - false + 8E3A8E81F1C6F67A1C6D239593544EA33D8AC6A7 + true false 3.0.1927.0 @@ -42,11 +42,12 @@ de-DE BeWoPlaner ownSoft GmbH - 2.0.1.268 + 2.0.1.277 + true publish.htm false true - 276 + 278 2.0.1.%2a false true @@ -61,7 +62,7 @@ TRACE;DEBUG prompt 4 - x86 + AnyCPU AllRules.ruleset true false diff --git a/BeWo/BeWoApp.xaml.cs b/BeWo/BeWoApp.xaml.cs index c144c8623..dd78aac85 100644 --- a/BeWo/BeWoApp.xaml.cs +++ b/BeWo/BeWoApp.xaml.cs @@ -56,9 +56,8 @@ namespace BeWo public static LoginControl LoginControl; public static MainControl MainControl; - public static string ShortVersion = "3.26"; + public static string ShortVersion = "3.27.2"; public static string Version => BeWoAppInfo.BeWoAppVersion.ToString(); - public static int RenderTier = 0; internal static string IpAddress = string.Empty; @@ -308,6 +307,12 @@ namespace BeWo anzTageZeiterfassErfolgt = resultzeitplan; } + val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.AnzTageUnterschriftErfolgt); + if (Int32.TryParse(val, out resultzeitplan)) + { + AppSettings.AnzTageUnterschriftErfolgt = resultzeitplan; + } + val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ZeiterfassungsSchwellwert); int resultschwell; if (Int32.TryParse(val, out resultschwell)) @@ -538,6 +543,12 @@ namespace BeWo val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ShowWohnhilfe); AppSettings.ShowWohnhilfe = val != null && val.Equals("1"); + val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ShowVorlagen); + AppSettings.ShowVorlagen = val != null && val.Equals("1"); + + val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ShowMitarbeiterSchwerbehindertenInfos); + AppSettings.ShowMitarbeiterSchwerbehindertenInfos = val != null && val.Equals("1"); + val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ShowImportAbschlagszahlungen); AppSettings.ShowImportAbschlagszahlungen = val != null && val.Equals("1"); diff --git a/BeWo/Converter/TooltipTextConverter.cs b/BeWo/Converter/TooltipTextConverter.cs index f38cde2fe..f64042ff0 100644 --- a/BeWo/Converter/TooltipTextConverter.cs +++ b/BeWo/Converter/TooltipTextConverter.cs @@ -1,4 +1,5 @@ using BeWo.ViewModel; +using BeWo.ViewModel.Light; using System; using System.Collections.Generic; using System.Globalization; @@ -18,7 +19,7 @@ namespace BeWo.Converter return val_bool ? null : parameter; } - if (value is GkvAbrechnungVM gkv) + if (value is GkvAbrechnungLightVM gkv) { if (parameter is string s) { @@ -29,17 +30,32 @@ namespace BeWo.Converter } } - if (value is InvoiceBaseVM invoice) + if (value is GkvAbrechnungVM gkv2) + { + if (parameter is string s) + { + if (s == "Send") + { + return gkv2.SendTooltip; + } + } + } + + if (value is InvoiceBaseLightVM invoice) { return invoice.IsGkvValidError; } + if (value is InvoiceBaseVM invoice2) + { + return invoice2.IsGkvValidError; + } + if (value is MandatorVM mandator) { return mandator.CanEditIKLeistungserbringerTooltip; } - return "xxx"; } diff --git a/BeWo/Core/BeWoUtils.cs b/BeWo/Core/BeWoUtils.cs index 4ad5cf7de..443a3cc03 100644 --- a/BeWo/Core/BeWoUtils.cs +++ b/BeWo/Core/BeWoUtils.cs @@ -121,7 +121,12 @@ namespace BeWo.Core public static void NavigateToReportUriWithDocumentPreviewControl(string navigateUriString, string title, DocumentPreviewControl dp, Action callback) { - var reportTemplates = ServiceFacade.DoOperationsServiceSync(x => x.GetReportTemplates(navigateUriString)); + List reportTemplates = null; + if (!navigateUriString.Contains("&template=")) + { + reportTemplates = ServiceFacade.DoOperationsServiceSync(x => x.GetReportTemplates(navigateUriString)); + } + if (reportTemplates?.Count > 1) { diff --git a/BeWo/Core/Config/AppSettings.cs b/BeWo/Core/Config/AppSettings.cs index aadbe5fa1..fe1cee77d 100644 --- a/BeWo/Core/Config/AppSettings.cs +++ b/BeWo/Core/Config/AppSettings.cs @@ -135,6 +135,7 @@ namespace BeWo.Core.Config public int LastSelectedStundenkontoIntervall { get; set; } public int AnzTageZeiterfassErfolgt { get; set; } + public int AnzTageUnterschriftErfolgt { get; set; } public int ZeiterfassungsSchwellwert { get; set; } @@ -490,6 +491,9 @@ namespace BeWo.Core.Config public bool ModuleAiSettingsEnabled { get; set; } public bool ShowWohnhilfe { get; set; } + + public bool ShowVorlagen { get; set; } + public bool ShowMitarbeiterSchwerbehindertenInfos { get; set; } public bool ShowImportAbschlagszahlungen { get; set; } public bool ShowPersehImport { get; set; } diff --git a/BeWo/DebugConfig.cs b/BeWo/DebugConfig.cs index c1259e53b..a9de62dc7 100644 --- a/BeWo/DebugConfig.cs +++ b/BeWo/DebugConfig.cs @@ -131,7 +131,7 @@ namespace BeWo new DebugConfig() { DebugConfigMode = DebugConfigMode.FeatureDakota, - AutoLogin = true, + AutoLogin = false, SelectView = UIContext.Organisation, SelectIndex = 8, DefaultLoginUsername = "m1", diff --git a/BeWo/LoginControl.xaml.cs b/BeWo/LoginControl.xaml.cs index 6d5149f3b..dc44a9bc1 100644 --- a/BeWo/LoginControl.xaml.cs +++ b/BeWo/LoginControl.xaml.cs @@ -264,6 +264,10 @@ namespace BeWo private static String PUB_KEY_R11 = "BA87BC5C1B0039CBCA0ACDD46710F9013CA54EA561CB26CA52FB1501B7B928F5281EED27B324183967090C08ECE03AB03B770EBDF3E53954410C4EAE41D69974DE51DBEF7BFF58BDA8B713F6DE31D5F272C9726A0B8374959C4600641499F3B1D922D9CDA892AA1C267A3FFEEF58057B089581DB710F8EFBE33109BB09BE504D5F8F91763D5A9D9E83F2E9C466B3E106664348188065A037189A9B843297B1B2BDC4F815009D2788FBE26317966C9B27674BC4DB285E69C279F0495CE02450E1C4BCA105AC7B406D00B4C2413FA758B82FC55C9BA5BB099EF1FEEBB08539FDA80AEF45C478EB652AC2CF5F3CDEE35C4D1BF70B272BAA0B4277534F796A1D87D90203010001"; + private static String PUB_KEY_R12 = "da982874adbe94fe3be01ee2e54b75ab2c127feda703327e3697ece8318fa5138d0b992e1ecd01513d4ce5286e095531aaa5225d72f42d07c24d403cdf0123b97837f51a653234e686719d04ef84085bbd021a99eba601009a73906d8fa207a0d097d3da456181353d14f9c4c05f6adc0b961ab09fe32aeabd2ad698c79b71ab3b740f3cdbb260be5a4b4e18e9db2a735c8961659efeed3ca6cb4e6fe49ef90046b3ff194d2a63b38e66c6188570c750656f3b74e548830f08585d2d239d5ea3fee8db00a1d2f4e3194df2ee7af6279ee5cd9c2da2f27f9c17adef133739d1b4c82c41d686c0e9ec21f8591b7fb93a7c9f5c019d6204c228bd0aad3cca10ec1b0203010001"; + + private static String PUB_KEY_R13 = "a567708dd0568164151761cdb906d4ad19908c2650379816639254dbd9cc840593ecd3ec081ba0605143487d2bc748969eb42dda9dc8273b57a19fabf0d60ed40e30ca6f9bb1d1d6a49d323e584e356f4558687117fc3ed85d82a02fb2516cb01a5db859ce3565c88ba1af1037ffe39c5dc2491734ff8c2b8b8df0bc712c930c1d05c4bac7cdaac95e7cd1c901f79c03f6fc0a5df4da7be6db764270ebf44d22da00776fd6c95f17fdda752ea5570cf6ea5cb6e073a568cfa174e275827e109fc1f5a2eb01e938b10a44ccd3c289f54935820a34b31ce988c2474e820e0a36f0474f8af1290475dacde19a5cff5e9d9895ba9a43d04aa21705010430d332b38f0203010001"; + private bool PinPublicKey(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslpolicyerrors) { @@ -284,7 +288,9 @@ namespace BeWo pk.Contains(PUB_KEY_E5.ToLower()) || pk.Contains(PUB_KEY_E6.ToLower()) || pk.Contains(PUB_KEY_R10.ToLower()) || - pk.Contains(PUB_KEY_R11.ToLower())) + pk.Contains(PUB_KEY_R11.ToLower()) || + pk.Contains(PUB_KEY_R12.ToLower()) || + pk.Contains(PUB_KEY_R13.ToLower())) { chainContainsPk = true; } diff --git a/BeWo/MainControl.xaml.cs b/BeWo/MainControl.xaml.cs index 7f86e91f1..05cc56a9a 100644 --- a/BeWo/MainControl.xaml.cs +++ b/BeWo/MainControl.xaml.cs @@ -178,7 +178,7 @@ namespace BeWo } - if (BeWoApp.LoggedOnUser != null && BeWoApp.LoggedOnUser.HasRight(UserRightType.DocumentsAllowViewAll) && BeWoApp.AppSettings.ShowWohnhilfe) + if (BeWoApp.LoggedOnUser != null && BeWoApp.LoggedOnUser.HasRight(UserRightType.DocumentsAllowViewAll) && BeWoApp.AppSettings.ShowVorlagen) { this.button_Dokumente.Visibility = Visibility.Visible; } diff --git a/BeWo/Scheduler/View/NewSchedulerView.xaml.cs b/BeWo/Scheduler/View/NewSchedulerView.xaml.cs index 37621e971..f3681c1d7 100644 --- a/BeWo/Scheduler/View/NewSchedulerView.xaml.cs +++ b/BeWo/Scheduler/View/NewSchedulerView.xaml.cs @@ -1578,7 +1578,9 @@ namespace BeWo.Scheduler.View var mitarbeiterliste = appointment.CF_EmployeeList(); var istErsteller = ersteller?.EmployeeOid.Equals(BeWoApp.LoggedOnEmployee.EmployeeOid) ?? false; - if(!istErsteller && appointment.CF_IsPrivate() && !mitarbeiterliste.Any(a => Equals(a.Employee, BeWoApp.CompactLoggedOnEmployee)) || !appointment.CF_CanBeEdited()) + bool canBeEdited = appointment.CF_CanBeEdited(); + + if (!istErsteller && appointment.CF_IsPrivate() && !mitarbeiterliste.Any(a => Equals(a.Employee, BeWoApp.CompactLoggedOnEmployee)) || !canBeEdited) { darfTerminDetailsSehen = false; } @@ -1946,8 +1948,13 @@ namespace BeWo.Scheduler.View var customerList = appointment.CF_CustomerList(); var employeeList = employee2SchedulerAppointmentList.Select(employee2SchedulerAppointment => employee2SchedulerAppointment.Employee).ToList(); + String notice = appointment.Description; + if (String.IsNullOrEmpty(notice)) + { + notice = appointment.Subject; + } - BeWoUtils.CreateZeiterfassung(appointment.Start, appointment.End, customerList, employeeList, appointment.Subject, appointment, serviceRecords => + BeWoUtils.CreateZeiterfassung(appointment.Start, appointment.End, customerList, employeeList, notice, appointment, serviceRecords => { try { diff --git a/BeWo/Scheduler/ViewModel/CustomFieldStorage.cs b/BeWo/Scheduler/ViewModel/CustomFieldStorage.cs index 6f78af236..a79124f08 100644 --- a/BeWo/Scheduler/ViewModel/CustomFieldStorage.cs +++ b/BeWo/Scheduler/ViewModel/CustomFieldStorage.cs @@ -141,6 +141,7 @@ namespace BeWo.Scheduler.ViewModel _AbsenceTimeEnd = pAppointment.AbsenceTimeEnd; HasServiceRecordEntry = pAppointment.HasServiceRecordEntry; + CanBeEdited = pAppointment.CanBeEdited; AbsenceTimeOid = pAppointment.AbsenceTimeOid; diff --git a/BeWo/View/Controls/CustomerVermittlungArbeitControl.xaml b/BeWo/View/Controls/CustomerVermittlungArbeitControl.xaml index 733885bff..37e2e663f 100644 --- a/BeWo/View/Controls/CustomerVermittlungArbeitControl.xaml +++ b/BeWo/View/Controls/CustomerVermittlungArbeitControl.xaml @@ -1,6 +1,7 @@  - + @@ -59,6 +61,12 @@ Width="*" MinWidth="200" MaxWidth="300" /> + + @@ -80,44 +88,122 @@ + + + + + +