コード例 #1
0
 private void BtnFindImages_Click(object sender, EventArgs e)
 {
     try
     {
         var task = new GenericTask()
                    .WithPreExecuteProcess((b) =>
         {
             Program.Main.ShowLoading();
         }).WithBackGroundProcess((b, t) =>
         {
             try
             {
                 var intent = new Intent(this.Activity, typeof(ImagesViewActivity));
                 intent.PutExtra("RegistroDeReforma", JsonConvert.SerializeObject(Item));
                 StartActivity(intent);
             }
             catch (Exception ex)
             {
                 Program.Main.ShowMessage(ex.Message, ToastLength.Long, ToastMessageType.Error);
             }
         }).WithPosExecuteProcess((b, t) =>
         {
             Program.Main.HideLoading();
         }).Execute();
     }
     catch (Exception ex)
     {
         Program.Main.ShowMessage(string.Format("Ocorreu um erro ao buscar as imagens no servidor: {0}", ex.Message), ToastLength.Long, ToastMessageType.Error);
     }
 }
コード例 #2
0
 private void StartDetailsActivity()
 {
     if (_taskToStartActivity.IsOutside)
     {
         Android.Content.Intent intent = new Android.Content.Intent(BaseContext, typeof(TaskDetailActivity));
         intent.PutExtra("identifier", _taskToStartActivity.Identifier);
         intent.PutExtra("title", _taskToStartActivity.Title);
         intent.PutExtra("access_token", _accessToken);
         _taskToStartActivity = null;
         StartActivity(intent);
     }
 }
コード例 #3
0
    public void SpawnTask()
    {
        Task        newTask        = null;
        List <Task> availableTasks = new List <Task>();

        foreach (Task task in tasks)
        {
            if (!currentTasks.Contains(task))
            {
                availableTasks.Add(task);
            }
        }
        float totalSpawnChange = 0f;

        foreach (Task task in availableTasks)
        {
            totalSpawnChange += task.spawnChance;
        }
        totalSpawnChange *= Random.value;

        float totalSpawnChange2 = 0f;

        foreach (Task task in availableTasks)
        {
            totalSpawnChange2 += task.spawnChance;
            if (totalSpawnChange2 > totalSpawnChange)
            {
                newTask = task;
                break;
            }
        }
        if (newTask != null)
        {
            newTask.subTasksDone = new bool[newTask.subTasks.Length];
            GameObject obj = GameObject.Find(newTask.taskScriptName);
            if (obj != null)
            {
                GenericTask taskScript = obj.GetComponent <GenericTask>();
                if (taskScript != null)
                {
                    TaskListUI.self.SetTexts();
                    taskScript.OnTaskCreated();
                    currentTasks.Add(newTask);
                    spawnTimer = 0f;
                    TaskListUI.self.ShowUpdate();
                }
            }
        }
    }
コード例 #4
0
        private void ListView_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
        {
            var genericTask = _data.ElementAt(e.Position);

            _taskToStartActivity = genericTask;
            if (_accessToken == null)
            {
                _startActivityAfterAuthorize = true;
                StartDropboxAuthActivity();
            }
            else
            {
                StartDetailsActivity();
            }
        }
コード例 #5
0
ファイル: LoginActivity.cs プロジェクト: eguemiel/addnApp
        private void BtnAcessar_Click(object sender, EventArgs e)
        {
            var task = new GenericTask()
                       .WithPreExecuteProcess((b) =>
            {
                Loading.Visibility = ViewStates.Visible;
            }).WithBackGroundProcess((b, t) =>
            {
                try
                {
                    //RunOnUiThread(() => { EditUser.Text = "junior"; });
                    //RunOnUiThread(() => { EditSenha.Text = "1234"; });
                    if (string.IsNullOrEmpty(EditUser.Text) || string.IsNullOrEmpty(EditSenha.Text))
                    {
                        if (string.IsNullOrEmpty(EditUser.Text))
                        {
                            RunOnUiThread(() => { EditUser.Error = "Favor digitar o usuário"; });
                        }

                        if (string.IsNullOrEmpty(EditSenha.Text))
                        {
                            RunOnUiThread(() => { EditSenha.Error = "Favor digitar a senha"; });
                        }
                    }
                    else
                    {
                        if (Login(EditUser.Text, EditSenha.Text))
                        {
                            ConfigurationBase.Instance.UserAPP = EditUser.Text;
                            StartActivity(typeof(MainActivity));
                            Finish();
                        }
                        else
                        {
                            ShowError("Usuário ou senha inválidos");
                        }
                    }
                }
                catch (Exception ex)
                {
                    ShowError(ex.Message);
                }
            }).WithPosExecuteProcess((b, t) =>
            {
                Loading.Visibility = ViewStates.Gone;
            }).Execute();
        }
