public void ProcessPhone(ListItemModel model)
        {
            RxApp.MainThreadScheduler.Schedule(_ =>
            {
                IsGettingData = true;
                LstAddresses.Clear();
            });

            _client.ExecutionProxy.ExecuteRequest <String, String, ResponseMessageData <AddressInfoModel>, ResponseMessageData <AddressInfoModel> >
                (model.Value, TransferDto.SameType, SharedConstants.Server.ADDRESS_HUB,
                SharedConstants.Server.SEARCH_ADDRESS_BY_PHONE_ADDRESS_HUB_METHOD, TransferDto.SameType)
            .Subscribe(OnAddressListReady, OnAddressListError);
        }
        private void OnPropagate(PropagateOrderModel model)
        {
            var address = LstAddresses.FirstOrDefault(e => e.AddressInfo.AddressId == model.Order.AddressId);

            if (address == null)
            {
                return;
            }

            RxApp.MainThreadScheduler.Schedule(_ => { AddressSelection = address; });

            if (model.HasEdit)
            {
                return;
            }

            if (model.PosCheck != null)
            {
                MessageBus.Current.SendMessage(model, SharedMessageConstants.PROPAGATE_LASTORDER_POSCHECK);
            }
        }
        private void OnAddressListReady(IStale <ResponseMessageData <AddressInfoModel> > obj)
        {
            if (obj.IsStale)
            {
                OnAddressListError(Resources.Network.ResNetwork.ERROR_NETWORK_DOWN);
                return;
            }

            if (obj.Data.IsSuccess == false)
            {
                OnAddressListError(obj.Data.Message);
                return;
            }

            RxApp.MainThreadScheduler.Schedule(_ =>
            {
                IsGettingData = false;
                LstAddresses.Clear();
                var bIsFirst = true;
                foreach (var info in obj.Data.LstData)
                {
                    var row = new AddressInfoGrid
                    {
                        AddressInfo = info,
                        Status      = SharedConstants.Client.RECORD_SAVED,
                        IsSelected  = bIsFirst
                    };

                    OnAddressChanged(row, bIsFirst);
                    LstAddresses.Add(row);
                    bIsFirst = false;
                }

                if (bIsFirst)
                {
                    OnAddressChanged(null, true);
                }
            });
        }
        private void OnRemoveDone(IStale <ResponseMessageData <bool> > obj, AddressInfoGrid clInfo)
        {
            if (obj.IsStale)
            {
                OnRemoveError(Resources.Network.ResNetwork.ERROR_NETWORK_DOWN);
                return;
            }

            if (obj.Data.IsSuccess == false)
            {
                OnRemoveError(obj.Data.Message);
                return;
            }

            RxApp.MainThreadScheduler.Schedule(_ =>
            {
                var client = LstAddresses.FirstOrDefault(e => e.PreId == clInfo.PreId);
                if (client != null)
                {
                    LstAddresses.Remove(client);
                }
            });
        }
Exemplo n.º 5
0
 private IWebElement BtnDestroy(string address) =>
 LstAddresses.FirstOrDefault(element => element.Text.Contains(address))?.FindElement(delete);