diff --git a/app/modules/absensi/services/absensi.service.js b/app/modules/absensi/services/absensi.service.js index 265c13e..28c9ccb 100644 --- a/app/modules/absensi/services/absensi.service.js +++ b/app/modules/absensi/services/absensi.service.js @@ -74,6 +74,10 @@ const create = async (req, res) => { await t.commit(); return response.success(res, attendance, 'Absen masuk setelah makan siang berhasil'); } + if (currentHour < 12 && !attendance.lunch_in) { + await t.rollback(); + return response.failed(res, 400, 'Belum waktunya absen setelah makan siang'); + } // 🕒 Jika jam >= 15 → otomatis clock_out if (currentHour >= 15 && !attendance.clock_out) { @@ -95,6 +99,10 @@ const create = async (req, res) => { work_duration: attendance.work_duration, }, 'Absen pulang berhasil'); } + if (currentHour < 15 && attendance.lunch_in && !attendance.clock_out) { + await t.rollback(); + return response.failed(res, 400, 'Belum waktunya absen pulang'); + } await t.rollback(); return response.failed(res, 400, 'Sudah melakukan absen hari ini');