Beispiel #1
0
        private async void Search()
        {
            if (!isRequestCompleted)
            {
                return;
            }

            if (NetworkInterface.NetworkInterfaceType == NetworkInterfaceType.None)
            {
                var message = new Message();
                message.Content = "İnternet bağlantınızı kontrol ediniz.";
                message.Buttons.Add(new MessageButton("Tamam", "closeMessage()"));
                showMessage(message);
            }
            else if (Database.TempData.Factory == null)
            {
                var message = new Message();
                message.Content = "Arama yapmak için bir kargo şirketi seçmelisiniz.";
                message.Buttons.Add(new MessageButton("Tamam", "closeMessage()"));
                showMessage(message);
            }
            else if (string.IsNullOrEmpty(txtCode.Text))
            {
                var message = new Message();
                message.Content = "Arama yapmak için takip kodunu yazmalısınız.";
                message.Buttons.Add(new MessageButton("Tamam", "closeMessage()"));
                showMessage(message);
            }
            else
            {
                isRequestCompleted             = false;
                txtInfo.Text                   = LOADING_TEXT;
                pnlTrackingDetails.DataContext = null;
                pnlTrackingDetails.Visibility  = Visibility.Collapsed;
                lsFactories.Visibility         = Visibility.Collapsed;

                Database.TempData.Code = txtCode.Text;
                Global.Token           = CryptoHelper.CreateToken(DeviceHelper.Id);
                var response = await TrackingRequests.GetDetailsAsync(Database.TempData.Factory, Database.TempData.Code);

                isRequestCompleted = true;
                if (response.Status == true)
                {
                    var tracking = response.Result as Tracking;
                    pnlTrackingDetails.Visibility = Visibility.Visible;
                    tracking.Factory = Database.TempData.Factory;
                    pnlTrackingDetails.DataContext = response.Result;

                    Database.AddTracking(tracking);
                    setHistoryList();
                }
                else if (response.Message != null)
                {
                    showMessage(response.Message);
                }
                else
                {
                    var message = new Message();
                    message.Content = "Aradığınız koda ait kayıt bulunamadı!";
                    message.Buttons.Add(new MessageButton("Tamam", "closeMessage()"));
                    showMessage(message);
                }
            }
        }
Beispiel #2
0
        private async void doAction(string actionName, List <string> parameters)
        {
            if (actionName == "launcher")
            {
                string url = parameters[0];
                await Launcher.LaunchUriAsync(new Uri(url, UriKind.RelativeOrAbsolute));
            }
            else if (actionName == "track")
            {
                var factory = Database.SavedData.Factories.FirstOrDefault(x => x.Id == Convert.ToInt32(parameters[0]));
                lsFactories.SelectedItem    = factory;
                TrackingPivot.SelectedIndex = 0;
                if (parameters.Count() != 1)
                {
                    txtCode.Text = parameters[1];
                    Search();
                }
            }
            else if (actionName == "updateFactories")
            {
                updateFactories();
            }
            else if (actionName == "updateFactory")
            {
                if (parameters.Any())
                {
                    updateFactories(Convert.ToInt32(parameters[0]));
                }
            }
            else if (actionName == "resetDevice")
            {
                Database.SavedData.IsDeviceRegistered = false;
                Database.Update();
            }
            else if (actionName == "resetData")
            {
                Database.SavedData = new SavedData();
                Database.Update();
            }
            else if (actionName == "resetFactories")
            {
                Database.SavedData.Factories = new List <Factory>();
                Database.Update();
            }
            else if (actionName == "resetMessages")
            {
                Database.SavedData.Messages = new List <Message>();
                Database.Update();
            }
            else if (actionName == "resetHistory")
            {
                Database.SavedData.History = new List <Tracking>();
                Database.Update();
            }
            else if (actionName == "registerDevice")
            {
                Global.Token = CryptoHelper.CreateToken(DeviceHelper.Id);
                var registerResponse = await DeviceRequests.RegisterDeviceAsync();

                if (registerResponse.Status)
                {
                    Database.SavedData.IsDeviceRegistered = true;
                    Database.Update();
                }
            }
        }