From 265f2fa8294efbb502b83d57f1acb71d8d4b9423 Mon Sep 17 00:00:00 2001 From: Rene Evertz Date: Wed, 6 Nov 2024 12:55:11 +0100 Subject: [PATCH 01/15] Mehrfache IK Leistungserbringer - Anfang --- Data/Access/GenericDAO.cs | 5 +++++ Service/DCEntityMapper/MandatorDC_Mandator.cs | 19 +++++++++++++++++++ Shared/DataContracts/MandatorDC.cs | 3 +++ 3 files changed, 27 insertions(+) diff --git a/Data/Access/GenericDAO.cs b/Data/Access/GenericDAO.cs index 49d900a1f..cbb7b456e 100644 --- a/Data/Access/GenericDAO.cs +++ b/Data/Access/GenericDAO.cs @@ -266,5 +266,10 @@ namespace BeWo.Data.Access return obj; } + public virtual int GetRowCount() where T : BeWoEntityBase + { + return Session.QueryOver() + .RowCount(); + } } } \ No newline at end of file diff --git a/Service/DCEntityMapper/MandatorDC_Mandator.cs b/Service/DCEntityMapper/MandatorDC_Mandator.cs index 9929c3a4b..b8a8fd4f3 100644 --- a/Service/DCEntityMapper/MandatorDC_Mandator.cs +++ b/Service/DCEntityMapper/MandatorDC_Mandator.cs @@ -1,6 +1,8 @@ +using BeWo.Data.Access; using BeWo.Data.Entities; using BS.Shared.DataContracts; +using System; namespace BeWo.Service.DCEntityMapper { @@ -30,6 +32,7 @@ namespace BeWo.Service.DCEntityMapper #endif pDataContract.Apikey = pEntity.Apikey; pDataContract.IKLeistungserbringer = pEntity.IKLeistungserbringer; + //pDataContract.CanEditIKLeistungserbringer = GetCanEditIKLeistungserbringer(); return pDataContract; } @@ -65,5 +68,21 @@ namespace BeWo.Service.DCEntityMapper return pDC.MandatorOid == pEntity.Oid; } + + private bool GetCanEditIKLeistungserbringer() + { + try + { + var row_count = DAOFactory.GenericDAO.GetRowCount(); + + return row_count == 0; + } + catch (Exception) + { + + } + + return true; + } } } \ No newline at end of file diff --git a/Shared/DataContracts/MandatorDC.cs b/Shared/DataContracts/MandatorDC.cs index 02b09bd88..afd7c9c69 100644 --- a/Shared/DataContracts/MandatorDC.cs +++ b/Shared/DataContracts/MandatorDC.cs @@ -58,5 +58,8 @@ namespace BS.Shared.DataContracts [DataMember] public string IKLeistungserbringer { get; set; } + + [DataMember] + public bool CanEditIKLeistungserbringer { get; set; } } } \ No newline at end of file From f13de976041ca6f242aac2040d9bca182c2a1065 Mon Sep 17 00:00:00 2001 From: Rene Evertz Date: Wed, 6 Nov 2024 15:40:45 +0100 Subject: [PATCH 02/15] =?UTF-8?q?Mandator=20IK=20Leistungserbringer=20?= =?UTF-8?q?=C3=84nderung=20nur,=20wenn=20keine=20GKV=20Abrechnung=20gesend?= =?UTF-8?q?et=20wurde?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BeWo/Converter/TooltipTextConverter.cs | 5 ++++ BeWo/DebugConfig.cs | 2 +- BeWo/View/Detail/MandatorView.xaml | 6 +++- BeWo/View/Detail/MandatorView.xaml.cs | 7 ++++- BeWo/ViewModel/MandatorVM.cs | 29 +++++++++++-------- Data/Access/GenericDAO.cs | 3 +- Host/Host.csproj.user | 2 +- Service/DCEntityMapper/MandatorDC_Mandator.cs | 8 ++++- Shared/DataContracts/MandatorDC.cs | 3 ++ 9 files changed, 46 insertions(+), 19 deletions(-) diff --git a/BeWo/Converter/TooltipTextConverter.cs b/BeWo/Converter/TooltipTextConverter.cs index d3dd67712..4292574df 100644 --- a/BeWo/Converter/TooltipTextConverter.cs +++ b/BeWo/Converter/TooltipTextConverter.cs @@ -29,6 +29,11 @@ namespace BeWo.Converter return invoice.IsGkvValidError; } + if (value is MandatorVM mandator) + { + return mandator.CanEditIKLeistungserbringerTooltip; + } + return "xxx"; } diff --git a/BeWo/DebugConfig.cs b/BeWo/DebugConfig.cs index b2f395a24..85023dc63 100644 --- a/BeWo/DebugConfig.cs +++ b/BeWo/DebugConfig.cs @@ -117,7 +117,7 @@ namespace BeWo { DebugConfigMode = DebugConfigMode.FeatureDakota, AutoLogin = true, - SelectView = UIContext.Finance, + //SelectView = UIContext.Finance, SelectIndex = 8, Username = "m1", Password = "bewobewo", diff --git a/BeWo/View/Detail/MandatorView.xaml b/BeWo/View/Detail/MandatorView.xaml index 3b18c7456..9a589b050 100644 --- a/BeWo/View/Detail/MandatorView.xaml +++ b/BeWo/View/Detail/MandatorView.xaml @@ -54,7 +54,11 @@ Grid.Column="1" Height="23" Margin="3" - Text="{Binding Path=IKLeistungserbringer, UpdateSourceTrigger=PropertyChanged}" /> + IsEnabled="{Binding Path=CanEditIKLeistungserbringer}" + Text="{Binding Path=IKLeistungserbringer, UpdateSourceTrigger=PropertyChanged}" + TextChanged="TextBox_TextChanged" + ToolTip="{Binding Path=CanEditIKLeistungserbringerTooltip}" + ToolTipService.ShowOnDisabled="True" /> () where T : BeWoEntityBase { - return Session.QueryOver() - .RowCount(); + return Session.QueryOver().RowCount(); } } } \ No newline at end of file diff --git a/Host/Host.csproj.user b/Host/Host.csproj.user index f8b116048..5ee002517 100644 --- a/Host/Host.csproj.user +++ b/Host/Host.csproj.user @@ -3,7 +3,7 @@ BeWo2.0 true - Debug|Any CPU + Release|Any CPU false diff --git a/Service/DCEntityMapper/MandatorDC_Mandator.cs b/Service/DCEntityMapper/MandatorDC_Mandator.cs index b8a8fd4f3..0378ea482 100644 --- a/Service/DCEntityMapper/MandatorDC_Mandator.cs +++ b/Service/DCEntityMapper/MandatorDC_Mandator.cs @@ -32,7 +32,13 @@ namespace BeWo.Service.DCEntityMapper #endif pDataContract.Apikey = pEntity.Apikey; pDataContract.IKLeistungserbringer = pEntity.IKLeistungserbringer; - //pDataContract.CanEditIKLeistungserbringer = GetCanEditIKLeistungserbringer(); + var can_edit = GetCanEditIKLeistungserbringer(); + + pDataContract.CanEditIKLeistungserbringer = can_edit; + pDataContract.CanEditIKLeistungserbringerTooltip = can_edit ? null : + "Mit dem Senden mind. einer GKV Abrechnung haben Sie sich bereits\n" + + "mit dieser IK bei uns registiert. Bei Änderungswunsch wenden Sie\n" + + "sich bitte an unseren Support."; return pDataContract; } diff --git a/Shared/DataContracts/MandatorDC.cs b/Shared/DataContracts/MandatorDC.cs index afd7c9c69..1c9e00c80 100644 --- a/Shared/DataContracts/MandatorDC.cs +++ b/Shared/DataContracts/MandatorDC.cs @@ -61,5 +61,8 @@ namespace BS.Shared.DataContracts [DataMember] public bool CanEditIKLeistungserbringer { get; set; } + + [DataMember] + public string CanEditIKLeistungserbringerTooltip { get; set; } } } \ No newline at end of file From e3aa34c3b9c39e62a40cd878591e54c460b931fe Mon Sep 17 00:00:00 2001 From: Rene Evertz Date: Wed, 6 Nov 2024 18:57:57 +0100 Subject: [PATCH 03/15] =?UTF-8?q?Visuelle=20Validierung=20+=20Angepasste?= =?UTF-8?q?=20Validierung=20f=C3=BCr=20Versichertennummer=20+=20Versichert?= =?UTF-8?q?enstatus?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BeWo/BeWo.csproj | 3 + BeWo/BeWoApp.xaml | 10 + BeWo/Converter/TooltipTextConverter.cs | 8 +- BeWo/Converter/ValidationConverter.cs | 32 + BeWo/Converter/ValidationToBrushConverter.cs | 34 + .../Converter/ValidationToTooltipConverter.cs | 36 + BeWo/View/Detail/CustomerView.xaml | 31 +- BeWo/View/Detail/CustomerWohnhilfeView.xaml | 7 +- BeWo/View/Detail/OrganisationView.xaml | 865 +++++++++--------- BeWo/ViewModel/CustomerVM.cs | 66 +- BeWo/ViewModel/OrganisationVM.cs | 116 +-- Dakota/DakotaUtils.cs | 14 +- Dakota/Logic/DakotaInfoCreator.cs | 5 +- Host/Host.csproj.user | 2 +- .../GkvAbrechnungDC_GkvAbrechnung.cs | 2 +- .../InvoiceBaseDC_InvoiceBase.cs | 2 +- .../AccountingServiceImp.cs | 6 +- .../CustomerServiceImp.cs | 2 +- Shared/BeWoEntityEnums.cs | 9 + .../Core/{DakotaValidator.cs => Validator.cs} | 81 +- Shared/Shared.csproj | 2 +- 21 files changed, 776 insertions(+), 557 deletions(-) create mode 100644 BeWo/Converter/ValidationConverter.cs create mode 100644 BeWo/Converter/ValidationToBrushConverter.cs create mode 100644 BeWo/Converter/ValidationToTooltipConverter.cs rename Shared/Core/{DakotaValidator.cs => Validator.cs} (65%) diff --git a/BeWo/BeWo.csproj b/BeWo/BeWo.csproj index 236660868..fe483583f 100644 --- a/BeWo/BeWo.csproj +++ b/BeWo/BeWo.csproj @@ -962,6 +962,8 @@ BSLogoControl.xaml + + @@ -995,6 +997,7 @@ + diff --git a/BeWo/BeWoApp.xaml b/BeWo/BeWoApp.xaml index 92ae98733..e26b672d2 100644 --- a/BeWo/BeWoApp.xaml +++ b/BeWo/BeWoApp.xaml @@ -83,6 +83,16 @@ + + + + + + + + + + diff --git a/BeWo/Converter/TooltipTextConverter.cs b/BeWo/Converter/TooltipTextConverter.cs index 4292574df..f38cde2fe 100644 --- a/BeWo/Converter/TooltipTextConverter.cs +++ b/BeWo/Converter/TooltipTextConverter.cs @@ -13,7 +13,12 @@ namespace BeWo.Converter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { - if(value is GkvAbrechnungVM gkv) + if (value is bool val_bool) + { + return val_bool ? null : parameter; + } + + if (value is GkvAbrechnungVM gkv) { if (parameter is string s) { @@ -34,6 +39,7 @@ namespace BeWo.Converter return mandator.CanEditIKLeistungserbringerTooltip; } + return "xxx"; } diff --git a/BeWo/Converter/ValidationConverter.cs b/BeWo/Converter/ValidationConverter.cs new file mode 100644 index 000000000..6ee6613a2 --- /dev/null +++ b/BeWo/Converter/ValidationConverter.cs @@ -0,0 +1,32 @@ +using BeWo.ViewModel; +using BS.Shared; +using BS.Shared.Core; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Data; +using System.Windows.Media; + +namespace BeWo.Converter +{ + public class ValidationConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + if(value is string val_str && parameter is ValidationType val_type) + { + return Validator.IsValid(val_type, val_str); + } + + return null; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } +} diff --git a/BeWo/Converter/ValidationToBrushConverter.cs b/BeWo/Converter/ValidationToBrushConverter.cs new file mode 100644 index 000000000..59e980295 --- /dev/null +++ b/BeWo/Converter/ValidationToBrushConverter.cs @@ -0,0 +1,34 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Data; +using System.Windows.Media; + +namespace BeWo.Converter +{ + public class ValidationToBrushConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + if(value is null) + { + return Brushes.Black; + } + + if(value is bool val_bool) + { + return val_bool ? Brushes.Black : Brushes.Red; + } + + return Brushes.Blue; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } +} diff --git a/BeWo/Converter/ValidationToTooltipConverter.cs b/BeWo/Converter/ValidationToTooltipConverter.cs new file mode 100644 index 000000000..1aa37ac78 --- /dev/null +++ b/BeWo/Converter/ValidationToTooltipConverter.cs @@ -0,0 +1,36 @@ +using BS.Shared; +using BS.Shared.Core; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Data; +using System.Windows.Media; + +namespace BeWo.Converter +{ + public class ValidationToTooltipConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + if (value is null) + { + return null; + } + + if (value is bool val_bool && parameter is ValidationType val_type) + { + return val_bool ? null : Validator.InvalidTooltipTxt(val_type); + } + + return "xxx"; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } +} diff --git a/BeWo/View/Detail/CustomerView.xaml b/BeWo/View/Detail/CustomerView.xaml index 3388c399c..7aaf8fb46 100644 --- a/BeWo/View/Detail/CustomerView.xaml +++ b/BeWo/View/Detail/CustomerView.xaml @@ -14,6 +14,7 @@ xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:r="clr-namespace:BeWo.Security" + xmlns:shared="clr-namespace:BS.Shared;assembly=BS.Shared" xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup" xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls" xmlns:val="clr-namespace:BeWo.Validation" @@ -954,10 +955,28 @@ Grid.Row="5" Grid.Column="2" Content="{markup:Translate Versichertennummer}" /> +