コード例 #6
0
        private void InsertTaskAfterActivityResult(string identifier, string title)
        {
            var content = GetTasksContent(_accessToken);
            var index   = content.IndexOf("Tasks\r\n");

            content = content.Insert(index + 7, "\t" + identifier + "::" + title + "\r\n");
            var task = Task.Run(() => {
                var dbx = new DropboxClient(_accessToken);
                var mem = new MemoryStream(Encoding.UTF8.GetBytes(content));
                dbx.Files.UploadAsync("/Development/Tasks.txt", Dropbox.Api.Files.WriteMode.Overwrite.Instance, false, null, false, mem).ContinueWith(m => {
                    if (m.IsCompleted && m.Status == TaskStatus.RanToCompletion)
                    {
                        var genericTask = new GenericTask()
                        {
                            Category    = "B",
                            Identifier  = identifier,
                            IsCompleted = false,
                            IsOutside   = false,
                            Title       = title
                        };
                        //_data.Add(genericTask);
                        _dbHandler.InsertGenericTask(genericTask);

                        RunOnUiThread(() => Toast.MakeText(this, "Tasks updated", ToastLength.Short).Show());

                        _adapterList.Add(new JavaDictionary <string, object> {
                            { "identifier", genericTask.Identifier },
                            { "title", genericTask.Title }
                        });
                        RunOnUiThread(() => {
                            RepopulateTasksFromContent(content);
                            _listView.DeferNotifyDataSetChanged();
                        });
                    }
                    else
                    {
                        RunOnUiThread(() => Toast.MakeText(this, "Error: Unable to insert task", ToastLength.Short).Show());
                    }
                    dbx.Dispose();
                }
                                                                                                                                                      );
            });
        }
コード例 #7
0
        private void ProcessRRNumber(RegistroDeReforma registroDeReforma)
        {
            RrResponse response = new RrResponse();
            var        task     = new GenericTask()
                                  .WithPreExecuteProcess((b) =>
            {
                Program.Main.ShowLoading();
            }).WithBackGroundProcess((b, t) =>
            {
                try
                {
                    var request        = new RrRequest();
                    request.Item       = Convert.ToInt32(registroDeReforma.NumeroItem);
                    request.Registro   = Convert.ToInt32(registroDeReforma.NumeroRR);
                    request.PasswordBD = ConfigurationBase.Instance.PasswordBD;
                    request.Url        = ConfigurationBase.Instance.ApiUrl;
                    request.UserId     = ConfigurationBase.Instance.UserIdBD;
                    response           = RrApi.Instance.GetRr(request);
                }
                catch (Exception ex)
                {
                    Program.Main.ShowMessage("Ocorreu um erro ao buscar a RR", ToastLength.Long, ToastMessageType.Error);
                }
            }).WithPosExecuteProcess((b, t) =>
            {
                if (response.Success)
                {
                    txtClientName.Text             = response.NomeCliente;
                    txtData.Text                   = response.DataAbertura;
                    txtEquipamentoDescription.Text = response.DescricaoEquipamento;
                    txtNroNota.Text                = response.NumeroNF.ToString();

                    LoadDataRegistroDeReforma(response);
                }

                Program.Main.HideLoading();
            }).Execute();
        }
