From 3b6e1e8f6ad8277634eb39f4db2acf70a8fa8503 Mon Sep 17 00:00:00 2001 From: Lyndon Date: Sun, 20 May 2018 13:19:28 +0200 Subject: [PATCH] =?UTF-8?q?-=20DSGVO-Ged=C3=B6ns=20-=20Serientermine=20im?= =?UTF-8?q?=20Kalender=20k=C3=B6nnen=20jetzt=20gel=C3=B6scht=20werden.=20-?= =?UTF-8?q?=20Bearbeitete=20Serientermine=20kann=20man=20wieder=20zur?= =?UTF-8?q?=C3=BCcksetzen.=20-=20Klickt=20man=20in=20der=20Klienten=C3=BCb?= =?UTF-8?q?ersicht=20auf=20Reaktivieren,=20wird=20der=20richtige=20Klient?= =?UTF-8?q?=20ausgew=C3=A4hlt.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BeWo/BeWo.csproj | 2 + BeWo/BeWoApp.xaml | 2 + .../AnonymizationRight2VisibilityConverter.cs | 39 +++ .../DeleteForGoodRight2VisibilityConverter.cs | 42 +++ .../ReactivationRight2VisibilityConverter.cs | 3 + BeWo/Scheduler/View/NewSchedulerView.xaml | 41 ++- BeWo/Scheduler/View/NewSchedulerView.xaml.cs | 158 ++++++++- .../View/SchedulerAppointmentEditForm.xaml | 2 +- .../View/SchedulerAppointmentEditForm.xaml.cs | 62 ++-- .../ViewModel/SchedulerAppointmentListVM.cs | 6 +- BeWo/ServiceProxy/Generated.cs | 106 +++++- BeWo/ServiceProxy/ServiceFacade.cs | 5 + BeWo/ServiceReferences.bat | 1 - BeWo/Styles/OrangeBlack.xaml | 145 +++++++- BeWo/Styles/OrangeBlack.xaml.cs | 65 +++- BeWo/View/Detail/CustomerView.xaml | 1 + BeWo/View/Detail/CustomerView.xaml.cs | 36 +- BeWo/View/Detail/CustomerView2.xaml | 24 +- BeWo/View/Detail/EmployeeView.xaml | 27 +- BeWo/View/Detail/EmployeeView.xaml.cs | 11 +- BeWo/View/Detail/PersonView.xaml | 4 + BeWo/View/Detail/PersonView.xaml.cs | 63 +++- BeWo/View/MessageDialog.xaml | 35 +- BeWo/View/MessageDialog.xaml.cs | 70 ++-- .../Navigation/CustomerNavigationView.xaml | 50 +-- .../Navigation/CustomerNavigationView.xaml.cs | 113 ++++-- .../Navigation/EmployeeNavigationView.xaml | 20 +- .../Navigation/EmployeeNavigationView.xaml.cs | 86 ++++- .../Navigation/PersonNavigationView.xaml.cs | 23 ++ Data/Access/SearchDAO.cs | 63 +++- Service/Core/Utils.cs | 20 ++ Service/ServiceContracts/IEmployeeService.cs | 8 + .../ServiceContracts/IOperationsService.cs | 32 ++ .../EmployeeServiceImp.cs | 27 +- .../OperationsServiceImp.cs | 326 ++++++++++++++++-- .../ResourceServiceImp.cs | 44 ++- Shared/BeWoEntityEnums.cs | 15 +- Shared/Core/EnumTranslations.cs | 20 +- Shared/Core/Utils.cs | 24 +- .../ClientPartials/CompactCustomerDC.cs | 7 +- .../ClientPartials/CompactEmployeeDC.cs | 68 +--- 41 files changed, 1551 insertions(+), 345 deletions(-) create mode 100644 BeWo/Converter/AnonymizationRight2VisibilityConverter.cs create mode 100644 BeWo/Converter/DeleteForGoodRight2VisibilityConverter.cs diff --git a/BeWo/BeWo.csproj b/BeWo/BeWo.csproj index dcca5ba80..45394fa26 100644 --- a/BeWo/BeWo.csproj +++ b/BeWo/BeWo.csproj @@ -543,12 +543,14 @@ BSLogoControl.xaml + + diff --git a/BeWo/BeWoApp.xaml b/BeWo/BeWoApp.xaml index 3086c9add..c49238e41 100644 --- a/BeWo/BeWoApp.xaml +++ b/BeWo/BeWoApp.xaml @@ -64,6 +64,8 @@ + + + + + + diff --git a/BeWo/Styles/OrangeBlack.xaml.cs b/BeWo/Styles/OrangeBlack.xaml.cs index 1de24a986..90887d05f 100644 --- a/BeWo/Styles/OrangeBlack.xaml.cs +++ b/BeWo/Styles/OrangeBlack.xaml.cs @@ -4,6 +4,7 @@ using System.Windows.Navigation; using BeWo.Core; using BeWo.View.Navigation; + using BS.Shared.DataContracts.Compact; namespace BeWo.Styles @@ -19,11 +20,11 @@ namespace BeWo.Styles { var av = BeWoApp.MainControl.ActiveView; - var orgaNavView = (OrganisationNavigationView)av; + var orgaNavView = (OrganisationNavigationView) av; - if (orgaNavView != null) + if(orgaNavView != null) { - var supportConcept = (CompactOrganisationDC)((Hyperlink)sender).Tag; + var supportConcept = (CompactOrganisationDC) ((Hyperlink) sender).Tag; orgaNavView.ReactivateOrganisation(supportConcept); } } @@ -32,13 +33,65 @@ namespace BeWo.Styles { var av = BeWoApp.MainControl.ActiveView; - var personNavView = (PersonNavigationView)av; + var personNavView = (PersonNavigationView) av; - if (personNavView != null) + if(personNavView != null) { - var person = (CompactPersonDC)((Hyperlink)sender).Tag; + var person = (CompactPersonDC) ((Hyperlink) sender).Tag; personNavView.ReactivatePerson(person); } } + + private void Hyperlink_Person_Delete_For_Good_Click(object sender, RoutedEventArgs e) + { + var av = BeWoApp.MainControl.ActiveView; + + var personNavView = (PersonNavigationView) av; + + if(personNavView != null) + { + var person = (CompactPersonDC) ((Hyperlink) sender).Tag; + personNavView.DeleteForGood(person); + } + } + + private void Hyperlink_Employee_Reaktivieren_Click(object sender, RoutedEventArgs e) + { + var av = BeWoApp.MainControl.ActiveView; + + var employeeNavView = (EmployeeNavigationView) av; + + if(employeeNavView != null) + { + var employee = (CompactEmployeeDC) ((Hyperlink) sender).Tag; + employeeNavView.ReactivateEmployee(employee); + } + } + + private void Hyperlink_Employee_Delete_For_Good_Click(object sender, RoutedEventArgs e) + { + var av = BeWoApp.MainControl.ActiveView; + + var employeeNavView = (EmployeeNavigationView) av; + + if(employeeNavView != null) + { + var employee = (CompactEmployeeDC) ((Hyperlink) sender).Tag; + employeeNavView.DeleteEmployeeForGood(employee); + } + } + + private void Hyperlink_Employee_Anonymize_Click(object sender, RoutedEventArgs e) + { + var av = BeWoApp.MainControl.ActiveView; + + var employeeNavView = (EmployeeNavigationView) av; + + if(employeeNavView != null) + { + var employee = (CompactEmployeeDC) ((Hyperlink) sender).Tag; + employeeNavView.AnonymizeEmployee(employee); + } + } } } diff --git a/BeWo/View/Detail/CustomerView.xaml b/BeWo/View/Detail/CustomerView.xaml index fb77fc5de..5fff9a5d1 100644 --- a/BeWo/View/Detail/CustomerView.xaml +++ b/BeWo/View/Detail/CustomerView.xaml @@ -17,6 +17,7 @@ VerticalAlignment="Stretch" Focusable="True" GotFocus="UserControl_GotFocus"> + diff --git a/BeWo/View/Detail/CustomerView.xaml.cs b/BeWo/View/Detail/CustomerView.xaml.cs index 45fa3d0ab..88c325503 100644 --- a/BeWo/View/Detail/CustomerView.xaml.cs +++ b/BeWo/View/Detail/CustomerView.xaml.cs @@ -225,9 +225,6 @@ namespace BeWo.View.Detail } Img.EditValueChanged += Image_EditValueChanged; - - - } void Image_EditValueChanged(object sender, DevExpress.Xpf.Editors.EditValueChangedEventArgs e) @@ -470,26 +467,35 @@ namespace BeWo.View.Detail private void AfterSave(long oid) { - if (oid > 0) + if(oid > 0) { Cache.GetInstance().ClearSupportConceptTree(); Cache.GetInstance().ClearCustomers(); + + if(BeWoApp.LoggedOnUser == null) + { + return; + } + BeWoApp.MainControl.ResetView(UIContext.Customer); ReloadViewModel(oid); - if (DoOwnChatSync && BeWoApp.AppSettings.IsChatAllowed) + if(DoOwnChatSync && BeWoApp.AppSettings.IsChatAllowed) { BeWoUtils.OwnChatSynchronisationVeranlassen(); } } } - + private void ReloadViewModel(long pCustomerOID) { // reload to update version information and oid - VMFactory.CreateCustomerVMAsync(pCustomerOID, cb => this.Dispatch(delegate { ViewModel = cb; UpdateUris(); })); + VMFactory.CreateCustomerVMAsync(pCustomerOID, cb => this.Dispatch(delegate { + ViewModel = cb; + UpdateUris(); + })); ModalEditViewUpdateCallback?.Invoke(); @@ -1391,15 +1397,15 @@ namespace BeWo.View.Detail private void UpdateUris() { - if (ViewModel.AktuelleMedikamentenverordnungsliste != null) + if(ViewModel.AktuelleMedikamentenverordnungsliste != null) { - var url = BeWoWpfUtils.GetHTMLEncodedURL(string.Format("{0}/ReportView.aspx?mvlOid={1}&type={2}", BeWoApp.SiteOfOrigin, ViewModel.AktuelleMedikamentenverordnungsliste.CommitToDataContract().MedikamentenverordnungslistenOid, Utils.EnumName(ReportTypes.Medikamentenverordnungsliste))); + var url = BeWoWpfUtils.GetHTMLEncodedURL($"{BeWoApp.SiteOfOrigin}/ReportView.aspx?mvlOid={ViewModel.AktuelleMedikamentenverordnungsliste.CommitToDataContract().MedikamentenverordnungslistenOid}&type={Utils.EnumName(ReportTypes.Medikamentenverordnungsliste)}"); LinkListeMitZusatzFeldern.NavigateUri = new Uri(url); } - if (ViewModel.Bedarfsmedikamentenverordnungsliste != null) + if(ViewModel.Bedarfsmedikamentenverordnungsliste != null) { - var url2 = BeWoWpfUtils.GetHTMLEncodedURL(string.Format("{0}/ReportView.aspx?mvlOid={1}&type={2}", BeWoApp.SiteOfOrigin, ViewModel.Bedarfsmedikamentenverordnungsliste.CommitToDataContract().MedikamentenverordnungslistenOid, Utils.EnumName(ReportTypes.Medikamentenverordnungsliste))); + var url2 = BeWoWpfUtils.GetHTMLEncodedURL($"{BeWoApp.SiteOfOrigin}/ReportView.aspx?mvlOid={ViewModel.Bedarfsmedikamentenverordnungsliste.CommitToDataContract().MedikamentenverordnungslistenOid}&type={Utils.EnumName(ReportTypes.Medikamentenverordnungsliste)}"); LinkBedarfsListeMitZusatzFeldern.NavigateUri = new Uri(url2); } } @@ -1808,12 +1814,14 @@ namespace BeWo.View.Detail } } - public class MedVerDetailOrderClass : IComparer + public class MedVerDetailOrderClass : IComparer { - public int Compare(String x, String y) + public int Compare(string x, string y) { - if (x.Equals(y)) + if(x == null || x.Equals(y)) + { return 0; + } switch (y) { diff --git a/BeWo/View/Detail/CustomerView2.xaml b/BeWo/View/Detail/CustomerView2.xaml index a236ba1f1..47035c36b 100644 --- a/BeWo/View/Detail/CustomerView2.xaml +++ b/BeWo/View/Detail/CustomerView2.xaml @@ -201,18 +201,18 @@