Exemplo n.º 1
0
        private async void EditarLembrete(LembreteDAO lembreteSelecionado)
        {
            Debug.WriteLine("Editar: " + lembreteSelecionado.Titulo);

            // Vamos editar
            await App._navigationService.NavigateToFormularioLembreteEditar(this, lembreteSelecionado);
        }
Exemplo n.º 2
0
		public FormularioLembreteView(ListaLembretesViewModel listaLembretesViewModel, LembreteDAO lembrete)
		{
			InitializeComponent();

			this.BindingContext = new FormularioLembreteViewModel(listaLembretesViewModel,lembrete);

		}
Exemplo n.º 3
0
        public VisualizarLembretePopupViewModel(LembreteDAO _lembrete)
        {
            // recebe o lembrete
            lembrete = _lembrete;

            // exibe os valores
            CarregaValues();
        }
Exemplo n.º 4
0
 public async Task NavigateToPopupVisualizar(LembreteDAO lembrete)
 {
     try
     {
         await Application.Current.MainPage.Navigation.PushPopupAsync(new VisualizarLembretePopupView(lembrete));
     }
     catch (Exception e)
     {
         Debug.WriteLine(e.Message);
         return;
     }
 }
Exemplo n.º 5
0
        public FormularioLembreteViewModel(ListaLembretesViewModel _listaLembretesViewModel, LembreteDAO _lembrete)
        {
            // recebo o objeto para atualizar atela de list depois
            listaLembretesViewModel = _listaLembretesViewModel;

            // recebemos um lembrete para editar
            lembreteEditar = _lembrete;

            this.CadastrarCommand = new Command(this.Cadastrar);

            // é para editar o lembrete ou para criar um novo?
            if (lembreteEditar != null)
            {
                this.ExibeValoresLembrete();
            }
        }
Exemplo n.º 6
0
        private async void DeletarLembrete(LembreteDAO lembreteSelecionado)
        {
            Debug.WriteLine("Deletar: " + lembreteSelecionado.Titulo);

            var realm = Realm.GetInstance();

            var lembreteDel = realm.All <LembreteDAO>().First(b => b.Titulo == lembreteSelecionado.Titulo);

            // Delete an object with a transaction
            using (var trans = realm.BeginWrite())
            {
                realm.Remove(lembreteDel);
                trans.Commit();
            }

            // atualzia a lista
            this.CarregarListaLembretes();
        }
Exemplo n.º 7
0
        private async void Cadastrar()
        {
            try
            {
                Load = true;

                //verifica se preencheu os campos corretamente
                if (string.IsNullOrEmpty(Titulo) || string.IsNullOrEmpty(Descricao))
                {
                    await App._alertService.ShowAsync("Atenção", "Informe pelo menos um Título e uma Descrição.", "Ok");

                    return;
                }

                // converto a hora timespam em datetime
                DateTime HrLimite = Convert.ToDateTime(Hora.ToString());

                // Data limite
                DateTime dataLimite = Convert.ToDateTime(Data.ToString());


                // gero a data/hora do lembrete a ser executado
                DateTime dataHoraLimite = new DateTime(dataLimite.Year,
                                                       dataLimite.Month,
                                                       dataLimite.Day,
                                                       HrLimite.Hour,
                                                       HrLimite.Minute, 01);

                int idLembrete = 0;

                // instancio o realm
                var realm = Realm.GetInstance();

                var myLembreteCount = realm.All <LembreteDAO>();

                // esta populada a base de dados
                if (myLembreteCount.Count() > 0)
                {
                    var lemb = realm.All <LembreteDAO>().OrderByDescending(l => l.Id).First();
                    idLembrete = lemb.Id + 1;
                }
                else                   // primeiro cadasatro...
                {
                    idLembrete = 1;
                }

                if (lembreteEditar == null)
                {
                    // vamos gravar um novo
                    realm.Write(() =>
                    {
                        realm.Add(new LembreteDAO
                        {
                            Id         = idLembrete,
                            Titulo     = Titulo,
                            Descricao  = Descricao,
                            DataLimite = dataHoraLimite.ToString(),
                            Cor        = ""
                        });
                    });
                }
                else                   // vamos editar

                {
                    LembreteDAO lem = new LembreteDAO
                    {
                        Id         = lembreteEditar.Id,
                        Titulo     = Titulo,
                        Descricao  = Descricao,
                        DataLimite = dataHoraLimite.ToString(),
                        Cor        = ""
                    };
                    // update na base de dados
                    realm.Write(() => realm.Add(lem, update: true));
                }

                // Registra o Lembrete para ser notificado!
                CrossLocalNotifications.Current.Show(Titulo, Descricao, idLembrete, dataHoraLimite);

                // agendo um lembrete no operacional conforme a sua plataforma
                //DependencyService.Get<IReminderService>().Remind(Convert.ToDateTime(lembrete.DataLimite),lembrete.Titulo,lembrete.Descricao);

                // exibe para a interface
                Debug.WriteLine("Adicionado um novo lembrete: " + Titulo);
                await App._alertService.ShowAsync("Informativo", "Lembrete Adicionado com sucesso", "Ok");
            }
            catch (Exception ex)
            {
                await App._alertService.ShowAsync("Atenção", "Erro ao gravar o lembrete: " + ex.Message, "Ok");

                Debug.WriteLine("Erro ao cadastrar um Lembrete: " + ex.Message);
            }
            finally {
                Load = false;
                // atualiza a lista de lembretes
                listaLembretesViewModel.CarregarListaLembretes();
            }
        }
Exemplo n.º 8
0
        public VisualizarLembretePopupView(LembreteDAO lembrete)
        {
            InitializeComponent();

            BindingContext = new VisualizarLembretePopupViewModel(lembrete);
        }
Exemplo n.º 9
0
 public async Task NavigateToFormularioLembreteEditar(ListaLembretesViewModel listaLembretesViewModel, LembreteDAO lembrete)
 {
     try
     {
         // Abre view mas para editar
         await Application.Current.MainPage.Navigation.PushAsync(new FormularioLembreteView(listaLembretesViewModel, lembrete));
     }
     catch (Exception e)
     {
         Debug.WriteLine(e.Message);
         return;
     }
 }