- monthly_worker_status 조회 시 GROUP BY로 중복 데이터 합산 - 작업보고서 삭제 권한을 그룹장 이상으로 제한 (admin, system, group_leader) - 중복 데이터 정리를 위한 마이그레이션 SQL 추가 (009_fix_duplicate_monthly_status.sql) - synology_deployment 버전에도 동일 수정 적용
38 lines
1.3 KiB
JavaScript
38 lines
1.3 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
const AttendanceController = require('../controllers/attendanceController');
|
|
const { verifyToken } = require('../middlewares/authMiddleware');
|
|
|
|
// 모든 라우트에 인증 미들웨어 적용
|
|
router.use(verifyToken);
|
|
|
|
// 일일 근태 현황 조회 (대시보드용)
|
|
router.get('/daily-status', AttendanceController.getDailyAttendanceStatus);
|
|
|
|
// 일일 근태 기록 조회
|
|
router.get('/daily-records', AttendanceController.getDailyAttendanceRecords);
|
|
|
|
// 근태 기록 생성/업데이트
|
|
router.post('/records', AttendanceController.upsertAttendanceRecord);
|
|
router.put('/records', AttendanceController.upsertAttendanceRecord);
|
|
|
|
// 휴가 처리
|
|
router.post('/vacation', AttendanceController.processVacation);
|
|
|
|
// 초과근무 승인
|
|
router.post('/overtime/approve', AttendanceController.approveOvertime);
|
|
|
|
// 근로 유형 목록 조회
|
|
router.get('/attendance-types', AttendanceController.getAttendanceTypes);
|
|
|
|
// 휴가 유형 목록 조회
|
|
router.get('/vacation-types', AttendanceController.getVacationTypes);
|
|
|
|
// 작업자 휴가 잔여 조회
|
|
router.get('/vacation-balance/:worker_id', AttendanceController.getWorkerVacationBalance);
|
|
|
|
// 월별 근태 통계
|
|
router.get('/monthly-stats', AttendanceController.getMonthlyAttendanceStats);
|
|
|
|
module.exports = router;
|