diff --git a/src/main/java/com/dbnt/kcgfilemanager/controller/BoardController.java b/src/main/java/com/dbnt/kcgfilemanager/controller/BoardController.java index 45df7fb..beb3f95 100644 --- a/src/main/java/com/dbnt/kcgfilemanager/controller/BoardController.java +++ b/src/main/java/com/dbnt/kcgfilemanager/controller/BoardController.java @@ -78,8 +78,8 @@ public class BoardController { } @GetMapping("/fileDownload") - public void fileDownload(Integer contentSeq, Integer fileSeq, HttpServletRequest request, HttpServletResponse response){ - FileInfo downlodFileInfo = boardService.selectDownloadFileInfo(contentSeq, fileSeq); + public void fileDownload(Principal principal, Integer contentSeq, Integer fileSeq, HttpServletRequest request, HttpServletResponse response){ + FileInfo downlodFileInfo = boardService.selectDownloadFileInfo(contentSeq, fileSeq, ((UserInfo)((UsernamePasswordAuthenticationToken) principal).getPrincipal()).getUserId()); BufferedInputStream in; BufferedOutputStream out; @@ -98,8 +98,8 @@ public class BoardController { } @GetMapping("/fileDownloadToZip") - public void fileDownloadToZip(Integer contentSeq, @RequestParam(value = "fileSeq") List fileSeqList, HttpServletResponse response){ - List targetList = boardService.selectDownloadFileInfoList(contentSeq, fileSeqList); + public void fileDownloadToZip(Principal principal, Integer contentSeq, @RequestParam(value = "fileSeq") List fileSeqList, HttpServletResponse response){ + List targetList = boardService.selectDownloadFileInfoList(contentSeq, fileSeqList, ((UserInfo)((UsernamePasswordAuthenticationToken) principal).getPrincipal()).getUserId()); BufferedInputStream in; BufferedOutputStream out; diff --git a/src/main/java/com/dbnt/kcgfilemanager/service/BoardService.java b/src/main/java/com/dbnt/kcgfilemanager/service/BoardService.java index 6377cf8..0de7c19 100644 --- a/src/main/java/com/dbnt/kcgfilemanager/service/BoardService.java +++ b/src/main/java/com/dbnt/kcgfilemanager/service/BoardService.java @@ -104,7 +104,7 @@ public class BoardService { fileInfo.setFileSize(calculationFileSize(file.getSize())); fileInfo.setSavePath(path); fileInfoRepository.save(fileInfo); - saveBoardLog(content.getContentSeq(), LogStatus.FILE_ADD, file.getOriginalFilename(), content.getCreateId()); + saveBoardLog(content.getContentSeq(), LogStatus.FILE_ADD, fileInfo.getFullName(), content.getCreateId()); } } @@ -130,18 +130,21 @@ public class BoardService { return target; } - public List selectDownloadFileInfoList(Integer contentSeq, List fileSeqList) { + public List selectDownloadFileInfoList(Integer contentSeq, List fileSeqList, String userId) { List fileList = fileInfoRepository.findByContentSeqOrderByFileSeqAsc(contentSeq); List targetList = new ArrayList<>(); for(FileInfo file: fileList){ if(fileSeqList.contains(file.getFileSeq())){ targetList.add(file); + saveBoardLog(contentSeq, LogStatus.FILE_DOWN, file.getFullName(), userId); } } return targetList; } - public FileInfo selectDownloadFileInfo(Integer contestSeq, Integer fileSeq){ - return fileInfoRepository.findById(new FileInfo.FileInfoId(contestSeq, fileSeq)).orElse(null); + public FileInfo selectDownloadFileInfo(Integer contestSeq, Integer fileSeq, String userId){ + FileInfo fileInfo = fileInfoRepository.findById(new FileInfo.FileInfoId(contestSeq, fileSeq)).orElse(null); + saveBoardLog(contestSeq, LogStatus.FILE_DOWN, fileInfo.getFullName(), userId); + return fileInfo; } public List selectContentLog(Integer contentSeq){