private bool UserCanAbsen(pengaturan setting, absen data) { var absenStatus = GetAbsenStatus(setting); if (absenStatus == AbsenStatus.Masuk && data == null) { return(true); } else if (absenStatus == AbsenStatus.Terlambat && data == null) { throw new SystemException("Maaf Anda Terlambat"); } else if (absenStatus == AbsenStatus.Masuk && data != null) { throw new SystemException("Maaf Anda Sudah Absen Masuk"); } else if (absenStatus == AbsenStatus.Terlambat && data != null) { throw new SystemException("Maaf Belum Saatnya Jam Pulang"); } else if (absenStatus == AbsenStatus.Pulang && data == null) { throw new SystemException("Maaf Anda Tidak Tidak Masuk Hari Ini "); } else if (absenStatus == AbsenStatus.Pulang && data != null && data.JamPulang != new TimeSpan()) { throw new SystemException("Maaf Anda Sudah Absen Jam Pulang "); } else { return(true); } }
private void MainCollection_OnChangeSource(pengaturan obj) { if (obj != null) { this.Id = obj.Id; this.JamMasuk = obj.JamMasuk; this.JamPulang = obj.JamPulang; } }
private AbsenStatus GetAbsenStatus(pengaturan setting) { if (setting.JamMasuk.Add(TimeSpan.FromMinutes(setting.KonpensasiTerlambat)) < DateTime.Now.TimeOfDay && DateTime.Now.TimeOfDay < setting.JamPulang) { return(AbsenStatus.Terlambat); } else if ((setting.JamMasuk.Add(TimeSpan.FromMinutes(setting.KonpensasiTerlambat)) > DateTime.Now.TimeOfDay)) { return(AbsenStatus.Masuk); } else { return(AbsenStatus.Pulang); } }
// POST: api/Pengaturan public HttpResponseMessage Post([FromBody] pengaturan value) { using (var db = new OcphDbContext()) { try { value.Id = db.Setting.InsertAndGetLastID(value); if (value.Id > 0) { return(Request.CreateResponse(HttpStatusCode.Accepted, value)); } else { throw new SystemException("Data Tidak Tersimpan"); } } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.Message)); } } }