コード例 #1
0
        private async void SelectedLotItemChange()
        {
            try
            {
                if (this.LotSelected == null)
                {
                    if (this.CommandSelected != null)
                    {
                        this.CommandSelected = null;
                    }
                    return;
                }

                UserDialogs.Instance.ShowLoading("Obteniendo comandos...", MaskType.Black);
                if (!await ApiIsOnline())
                {
                    UserDialogs.Instance.HideLoading();
                    Toast.ShowError(AlertMessages.Error);
                    return;
                }
                else
                {
                    if (!TokenValidator.IsValid(TokenGet))
                    {
                        if (!await ApiIsOnline())
                        {
                            UserDialogs.Instance.HideLoading();
                            Toast.ShowError(AlertMessages.Error);
                            return;
                        }
                        else
                        {
                            if (!await GetTokenSuccess())
                            {
                                UserDialogs.Instance.HideLoading();
                                Toast.ShowError(AlertMessages.Error);
                                return;
                            }
                        }
                    }
                    LogExecutionDelayCommandQueryValues LogExecutionDelayCommandQueryValues = new LogExecutionDelayCommandQueryValues()
                    {
                        IdLot = this.LotSelected.IdLot
                    };
                    Response resultGetCommands = await ApiSrv.LogExecutionDelayGetCommands(TokenGet.Key, LogExecutionDelayCommandQueryValues);

                    if (!resultGetCommands.IsSuccess)
                    {
                        UserDialogs.Instance.HideLoading();
                        Toast.ShowError(AlertMessages.Error);
                        return;
                    }
                    else
                    {
                        LogExecutionDelayCommands = JsonConvert.DeserializeObject <List <LogExecutionDelayCommand> >(Crypto.DecodeString(resultGetCommands.Data));
                        if (PickerCommandItems == null)
                        {
                            PickerCommandItems = new ObservableCollection <PickerCommandItem>();
                        }
                        else
                        {
                            PickerCommandItems.Clear();
                        }
                        foreach (LogExecutionDelayCommand logExecutionDelayCommand in LogExecutionDelayCommands)
                        {
                            PickerCommandItems.Add(new PickerCommandItem()
                            {
                                IdCommand   = logExecutionDelayCommand.IdCommand,
                                NameCommand = logExecutionDelayCommand.Command
                            });
                        }
                        UserDialogs.Instance.HideLoading();
                    }
                }
            }
            catch //(Exception ex)
            {
                UserDialogs.Instance.HideLoading();
                Toast.ShowError(AlertMessages.Error);
            }
        }