65 lines
2.1 KiB
Java
65 lines
2.1 KiB
Java
package com.interplug.qcast.biz.file;
|
|
|
|
import com.interplug.qcast.biz.file.dto.FileRequest;
|
|
import com.interplug.qcast.biz.object.dto.*;
|
|
import io.swagger.v3.oas.annotations.Operation;
|
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
|
import jakarta.servlet.http.HttpServletRequest;
|
|
import jakarta.servlet.http.HttpServletResponse;
|
|
import java.util.List;
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.http.HttpStatus;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
@Slf4j
|
|
@RestController
|
|
@RequestMapping("/api/file")
|
|
@RequiredArgsConstructor
|
|
@Tag(name = "FileController", description = "파일 관련 API")
|
|
public class FileController {
|
|
|
|
private final FileService fileService;
|
|
|
|
@Operation(description = "파일을 다운로드 한다.")
|
|
@PostMapping("/fileDownload")
|
|
@ResponseStatus(HttpStatus.OK)
|
|
public void fileDownload(
|
|
HttpServletRequest request,
|
|
HttpServletResponse response,
|
|
@RequestBody FileRequest fileRequest)
|
|
throws Exception {
|
|
|
|
fileService.downloadFile(request, response, fileRequest);
|
|
}
|
|
|
|
@Operation(description = "모든 파일을 zip 다운로드 한다.")
|
|
@PostMapping("/zipFileDownload")
|
|
@ResponseStatus(HttpStatus.OK)
|
|
public void allFileDownload(
|
|
HttpServletRequest request,
|
|
HttpServletResponse response,
|
|
@RequestBody FileRequest fileRequest)
|
|
throws Exception {
|
|
|
|
fileService.downloadZipFile(request, response, fileRequest);
|
|
}
|
|
|
|
@Operation(description = "파일을 업로드 한다.")
|
|
@PostMapping("/fileUpload")
|
|
@ResponseStatus(HttpStatus.OK)
|
|
public List<FileRequest> fileUpload(
|
|
HttpServletRequest request, HttpServletResponse response, FileRequest fileRequest)
|
|
throws Exception {
|
|
return fileService.fileUpload(request, fileRequest);
|
|
}
|
|
|
|
@Operation(description = "파일을 삭제 한다.")
|
|
@PostMapping("/fileDelete")
|
|
@ResponseStatus(HttpStatus.NO_CONTENT)
|
|
public Integer fileDelete(@RequestBody FileRequest fileRequest) throws Exception {
|
|
Integer resultCnt = fileService.deleteFile(fileRequest);
|
|
return resultCnt;
|
|
}
|
|
}
|