예제 #1
0
 private IEnumerator<IResult> GetClients()
 {
     if (UILib.IsDesignMode())
         yield break;
     GetClientsRequest getClientsRequest = new GetClientsRequest();
     yield return getClientsRequest;
     if (getClientsRequest.Error != null)
     {
         yield return new HandleExceptionResult(getClientsRequest.Error);
     }
     Instance.Clients = getClientsRequest.Result.Clone();
 }
예제 #2
0
        public IEnumerable<IResult> Load()
        {
            if (this.isLoaded)
                yield break;

            LoadAssistantItems();
            LoadSummaryItems();

            BusyOn("Loading...");
            var req = new GetClientsRequest();
            req.clientName = string.Empty;
            yield return req;
            if (req.Error != null) {
                yield return HandleExceptionResult.Display(req.Error);
                BusyOff();
                base.Close();
                yield break;
            }

            this.Clients.AddRange(req.Result);
            NotifyOfPropertyChange(() => Clients);
            BusyOff();

            SetDisplayName();
            this.AssistantItems.SetCanBeActive((int)state);
            isLoaded = true;
            this.IsDirty = true;
        }
        public IEnumerable<IResult> LoadViewGeneral()
        {
            if (this.IsLoadedGeneral)
                yield break;

            var req = new GetClientsRequest();
            req.clientName = string.Empty;
            yield return req;
            if (req.Error != null)
            {
                yield return HandleExceptionResult.Display(req.Error);
                BusyOff();
                base.Close();
                yield break;
            }

            this.Clients.AddRange(req.Result);
            NotifyOfPropertyChange(() => Clients);
            BusyOff();

            switch (AssistantMode) {
                case ViewMode.Add:
                    this.InventoryItem = new InventoryItem();
                    break;
                case ViewMode.Edit:
                    if (this.EditingModelId.IsNotNull()) {
                        BusyOn("Loading Item...");
                        GetInventoryItemRequest getInventoryItemRequest = new GetInventoryItemRequest((int)this.EditingModelId);
                        yield return getInventoryItemRequest;
                        if (getInventoryItemRequest.Error != null)
                        {
                            yield return new HandleExceptionResult(getInventoryItemRequest.Error);
                            BusyOff();
                            yield break;
                        }
                        this.InventoryItem = getInventoryItemRequest.Result.Clone();
                        BusyOff();
                    }
                    break;
                default:
                    break;
            }
            this.EditingModelId = null;
            SetDisplayName();
            UpdateSummaryGeneral();
            NotifyOfPropertyChange(() => AssistantMode);
            this.InventoryItem.IsTrackChange = true;
            this.IsLoadedGeneral = true;
        }