diff options
| author | Victoria Plitt <Victoria.Plitt@twine-s.com> | 2021-01-17 12:36:39 +0200 |
|---|---|---|
| committer | Victoria Plitt <Victoria.Plitt@twine-s.com> | 2021-01-17 12:36:39 +0200 |
| commit | 18e79aebd6cb8269b31520ddbc93aaf0aa4b4591 (patch) | |
| tree | 1ae55116258f27e7679491a6c91b4cba0c0a53aa /Software/Visual_Studio/MachineStudio/Modules | |
| parent | 38d2b46c7ca963a31ee43ae5bb1623dca2bc3e7c (diff) | |
| download | Tango-18e79aebd6cb8269b31520ddbc93aaf0aa4b4591.tar.gz Tango-18e79aebd6cb8269b31520ddbc93aaf0aa4b4591.zip | |
MS. Display the proper error message when trying to delete Organization. Item 4510.
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules')
| -rw-r--r-- | Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs index 16395d6bc..75e4af225 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs @@ -205,6 +205,28 @@ namespace Tango.MachineStudio.UsersAndRoles.ViewModels { if (_notification.ShowQuestion("Are you sure you want to remove " + SelectedOrganization.Name + " organization?")) { + Organization selectedToRemoveOrganization = null; + await Task.Factory.StartNew(() => + { + _manageContext = ObservablesContext.CreateDefault(); + selectedToRemoveOrganization = new OrganizationBuilder(_manageContext).Set(SelectedOrganization.Guid).WithUsers(true).WithMachines().WithSites().Build(); + }); + if (selectedToRemoveOrganization != null && selectedToRemoveOrganization.Machines.Count > 0) + { + _notification.ShowError("The organization cannot be removed as it contains Machines."); + return; + } + if (selectedToRemoveOrganization != null && selectedToRemoveOrganization.Sites.Count > 0) + { + _notification.ShowError("The organization cannot be removed as it contains Sites."); + return; + } + if (selectedToRemoveOrganization != null && selectedToRemoveOrganization.Users.Count(x => x.OrganizationGuid == SelectedOrganization.Guid && x.Deleted == false) > 0) + { + _notification.ShowError("The organization cannot be removed as it contains active users."); + return; + } + using (_notification.PushTaskItem("Removing organization...")) { await SelectedOrganization.DeleteCascadeAsync(_organizationsContext); |
