コード例 #1
0
        protected override async void ActivateSelected()
        {
            string action = SelectedCentreItem.Centre._Status == EntityStatus.Active
                                  ? "deactivate"
                                  : "activate";
            if (
                    MessageBox.Show("Are you sure you want to " + action + " this centre",
                                    "Agrimanagr: Activate Centre", MessageBoxButton.OKCancel) ==
                    MessageBoxResult.Cancel) return;
            using (var c = NestedContainer)
            {
                if(SelectedCentreItem.Centre._Status == EntityStatus.Active)
                {

                    if (Using<IMasterDataUsage>(c).CheckAgriCentreIsUsed(SelectedCentreItem.Centre,EntityStatus.Inactive))
                    {
                        MessageBox.Show(
                            "Centre " + SelectedCentreItem.Centre.Name +
                            " has been allocated to commodity producers. Unallocate first to deactivate this centre.",
                            "Agrimanagr: Deactivate Centre", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                        return;
                    }
                }

                ResponseBool response = new ResponseBool() {Success = false};
                if (SelectedCentreItem == null) return;
                _proxy = Using<IDistributorServiceProxy>(c);
                response = await _proxy.CentreActivateOrDeactivateAsync(SelectedCentreItem.Centre.Id);

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