示例#1
0
        protected override async void ActivateSelected()
        {
            string action = SelectedStore.Store._Status == EntityStatus.Active
                              ? "deactivate"
                              : "activate";
            if (
                    MessageBox.Show("Are you sure you want to " + action + " this store?",
                                    "Agrimanagr: Activate Store", MessageBoxButton.OKCancel) ==
                    MessageBoxResult.Cancel) return;
            using (var c = NestedContainer)
            {
                if (SelectedStore.Store._Status == EntityStatus.Active)
                {
                    if (Using<IMasterDataUsage>(c).CheckStoreIsUsed(SelectedStore.Store, EntityStatus.Inactive))
                    {
                        MessageBox.Show(
                            "Store " + SelectedStore.Store.Name +
                            " has been used in a transaction. Deactivate or delete dependencies to continue.",
                            "Agrimanagr: Deactivate Store", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                        return;
                    }
                }

                ResponseBool response = new ResponseBool() {Success = false};
                if (SelectedStore == null) return;
                _proxy = Using<IDistributorServiceProxy>(c);
                response = await _proxy.StoreActivateOrDeactivateAsync(SelectedStore.Store.Id);

                MessageBox.Show(response.ErrorInfo, "Agrimangr: Manage Store", MessageBoxButton.OK,
                                MessageBoxImage.Information);
            }
        }