Skip to content
Snippets Groups Projects
Commit 5c1bb363 authored by donghyun's avatar donghyun
Browse files

feat(PostController): 파file is deleted with post deleting

parent cf73aa05
No related branches found
No related tags found
No related merge requests found
...@@ -19,13 +19,13 @@ import java.util.List; ...@@ -19,13 +19,13 @@ import java.util.List;
@RequestMapping("/api/file") @RequestMapping("/api/file")
public class FileController { public class FileController {
private final AmazonS3Service amazon3SService; private final AmazonS3Service amazonS3Service;
@PostMapping("/uploads") @PostMapping("/uploads")
public List<S3FileDto> uploadFiles( public List<S3FileDto> uploadFiles(
@RequestParam(value = "uploadFilePath") String uploadFilePath, @RequestParam(value = "uploadFilePath") String uploadFilePath,
@RequestPart(value = "files") List<MultipartFile> multipartFiles) { @RequestPart(value = "files") List<MultipartFile> multipartFiles) {
return amazon3SService.uploadFiles(uploadFilePath, multipartFiles); return amazonS3Service.uploadFiles(uploadFilePath, multipartFiles);
} }
@DeleteMapping("/delete") @DeleteMapping("/delete")
...@@ -34,7 +34,7 @@ public class FileController { ...@@ -34,7 +34,7 @@ public class FileController {
@RequestParam(value = "uuidFileName") String uuidFileName) { @RequestParam(value = "uuidFileName") String uuidFileName) {
return ResponseEntity return ResponseEntity
.status(HttpStatus.OK) .status(HttpStatus.OK)
.body(amazon3SService.deleteFile(uploadFilePath, uuidFileName)); .body(amazonS3Service.deleteFile(uploadFilePath, uuidFileName));
} }
@GetMapping("/get") @GetMapping("/get")
...@@ -42,7 +42,7 @@ public class FileController { ...@@ -42,7 +42,7 @@ public class FileController {
@RequestParam String uploadFilePath, @RequestParam String uploadFilePath,
@RequestParam String uuidFileName) { @RequestParam String uuidFileName) {
try { try {
InputStream inputStream = amazon3SService.getFile(uploadFilePath, uuidFileName); InputStream inputStream = amazonS3Service.getFile(uploadFilePath, uuidFileName);
if (inputStream != null) { if (inputStream != null) {
byte[] buffer = new byte[4048]; byte[] buffer = new byte[4048];
int bytesRead; int bytesRead;
......
...@@ -6,6 +6,9 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -6,6 +6,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.server.ResponseStatusException; import org.springframework.web.server.ResponseStatusException;
import umc.spring.file.domain.S3File;
import umc.spring.file.domain.S3FileDto;
import umc.spring.file.service.AmazonS3Service;
import umc.spring.post.data.dto.CommentDto; import umc.spring.post.data.dto.CommentDto;
import umc.spring.post.data.dto.PostDto; import umc.spring.post.data.dto.PostDto;
import umc.spring.post.data.dto.PostResDto; import umc.spring.post.data.dto.PostResDto;
...@@ -29,6 +32,9 @@ public class PostServiceImpl implements PostService{ ...@@ -29,6 +32,9 @@ public class PostServiceImpl implements PostService{
@Autowired @Autowired
private final PostRepository postRepository; private final PostRepository postRepository;
@Autowired
private final AmazonS3Service amazonS3Service;
@Autowired @Autowired
private final CommentRepository commentRepository; private final CommentRepository commentRepository;
...@@ -37,8 +43,9 @@ public class PostServiceImpl implements PostService{ ...@@ -37,8 +43,9 @@ public class PostServiceImpl implements PostService{
@Autowired @Autowired
private final LikeRepository likeRepository; private final LikeRepository likeRepository;
public PostServiceImpl(PostRepository postRepository, CommentRepository commentRepository, UserRepository userRepository, LikeRepository likeRepository) { public PostServiceImpl(PostRepository postRepository, AmazonS3Service amazonS3Service, CommentRepository commentRepository, UserRepository userRepository, LikeRepository likeRepository) {
this.postRepository = postRepository; this.postRepository = postRepository;
this.amazonS3Service = amazonS3Service;
this.commentRepository = commentRepository; this.commentRepository = commentRepository;
this.userRepository = userRepository; this.userRepository = userRepository;
this.likeRepository = likeRepository; this.likeRepository = likeRepository;
...@@ -89,6 +96,8 @@ public class PostServiceImpl implements PostService{ ...@@ -89,6 +96,8 @@ public class PostServiceImpl implements PostService{
throw new ResponseStatusException(HttpStatus.UNAUTHORIZED, "token not found"); throw new ResponseStatusException(HttpStatus.UNAUTHORIZED, "token not found");
} }
if(Objects.equals(byId.get().getUserId(), userInfoDto.getUserId())){ if(Objects.equals(byId.get().getUserId(), userInfoDto.getUserId())){
S3File s3File = byId.get().getS3File();
amazonS3Service.deleteFile(s3File.getUploadFilePath(), s3File.getUploadFileName());
postRepository.deleteById(id); postRepository.deleteById(id);
return true; return true;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment