ERP-node/backend-node/src/routes/fileRoutes.ts

46 lines
974 B
TypeScript

import { Router } from "express";
import {
uploadFiles,
deleteFile,
getFileList,
downloadFile,
uploadMiddleware,
} from "../controllers/fileController";
import { authenticateToken } from "../middleware/authMiddleware";
const router = Router();
// 모든 파일 API는 인증 필요
router.use(authenticateToken);
/**
* @route POST /api/files/upload
* @desc 파일 업로드 (attach_file_info 테이블에 저장)
* @access Private
*/
router.post("/upload", uploadMiddleware, uploadFiles);
/**
* @route GET /api/files
* @desc 파일 목록 조회
* @query targetObjid, docType, companyCode
* @access Private
*/
router.get("/", getFileList);
/**
* @route DELETE /api/files/:objid
* @desc 파일 삭제 (논리적 삭제)
* @access Private
*/
router.delete("/:objid", deleteFile);
/**
* @route GET /api/files/download/:objid
* @desc 파일 다운로드
* @access Private
*/
router.get("/download/:objid", downloadFile);
export default router;