コード例 #8
0
        private void NextImage_Click(object sender, EventArgs e)
        {
            var task = new GenericTask()
                       .WithPreExecuteProcess((b) =>
            {
                ShowLoading();
            }).WithBackGroundProcess((b, t) =>
            {
                try
                {
                    if (indexAtual + 1 < quantidadeImagens)
                    {
                        RunOnUiThread(() =>
                        {
                            bitmap = new List <Bitmap>();
                            bitmap.Add(PegarImagensServidor(registroDeReforma, indexAtual + 1));

                            imageView = FindViewById <EnchantedViewPagerExtended>(Resource.Id.cadastroRRImagesView);

                            adapter              = new ImagesViewAdapter(this, bitmap);
                            imageView.Adapter    = adapter;
                            previusImage.Enabled = true;
                        });
                    }
                    else
                    {
                        nextImage.Enabled = false;
                    }
                }
                catch (Exception ex)
                {
                    Program.Main.ShowMessage(ex.Message, ToastLength.Long, Base.Enums.ToastMessageType.Error);
                }
            }).WithPosExecuteProcess((b, t) =>
            {
                HideLoading();
            }).Execute();
        }
コード例 #9
0
        public override void OnDone()
        {
            if (Data != null)
            {
                RegistroDeReforma registroDeReforma = (RegistroDeReforma)Data;

                if (string.IsNullOrEmpty(registroDeReforma.NumeroRR))
                {
                    Program.Main.ShowMessage("Favor inserir um Registro de Reforma (RR)");
                    return;
                }

                if ((registroDeReforma.ListaDeImagens == null || !registroDeReforma.ListaDeImagens.Any()) && string.IsNullOrWhiteSpace(registroDeReforma.Observacao))
                {
                    Program.Main.ShowMessage("É necessário inserir ao menos uma imagem ou uma observação para continuar");
                    return;
                }

                var task = new GenericTask()
                           .WithPreExecuteProcess((b) =>
                {
                    Program.Main.ShowLoading();
                }).WithBackGroundProcess((b, t) =>
                {
                    try
                    {
                        if (registroDeReforma.ListaDeImagens != null && registroDeReforma.ListaDeImagens.Any())
                        {
                            InserirImagensServidor(registroDeReforma);
                        }

                        if (!string.IsNullOrWhiteSpace(registroDeReforma.Observacao))
                        {
                            var request        = new ObservationRequest();
                            request.Item       = Convert.ToInt32(registroDeReforma.NumeroItem);
                            request.Registro   = Convert.ToInt32(registroDeReforma.NumeroRR);
                            request.PasswordBD = ConfigurationBase.Instance.PasswordBD;
                            request.Url        = ConfigurationBase.Instance.ApiUrl;
                            request.UserId     = ConfigurationBase.Instance.UserIdBD;

                            var observationResponse = RrApi.Instance.GetIdObservacao(request);

                            if (observationResponse.Success)
                            {
                                var idObservation = observationResponse.IdObservation + 1;

                                request.Texto        = registroDeReforma.Observacao;
                                request.Usuario      = ConfigurationBase.Instance.UserAPP;
                                request.IdObservacao = idObservation;

                                var responseObservacao = RrApi.Instance.InsertObservacao(request);
                                if (!responseObservacao)
                                {
                                    throw new Exception("Ocorreu um erro ao inserir informações de observação");
                                }
                            }
                            else
                            {
                                throw new Exception("Ocorreu um erro ao buscar informações da obseração");
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        Program.Main.ShowMessage(ex.Message, ToastLength.Long, Base.Enums.ToastMessageType.Error);
                    }
                }).WithPosExecuteProcess((b, t) =>
                {
                    var wizard  = Program.Main.Navigate <CadastroRRFragment>();
                    wizard.Data = new RegistroDeReforma();
                    Program.Main.ShowMessage("Cadastros de imagens realizado com sucesso", ToastLength.Long, Base.Enums.ToastMessageType.Success);
                    Program.Main.HideLoading();
                }).Execute();
            }
        }
コード例 #10
0
 public void SetTask(GenericTask _task)
 {
     Task             = _task;
     TitleText.text   = _task.Title;
     ContentText.text = _task.Display;
 }
コード例 #11
0
ファイル: BasicTaskSample.cs プロジェクト: huangt5/MyTools
        public void GenericTask()
        {
            var task = new GenericTask(() => Console.WriteLine("Generic task"));

            task.Start();
        }