public async Task <IActionResult> Get(int id)
        {
            try
            {
                var Userid = UserManagers.GetUserId(User);
                var user   = await User.GetPemohon(Userid);

                var service = new PermohonanService(new UOWPermohonan());
                var result  = service.GetPermohonan(id);
                service.Permohonan = result;
                result.Tahapans    = service.ItemsTahapan();
                if (result != null)
                {
                    result.CurrentTahapan = service.GetCurrentTahapan();
                    result.NextTahapan    = service.GetNextTahapan();
                    return(Ok(result));
                }

                else
                {
                    return(NotFound());
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
        private async void DaftarAction(object obj)
        {
            try
            {
                if (IsBusy)
                {
                    return;
                }
                IsBusy = true;
                if (Valid())
                {
                    var item = new permohonan {
                        IdLayanan = SelectedItem.Id
                    };
                    item.Layanan = SelectedItem;
                    bool isCreated = await PermohonanService.CreateNewPermohonan(item);

                    if (isCreated)
                    {
                        var main = await Helper.GetMainPageAsync();

                        main.SetPage(typeof(PermohonanView));
                    }
                }
            }
            catch (Exception ex)
            {
                Helper.ShowMessageError(ex.Message);
            }
            finally
            {
                IsBusy = false;
            }
        }
Example #3
0
        private async Task SetCurrentItem(int id)
        {
            try
            {
                if (IsBusy)
                {
                    return;
                }
                IsBusy = true;
                await Task.Delay(300);

                var rest = await PermohonanService.GetPermohonanById(id);

                if (rest != null)
                {
                    CurrentItem = rest;
                }
                RefreshCommand.Execute(null);
            }
            catch (Exception ex)
            {
                Helper.ShowMessageError(ex.Message);
            }
            finally
            {
                IsBusy = false;
            }
        }
Example #4
0
        public async Task <IActionResult> NextStep(permohonan item)
        {
            try
            {
                var id = UserManager.GetUserId(User);
                if (id == null)
                {
                    throw new SystemException("Anda Belum Login");
                }
                var profile = await User.GetPetugas(id);

                if (profile != null)
                {
                    var service = new PermohonanService(new UOWPermohonan());

                    item.NextTahapan = service.GetNextTahapan();
                    service.SetCurrentPermohonan(item);
                    bool success = service.SetNextStep();

                    return(Ok(success));
                }
                else
                {
                    throw new SystemException("Anda Tidak Memiliki Akses");
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message.ToString()));
            }
        }
 public PermohonanServiceTest()
 {
     unitWork = A.Fake <IPermohonanUOW>();
     A.CallTo(() => unitWork.GetDaftarPermohonan(new pemohon())).WithAnyArguments()
     .Returns(new List <permohonan>()
     {
         new permohonan()
     });
     A.CallTo(() => unitWork.GetItemsTahapan(new permohonan())).WithAnyArguments().Returns(
         new List <progress>()
     {
         new progress {
             Id = 1
         },
         new progress {
             Id = 2
         }
     });
     service = A.Fake <PermohonanService>((O) =>
     {
         O.Implements <IPermohonanService>();
         O.WithArgumentsForConstructor(new object[] { new pemohon(), unitWork });
     });
     //service.UnitWorkPermohonan = unitWork;
 }
        public void CreateTestValidate()
        {
            //TestParameter Layanan IsNull, expected ThrowArgumentNull , actual ThrowargumenNull

            IPermohonanService newservice = new PermohonanService(new pemohon {
                Id = 1
            }, unitWork);

            Assert.Throws <ArgumentNullException>(() => newservice.CreatePermohonan(null));


            //TestParameter Pemohon IsNull , expected ThrowArgumentNull, actual ThrowargumentNull
            newservice = new PermohonanService(null, unitWork);
            Assert.Throws <ArgumentNullException>(() => newservice.CreatePermohonan(new layanan()));
        }
Example #7
0
        public async Task <IActionResult> GetAdminWork()
        {
            try
            {
                var id = UserManager.GetUserId(User);
                if (id == null)
                {
                    throw new SystemException("Anda Belum Login");
                }
                var profile = await User.GetPetugas(id);

                if (profile != null)
                {
                    var service      = new PermohonanService(new UOWPermohonan());
                    var adminService = new AdminService(profile, new PermohonanService(new UOWPermohonan()), new BidangUOW(profile));
                    var list         = new List <permohonan>();
                    foreach (var item in profile.Bidangs)
                    {
                        adminService.SetBidangTugas(item);
                        var result = adminService.GetPermohonans();

                        foreach (var data in result)
                        {
                            service.SetCurrentPermohonan(data);
                            data.CurrentTahapan = service.GetCurrentTahapan();
                            data.NextTahapan    = service.GetNextTahapan();
                            if (data.NextTahapan != null && data.NextTahapan.BidangId == item.Id)
                            {
                                list.Add(data);
                            }
                        }
                    }


                    return(Ok(list));
                }
                else
                {
                    throw new SystemException("Anda Tidak Memiliki Akses");
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message.ToString()));
            }
        }
        public async Task <bool> IsNewPermohonan()
        {
            try
            {
                var result = await PermohonanService.GetLastPermohonan();

                if (result == null)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                Helper.ShowMessageError(ex.Message);
                return(true);
            }
        }
 public IActionResult Post([FromBody] permohonan value)
 {
     try
     {
         var id     = UserManagers.GetUserId(User);
         var client = new ClientService(id);
         if (client.Pemohon == null)
         {
             throw new SystemException("Maaf Anda Belum Terdaftar");
         }
         var service = new PermohonanService(client.Pemohon, new UOWPermohonan());
         var result  = service.CreatePermohonan(new layanan {
             Id = value.IdLayanan
         });
         return(Ok(result));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
        public async Task <IActionResult> Get()
        {
            try
            {
                var id   = UserManagers.GetUserId(User);
                var user = await User.GetPemohon(id);

                var service = new PermohonanService(user, new UOWPermohonan());
                var result  = service.GetPermohonans();
                if (result != null)
                {
                    return(Ok(result));
                }
                else
                {
                    return(NotFound());
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Example #11
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;
            }
        }