|
1 | 1 | package goodspace.backend.qna.service; |
2 | 2 |
|
3 | | -import goodspace.backend.qna.domain.Answer; |
4 | | -import goodspace.backend.qna.dto.*; |
5 | | -import goodspace.backend.qna.repository.QuestionFileRepository; |
6 | | -import goodspace.backend.qna.repository.QuestionRepository; |
| 3 | +import goodspace.backend.global.security.TokenProvider; |
7 | 4 | import goodspace.backend.qna.domain.Question; |
8 | 5 | import goodspace.backend.qna.domain.QuestionFile; |
9 | 6 | import goodspace.backend.qna.domain.QuestionStatus; |
| 7 | +import goodspace.backend.qna.dto.*; |
| 8 | +import goodspace.backend.qna.repository.QuestionRepository; |
10 | 9 | import goodspace.backend.user.repository.UserRepository; |
11 | | -import goodspace.backend.global.security.TokenProvider; |
12 | | -import goodspace.backend.user.service.UserService; |
13 | 10 | import lombok.RequiredArgsConstructor; |
14 | 11 | import org.springframework.http.HttpHeaders; |
15 | 12 | import org.springframework.http.MediaType; |
|
31 | 28 | public class QuestionService { |
32 | 29 | private final QuestionRepository questionRepository; |
33 | 30 | private final UserRepository userRepository; |
34 | | - private final QuestionFileRepository questionFileRepository; |
35 | | - private final UserService userService; |
36 | 31 |
|
37 | 32 | @Transactional |
38 | | - public String createQuestion(Principal principal, QuestionRequestDto dto, List<MultipartFile> files) throws IOException { |
| 33 | + public String createQuestion(Principal principal, QuestionRequestDto dto, List<MultipartFile> files) { |
39 | 34 | Question question = Question.builder() |
40 | 35 | .title(dto.getTitle()) |
41 | 36 | .content(dto.getContent()) |
@@ -70,10 +65,14 @@ public String createQuestion(Principal principal, QuestionRequestDto dto, List<M |
70 | 65 | } |
71 | 66 |
|
72 | 67 | @Transactional |
73 | | - public String modifyQuestion(Long id, QuestionRequestDto dto, List<MultipartFile> files) throws IOException { |
| 68 | + public String modifyQuestion(Long id, QuestionRequestDto dto, List<MultipartFile> files) { |
74 | 69 | Question question = questionRepository.findById(id) |
75 | 70 | .orElseThrow(() -> new IllegalArgumentException("수정하려는 질문을 데이터베이스에서 찾지 못하였습니다.")); |
76 | 71 |
|
| 72 | + if (question.getQuestionStatus() != QuestionStatus.WAITING) { |
| 73 | + throw new IllegalStateException("답변 완료된 질문은 수정할 수 없습니다."); |
| 74 | + } |
| 75 | + |
77 | 76 | question.modifyQuestion(dto.getTitle(), dto.getContent(), dto.getType()); |
78 | 77 |
|
79 | 78 | question.clearQuestionFiles(); |
|
0 commit comments