diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..2eea525 --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +.env \ No newline at end of file diff --git a/buildDockerWindow.sh b/buildDockerWindow.sh new file mode 100755 index 0000000..1701b13 --- /dev/null +++ b/buildDockerWindow.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +docker buildx build --platform linux/amd64 -t comncheck/spring-backend-oauth:1.0.5 . + diff --git a/src/main/java/com/ComNCheck/ComNCheck/ComNCheckApplication.java b/src/main/java/com/ComNCheck/ComNCheck/ComNCheckApplication.java index 160ade7..f71d3c8 100644 --- a/src/main/java/com/ComNCheck/ComNCheck/ComNCheckApplication.java +++ b/src/main/java/com/ComNCheck/ComNCheck/ComNCheckApplication.java @@ -1,6 +1,5 @@ package com.ComNCheck.ComNCheck; -import io.github.cdimascio.dotenv.Dotenv; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -9,16 +8,6 @@ public class ComNCheckApplication { public static void main(String[] args) { - //Load .env file - Dotenv dotenv = Dotenv.load(); - System.setProperty("H2_DB_URL", dotenv.get("H2_DB_URL")); - System.setProperty("DB_USERNAME", dotenv.get("DB_USERNAME")); - System.setProperty("DB_PASSWORD", dotenv.get("DB_PASSWORD")); - System.setProperty("JWT_SECRET", dotenv.get("JWT_SECRET")); - System.setProperty("GOOGLE_CLIENT_ID", dotenv.get("GOOGLE_CLIENT_ID")); - System.setProperty("GOOGLE_CLIENT_SECRET", dotenv.get("GOOGLE_CLIENT_SECRET")); - System.setProperty("JWT_EXPIRATIONMS",dotenv.get("JWT_EXPIRATIONMS")); - System.setProperty("GOOGLE_REDIRECT_URI",dotenv.get("GOOGLE_REDIRECT_URI")); SpringApplication.run(ComNCheckApplication.class, args); } diff --git a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/controller/QuestionController.java b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/controller/QuestionController.java index 61972ab..c10b242 100644 --- a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/controller/QuestionController.java +++ b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/controller/QuestionController.java @@ -52,7 +52,8 @@ public ResponseEntity getQuestion(@PathVariable Long majorQ } @GetMapping - @Operation(summary = "fAQ의 답변이 달린 게시글 목록 조회", description = "댓글이 달린 모든 게시글 목록을 조회한다.") + @Operation(summary = "fAQ의 답변이 달린 게시글 목록 조회 공유가 true 인 경우만" + , description = "댓글이 달린 모든 게시글 목록을 조회한다.") public ResponseEntity> getAllQuestion() { List questions = questionService.getQuestionsWithAnswer(); return ResponseEntity.ok(questions); diff --git a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/dto/request/QuestionRequestDTO.java b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/dto/request/QuestionRequestDTO.java index 1c25ef1..b5a79e7 100644 --- a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/dto/request/QuestionRequestDTO.java +++ b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/dto/request/QuestionRequestDTO.java @@ -8,5 +8,5 @@ public class QuestionRequestDTO { private String title; private String content; - + private boolean shared; } diff --git a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/dto/response/QuestionResponseDTO.java b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/dto/response/QuestionResponseDTO.java index 89b7b60..db00297 100644 --- a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/dto/response/QuestionResponseDTO.java +++ b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/dto/response/QuestionResponseDTO.java @@ -15,12 +15,14 @@ public class QuestionResponseDTO { private LocalDateTime createdAt; private LocalDateTime updatedAt; private AnswerResponseDTO answer; + private boolean shared; public static QuestionResponseDTO of(Question question) { return QuestionResponseDTO.builder() .id(question.getId()) .title(question.getTitle()) .content(question.getContent()) + .shared(question.isShared()) //.writerId(question.getWriter().getId()) .createdAt(question.getCreatedAt()) .updatedAt(question.getUpdatedAt()) diff --git a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/entity/Question.java b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/entity/Question.java index 607a327..e09068b 100644 --- a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/entity/Question.java +++ b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/model/entity/Question.java @@ -37,6 +37,9 @@ public class Question { @Column(nullable = false) private String content; + @Column(nullable = false) + private boolean shared; + @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "writer_id") private Member writer; @@ -48,13 +51,10 @@ public class Question { @Column private LocalDateTime updatedAt; -// @Column -// private boolean - - /* 연관관계 편의 메서드 */ + public void setAnswer(Answer answer) { this.answer = answer; answer.setQuestion(this); diff --git a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/repository/QuestionRepository.java b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/repository/QuestionRepository.java index 3c13ac2..0aae3eb 100644 --- a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/repository/QuestionRepository.java +++ b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/repository/QuestionRepository.java @@ -2,9 +2,12 @@ import com.ComNCheck.ComNCheck.domain.majorQuestion.model.entity.Question; import java.util.List; +import java.util.Optional; import org.springframework.data.jpa.repository.JpaRepository; public interface QuestionRepository extends JpaRepository { List findAllByWriterMemberId(Long writerId); List findByAnswerIsNotNull(); + Optional findByIdAndSharedTrue(Long id); + List findByAnswerIsNotNullAndSharedTrue(); } diff --git a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/service/QuestionService.java b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/service/QuestionService.java index fb03507..e96f5be 100644 --- a/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/service/QuestionService.java +++ b/src/main/java/com/ComNCheck/ComNCheck/domain/majorQuestion/service/QuestionService.java @@ -29,6 +29,7 @@ public QuestionResponseDTO createQuestion(QuestionRequestDTO requestDTO, Long me Question question = Question.builder() .title(requestDTO.getTitle()) .content(requestDTO.getContent()) + .shared(requestDTO.isShared()) .writer(writer) .build(); @@ -44,7 +45,7 @@ public QuestionResponseDTO getQuestion(Long questionId) { public List getQuestionsWithAnswer() { - return questionRepository.findByAnswerIsNotNull() + return questionRepository.findByAnswerIsNotNullAndSharedTrue() .stream() .map(QuestionResponseDTO::of) .toList();