private async void SendCommandAction(object obj)
        {
            try
            {
                if (IsBusy)
                {
                    return;
                }
                IsBusy = true;
                if (Valid())
                {
                    Saved = await InboxServices.AddItemAsync(Model);

                    if (Saved)
                    {
                        await Navigation.PopModalAsync();

                        throw new SystemException("Pesan Terkirim");
                    }
                    else
                    {
                        throw new SystemException("Pesan Tidak Terikirm");
                    }
                }
                else
                {
                    throw new SystemException("Input Pesan Anda");
                }
            }
            catch (Exception ex)
            {
                Helper.ShowMessageError(ex.Message);
            }
            finally
            {
                IsBusy = false;
            }
        }
Example #2
0
        private async void RefreshAction(object obj)
        {
            try
            {
                await Task.Delay(300);

                IsBusy = true;
                SourceView.Clear();
                var results = await InboxServices.GetItemsAsync(PermohonanId);

                foreach (var item in results)
                {
                    SourceView.Add(item);
                }
            }
            catch (Exception ex)
            {
                Helper.ShowMessageError(ex.Message);
            }
            finally
            {
                IsBusy = false;
            }
        }
Example #3
0
        private async void LoadAsync()
        {
            try
            {
                await Task.Delay(300);

                if (IsBusy)
                {
                    return;
                }
                IsBusy = true;

                if (lastPermohonan == null)
                {
                    lastPermohonan = await PermohonanService.GetLastPermohonan();

                    CurrentItem = lastPermohonan;
                }

                if (CurrentItem != null)
                {
                    CurrentItem = await PermohonanService.GetPermohonanById(CurrentItem.Id);

                    var layanan = await LayananServices.GetItemAsync(CurrentItem.IdLayanan.ToString());

                    if (layanan != null)
                    {
                        StepBar.Steps = 0;
                        StepBar.Children.Clear();
                        StepBar.StepSelected = 0;
                        StepBar.Steps        = layanan.Tahapans.Count();

                        NextTahapan = null;
                        if (CurrentItem.NextTahapan != null)
                        {
                            NextTahapan = CurrentItem.NextTahapan;
                        }

                        ShowSertifikat = false;
                        if (CurrentItem.Tahapans != null && layanan.Tahapans.Count == CurrentItem.Tahapans.Count)
                        {
                            NextTahapan = new tahapan {
                                Nama = "Tidak Ada", Keterangan = "Proses Telah Selesai"
                            };
                            ShowSertifikat = true;

                            StepBar.Complete();
                        }

                        if (CurrentItem.CurrentTahapan != null && layanan.Tahapans.Count > CurrentItem.Tahapans.Count)
                        {
                            var c = layanan.Tahapans.Where(O => O.Id == CurrentItem.CurrentTahapan.Id).FirstOrDefault();
                            if (c != null)
                            {
                                var index = layanan.Tahapans.IndexOf(c);
                                StepBar.StepSelected = index + 1;
                            }
                        }
                    }
                }
                var result = await PermohonanService.GetPermohonans();

                Permohonans.Clear();
                if (result != null)
                {
                    foreach (var item in result)
                    {
                        Permohonans.Add(item);
                    }
                }


                var message = await InboxServices.GetItemsAsync(CurrentItem.Id);

                LastMessage = null;
                if (message != null && message.Count() > 0)
                {
                    LastMessage = message.FirstOrDefault();
                }
            }
            catch (Exception ex)
            {
                Helper.ShowMessageError(ex.Message);
            }
            finally
            {
                IsBusy = false;
            }
        }