fixing absensi
This commit is contained in:
@@ -76,6 +76,11 @@ const create = async (req, res) => {
|
|||||||
if (attendance && attendance.clock_in) {
|
if (attendance && attendance.clock_in) {
|
||||||
// 🕛 Jika branch tidak mengaktifkan absen siang
|
// 🕛 Jika branch tidak mengaktifkan absen siang
|
||||||
if (!branch.lunch_attendance) {
|
if (!branch.lunch_attendance) {
|
||||||
|
|
||||||
|
if (currentHour < 15 && !attendance.clock_out) {
|
||||||
|
await t.rollback();
|
||||||
|
return response.failed(res, 400, 'Belum waktunya absen pulang');
|
||||||
|
}
|
||||||
// Langsung lewati logika absen siang dan lanjut ke clock_out
|
// Langsung lewati logika absen siang dan lanjut ke clock_out
|
||||||
if (currentHour >= 15 && !attendance.clock_out) {
|
if (currentHour >= 15 && !attendance.clock_out) {
|
||||||
attendance.clock_out = now.toDate();
|
attendance.clock_out = now.toDate();
|
||||||
@@ -101,11 +106,19 @@ const create = async (req, res) => {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (currentHour < 15 && !attendance.clock_out) {
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
if (currentHour < 15 && attendance.lunch_in && !attendance.clock_out) {
|
||||||
await t.rollback();
|
await t.rollback();
|
||||||
return response.failed(res, 400, 'Belum waktunya absen pulang');
|
return response.failed(res, 400, 'Belum waktunya absen pulang');
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
|
if (currentHour < 12 && !attendance.lunch_in) {
|
||||||
|
await t.rollback();
|
||||||
|
return response.failed(res, 400, 'Belum waktunya absen setelah makan siang');
|
||||||
|
}
|
||||||
|
|
||||||
// 🕛 Jika branch pakai absen siang
|
// 🕛 Jika branch pakai absen siang
|
||||||
if (currentHour >= 12 && currentHour < 15 && !attendance.lunch_in) {
|
if (currentHour >= 12 && currentHour < 15 && !attendance.lunch_in) {
|
||||||
attendance.lunch_in = now.toDate();
|
attendance.lunch_in = now.toDate();
|
||||||
@@ -113,12 +126,7 @@ const create = async (req, res) => {
|
|||||||
await t.commit();
|
await t.commit();
|
||||||
return response.success(res, attendance, 'Absen masuk setelah makan siang berhasil');
|
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');
|
|
||||||
}
|
|
||||||
|
|
||||||
if (currentHour >= 15 && !attendance.clock_out) {
|
if (currentHour >= 15 && !attendance.clock_out) {
|
||||||
attendance.clock_out = now.toDate();
|
attendance.clock_out = now.toDate();
|
||||||
|
|
||||||
@@ -141,12 +149,7 @@ const create = async (req, res) => {
|
|||||||
},
|
},
|
||||||
'Absen pulang berhasil'
|
'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();
|
await t.rollback();
|
||||||
|
|||||||
Reference in New Issue
Block a user