import { Router } from "express"; import { authenticateToken } from "../middleware/authMiddleware"; import * as departmentController from "../controllers/departmentController"; const router = Router(); // 인증 미들웨어 적용 router.use(authenticateToken); /** * 부서 관리 API 라우트 * 기본 경로: /api/departments */ // 부서 목록 조회 (회사별) router.get("/companies/:companyCode/departments", departmentController.getDepartments); // 부서 상세 조회 router.get("/:deptCode", departmentController.getDepartment); // 부서 생성 router.post("/companies/:companyCode/departments", departmentController.createDepartment); // 부서 수정 router.put("/:deptCode", departmentController.updateDepartment); // 부서 삭제 router.delete("/:deptCode", departmentController.deleteDepartment); // 부서원 목록 조회 router.get("/:deptCode/members", departmentController.getDepartmentMembers); // 사용자 검색 (부서원 추가용) router.get("/companies/:companyCode/users/search", departmentController.searchUsers); // 부서원 추가 router.post("/:deptCode/members", departmentController.addDepartmentMember); // 부서원 제거 router.delete("/:deptCode/members/:userId", departmentController.removeDepartmentMember); // 주 부서 설정 router.put("/:deptCode/members/:userId/primary", departmentController.setPrimaryDepartment); export default router;