public List <kelengkapan> GetKelengkapan(permohonan item) { using (var db = new OcphDbContext()) { return(db.Kelengkapans.Where(O => O.IdPermohonan == item.IdPemohon).ToList()); } }
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 permohonan CreatePermohonan(layanan t) { if (t == null || t.Id <= 0) { throw new ArgumentNullException("layanan", "layanan IsNull atau Id Layanan 0"); } else if (Pemohon == null) { throw new ArgumentNullException("Pemohon", "Pemohon Tidak Ada"); } else { var itemPermohonan = new permohonan { IdLayanan = t.Id, IdPemohon = Pemohon.Id, Status = StatusPermohonan.Baru }; var result = UnitWorkPermohonan.InsertNewPermohonan(itemPermohonan, t); if (result != null) { this.Permohonan = itemPermohonan; return(itemPermohonan); } else { throw new ArgumentNullException("permohonan", "Permohonan Tidak Berhasil Dibuat"); } } }
public tahapan GetNextTahapan(permohonan permohonan) { try { var current = GetCurrentTahapan(permohonan); using (var db = new OcphDbContext()) { int urutan = 1; if (current != null) { var lastTahapan = db.TahapanLayanan.Where(O => O.Id == permohonan.IdLayanan && O.TahapanId == current.Id).FirstOrDefault(); urutan = lastTahapan.Urutan + 1; } var Curenttahapans = from z in db.TahapanLayanan.Where(O => O.Id == permohonan.IdLayanan && O.Urutan == urutan) join y in db.Tahapans.Select() on z.TahapanId equals y.Id select y; return(Curenttahapans.FirstOrDefault()); } } catch { return(null); } }
public List <progress> GetItemsTahapan(permohonan permohonan) { using (var db = new OcphDbContext()) { return(db.Progress.Where(O => O.IdPermohonan == permohonan.Id).ToList()); } }
public tahapan GetCurrentTahapan(permohonan permohonan) { try { using (var db = new OcphDbContext()) { var lastProggress = db.Progress.Where(O => O.IdPermohonan == permohonan.Id).OrderBy(O => O.Id).Last(); if (lastProggress == null) { return(null); } else { var Curenttahapans = from z in db.TahapanLayanan.Where(O => O.Id == permohonan.IdLayanan && O.TahapanId == lastProggress.IdTahapan) join y in db.Tahapans.Select() on z.TahapanId equals y.Id select y; return(Curenttahapans.FirstOrDefault()); } } } catch { return(null); } }
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; } }
public async Task <bool> CreateNewPermohonan(permohonan item) { try { using (var rest = new RestServices()) { var result = await rest.Post <permohonan>("api/ClientPermohonan", item); if (result != null) { lastPermohonan = result; if (list == null) { list = new List <permohonan>(); } list.Add(lastPermohonan); return(true); } return(false); } } catch (Exception ex) { throw new SystemException(ex.Message); } }
public Task <bool> UpdatePermohonan(permohonan item) { using (var db = new OcphDbContext()) { var trans = db.BeginTransaction(); try { var dbKelengkapan = db.Kelengkapans.Where(O => O.IdPermohonan == item.Id).ToList(); if (item.Kelengkapans != null) { foreach (var data in item.Kelengkapans) { var result = dbKelengkapan.Where(O => O.IdPersyaratan == data.IdPersyaratan && O.IdPermohonan == item.Id).FirstOrDefault(); if (result == null) { if (!db.Kelengkapans.Insert(data)) { throw new SystemException("Data Tidak Tersimpan"); } } else { if (!db.Kelengkapans.Update(O => new { O.Status }, data, O => O.IdPermohonan == data.IdPermohonan && O.IdPersyaratan == data.IdPersyaratan)) { throw new SystemException("Data Tidak Tersimpan"); } } } } var dbTahapans = db.Progress.Where(O => O.IdPermohonan == item.Id).ToList(); if (item.Tahapans != null) { foreach (var data in item.Tahapans) { var result = dbTahapans.Where(O => O.IdTahapan == data.IdTahapan && O.IdPermohonan == item.Id).FirstOrDefault(); if (result == null) { if (!db.Progress.Insert(data)) { throw new SystemException("Data Tidak Tersimpan"); } } } } trans.Commit(); return(Task.FromResult(true)); } catch (Exception ex) { trans.Rollback(); throw new SystemException(ex.Message); } } }
public void SetCurrentPermohonan(permohonan item) { Permohonan = item; if (item == null) { _tahapans = null; _currentTahapan = null; } }
public bool SetNextStep(permohonan p, tahapan nextTahapan) { using (var db = new OcphDbContext()) { var result = db.Progress.Insert(new progress { IdPermohonan = p.Id, IdTahapan = nextTahapan.Id }); return(result); } }
public permohonan GetLastPermohonan() { RequestIsValid(); using (var db = new OcphDbContext()) { _permohonan = db.Permohonans.Where(O => O.IdPemohon == Pemohon.Id).LastOrDefault(); } return(_permohonan); }
public List <kelengkapan> GetKelengkapans(permohonan item) { if (item == null) { throw new SystemException("Item Permohonan Tidak Ada"); } else { return(PermohonanService.GetKelengkapan(item)); } }
public PermohonanService(pemohon t, IPermohonanUOW uow) { Pemohon = t; UnitWorkPermohonan = uow; var result = UnitWorkPermohonan.GetDaftarPermohonan(t); if (result.Count > 0) { Permohonan = result.Last(); } }
public bool ChangeWork(permohonan permohonan, progress tahapan) { if (permohonan == null || tahapan == null) { throw new SystemException("permohonan atau tahapan tidak ada"); } else { return(BidangUnitOfWork.ChangeWork(permohonan, tahapan)); } }
public List <kelengkapan> GetKelengkapan(permohonan item) { if (item == null) { throw new SystemException("Permohonan Tidak Ada"); } else { return(UnitWorkPermohonan.GetKelengkapan(item)); } }
public permohonan GetPermohonan(StatusPermohonan status) { RequestIsValid(); if (_permohonan == null) { using (var db = new OcphDbContext()) { _permohonan = db.Permohonans.Where(O => O.Status == status).FirstOrDefault(); } } return(_permohonan); }
private bool CreatedIsValid(permohonan t) { if (Pemohon == null) { throw new SystemException("Pemohon Belum Ditentukan"); } if (t.IdLayanan > 0 && t.IdPemohon > 0) { throw new SystemException("Data Tidak Lengkap"); } return(true); }
public void CreatePermohonan_expected_Null_actual_Null() { var t = new layanan { Id = 1, IdKategoriLayanan = 1 }; var itemPermohonan = new permohonan { IdLayanan = t.Id, IdPemohon = 1, Status = AppCore.StatusPermohonan.Baru }; A.CallTo(() => (unitWork.InsertNewPermohonan(itemPermohonan, t))).WithAnyArguments().Returns(null); Assert.Throws <ArgumentNullException>(() => service.CreatePermohonan(t)); }
public async Task <IActionResult> UpdatePermohonan([FromBody] permohonan item) { try { service = new PermohonanService(new UOWPermohonan()); bool result = await service.UpdatePermohonan(item); return(Ok(result)); } catch (Exception ex) { throw new SystemException(ex.Message); } }
public Task <bool> UpdatePhotoSertifikat(permohonan item) { try { using (var db = new OcphDbContext()) { var updated = db.Permohonans.Update(O => new { O.Photo }, item, O => O.Id == item.Id); return(Task.FromResult(updated)); } } catch (Exception ex) { throw new SystemException(ex.Message); } }
public void CreatePermohonan_expected_true_actual_true() { var t = new layanan { Id = 1, IdKategoriLayanan = 1 }; var itemPermohonan = new permohonan { IdLayanan = t.Id, IdPemohon = 1, Status = AppCore.StatusPermohonan.Baru }; A.CallTo(() => (unitWork.InsertNewPermohonan(itemPermohonan, t))).WithAnyArguments().Returns(new permohonan() { Id = 25 }); var result = service.CreatePermohonan(t); Assert.True(result); }
public IActionResult GetLastPermohonan(int id) { try { var uid = User.FindFirstValue(ClaimTypes.NameIdentifier); if (!string.IsNullOrEmpty(uid)) { var service = new AppCore.Services.ClientService(uid); permohonan result = service.GetLastPermohonan(); return(Ok(result)); } else { return(Unauthorized()); } } catch (Exception ex) { return(BadRequest(ex)); } }
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 permohonan InsertNewPermohonan(permohonan itemPermohonan, layanan lay) { using (var db = new OcphDbContext()) { try { //Tahapan itemPermohonan.Id = db.Permohonans.InsertAndGetLastID(itemPermohonan); if (itemPermohonan.Id > 0) { return(itemPermohonan); } else { throw new SystemException("Permohonan Baru Tidak Dapat Dibuat"); } } catch (Exception ex) { throw new SystemException(ex.Message); } } }
public bool ChangeWork(permohonan permohonan, progress tahapan) { throw new NotImplementedException(); }
public bool CreatePermohonan(permohonan t) { using (var db = new OcphDbContext()) { var trans = db.BeginTransaction(); try { if (CreatedIsValid(t)) { t.IdPemohon = Pemohon.Id; t.Id = db.Permohonans.InsertAndGetLastID(t); if (t.Id > 0) { t.Kelengkapans = new List <kelengkapan>(); var layanans = db.Persyaratans.Where(O => O.IdLayanan == t.IdLayanan); foreach (var item in layanans) { var kelengkapan = new kelengkapan { IdPermohonan = t.Id, IdPersyaratan = item.Id, Status = StatusKelengkapan.Tidak }; kelengkapan.Id = db.Kelengkapans.InsertAndGetLastID(kelengkapan); if (kelengkapan.Id <= 0) { throw new SystemException("Gagal Tambah Kelengkapan "); } else { t.Kelengkapans.Add(kelengkapan); } } t.Tahapans = new List <progress>(); var tahapans = db.Tahapans.Where(O => O.BidangId == t.IdLayanan); foreach (var item in tahapans) { var tahap = new progress { IdPermohonan = t.Id, IdTahapan = item.Id }; tahap.Id = db.Progress.InsertAndGetLastID(tahap); if (tahap.Id > 0) { t.Tahapans.Add(tahap); } else { throw new SystemException("Gagal Tambah Tahapan"); } } _permohonan = t; trans.Commit(); return(true); } return(false); } else { throw new SystemException("Data Tidak Valid"); } } catch (Exception ex) { trans.Rollback(); throw new SystemException(ex.Message); } } }