updated absensi lunch_in in API history and admin

This commit is contained in:
2025-10-21 14:18:06 +07:00
parent 9d4a310738
commit 328b3653fe
2 changed files with 8 additions and 4 deletions

View File

@@ -3,13 +3,14 @@ const router = express.Router()
const controller = require('../controllers/absensi.controller') const controller = require('../controllers/absensi.controller')
const apiKey = require('../../../middlewares/apiKey') const apiKey = require('../../../middlewares/apiKey')
const jwt = require('../../../middlewares/authentication') const jwt = require('../../../middlewares/authentication')
const checkRole = require('../../../middlewares/checkRole')
const upload = require('../../../middlewares/upload') const upload = require('../../../middlewares/upload')
router.get('/history', apiKey, jwt, (req, res) => { router.get('/history', apiKey, jwt, (req, res) => {
controller.history(req, res); controller.history(req, res);
}) })
router.get('/', apiKey, (req, res) => { router.get('/', apiKey, jwt, checkRole('admin'), (req, res) => {
controller.getAll(req, res) controller.getAll(req, res)
}) })

View File

@@ -266,7 +266,7 @@ const history = async (req, res) => {
const result = attendances.map(a => { const result = attendances.map(a => {
let duration = null; let duration = null;
if (a.clock_in && a.clock_out) { if (a.clock_in && a.clock_out && a.lunch_in) {
const diffMs = new Date(a.clock_out) - new Date(a.clock_in); const diffMs = new Date(a.clock_out) - new Date(a.clock_in);
const totalMinutes = Math.floor(diffMs / 60000); const totalMinutes = Math.floor(diffMs / 60000);
const hours = Math.floor(totalMinutes / 60); const hours = Math.floor(totalMinutes / 60);
@@ -283,6 +283,9 @@ const history = async (req, res) => {
clock_out: a.clock_out clock_out: a.clock_out
? moment(a.clock_out).tz('Asia/Jakarta').format('YYYY-MM-DD HH:mm:ss') ? moment(a.clock_out).tz('Asia/Jakarta').format('YYYY-MM-DD HH:mm:ss')
: '-', : '-',
lunch_in: a.lunch_in
? moment(a.lunch_in).tz('Asia/Jakarta').format('YYYY-MM-DD HH:mm:ss')
: '-',
duration: duration || '-', duration: duration || '-',
type: a.type, type: a.type,
}; };
@@ -297,7 +300,7 @@ const history = async (req, res) => {
const getAll = async (req, res) => { const getAll = async (req, res) => {
try { try {
const today = moment().tz('Asia/Jakarta').format('YYYY-MM-DD'); const today = moment().tz('Asia/Jakarta').format('YYYY-MM-DD');
const attendances = await Attedances.findAll({ const attendances = await Attedances.findAll({
@@ -308,7 +311,7 @@ const getAll = async (req, res) => {
{ {
model: User, model: User,
as: 'user', as: 'user',
attributes: ['id', 'name', 'email'] attributes: ['id', 'name', 'email']
} }
], ],
order: [['created_at', 'DESC']] order: [['created_at', 'DESC']]