-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
286 changed files
with
12,984 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,7 @@ on: | |
- main | ||
- AND_develop | ||
- BE_develop | ||
- FE_develop | ||
|
||
jobs: | ||
push-to-gitlab: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -36,4 +36,5 @@ out/ | |
### VS Code ### | ||
.vscode/ | ||
|
||
application-key.yml | ||
application-key.yml | ||
ulvan-firebase-key.json |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# μΈλ° - NFCκΈ°λ° νκΈ μν΅ μ± | ||
![](https://blog.kakaocdn.net/dn/kTWTG/btsHtPbRbMO/ApDuCfEaKyqA57ZlnGnkU0/img.png) | ||
|
||
<div> | ||
<h4>π± NFC, λΈλ£¨ν¬μ€ κΈ°λ°μΌλ‘ μν΅ν΄μ<h4> | ||
|
||
<h4>π― μΉκ΅¬λ€κ³Ό μ±ν νκ³ κΈμ μ°λ©° μΌμμ 곡μ ν΄μ<h4> | ||
|
||
<h4>π₯ μΉκ΅¬λ€κ³Όμ μΉλ°λλ₯Ό νμΈν΄μ<h4> | ||
|
||
<h4>π₯ μ μλμ νμλ€μ μν΅ ν΅κ³λ₯Ό νμΈν΄μ<h4> | ||
</div> | ||
<br/> | ||
|
||
## κ°μ | ||
|
||
- **ν μ€ μμ½** : *μΈλ°* νλ‘μ νΈλ NFCμ BLE ν΅μ μ κΈ°λ°μΌλ‘ ν νκΈ μν΅ μ±μ λλ€. | ||
|
||
- **κΈ°νμλ** : μ½λ‘λ μ΄ν μ νλ κ΅μ°κ΄κ°λ₯Ό κ°μ μ μν΄ μ μλμμ΅λλ€. | ||
|
||
- **κ°λ° μΈμ λ° κΈ°κ°** | ||
|
||
- **κ°λ° μΈμ** : Android 3λͺ , BackEnd 3λͺ | ||
|
||
- **νλ‘μ νΈ κΈ°κ°** : 2024.04.08 ~ 2024.05.19 | ||
|
||
- **μ£Όμ κΈ°λ₯** | ||
|
||
- NFC κΈ°λ°μ νκΉ μΈμ¬, μ΄μ΄λ¬λ¦¬κΈ° | ||
|
||
- λΈλ£¨ν¬μ€ κΈ°λ°μ ν¨κ»λ¬λ¦¬κΈ° | ||
|
||
- νκΈλ³ μ±ν , κ²μν, μλ¦Όμ₯ | ||
|
||
- νκΈλ³ μν΅ ν΅κ³ | ||
|
||
<br/><br/><br/><br/> | ||
|
||
|
||
# μμ€ν μν€ν μ² | ||
![μμ¨μΈλ°](https://github.com/6QuizOnTheBlock/OurClass/assets/74866067/236444d6-b74f-4859-af46-993a3f4410ec) | ||
|
||
# ERD | ||
![μΈλ° ERD (1)](https://github.com/6QuizOnTheBlock/OurClass/assets/74866067/488849f1-1778-4472-a77b-8ea5cd4c70d8) | ||
|
||
|
||
### κΈ°μ | ||
|
||
- Java21, Spring Boot 3.2 | ||
- Spring Security + JWT + Oauth2 | ||
- Spring Data JPA, Query DSL | ||
- MySQL, Redis, MongoDB | ||
- AWS ec2 | ||
- Jenkins, Docker | ||
- kafka | ||
- Swagger, Rest api | ||
|
||
<br/><br/><br/><br/> | ||
|
||
|
||
# λμ νλ©΄ | ||
|
||
**μ£Όμ λμνλ©΄μ μΆν μΆκ° μμ μ λλ€.** | ||
|
||
### [νΌκ·Έλ§](https://www.figma.com/design/yfm5gTmRJED2uAdm7H70YC/6-kids-on-the-block?node-id=0%3A1&t=5blyLSniokJVPpQR-1) | ||
|
||
|
||
<br/><br/><br/> | ||
|
||
## μν |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 1 addition & 1 deletion
2
...om/quiz/ourClass/OurClassApplication.java β ...om/quiz/ourclass/OurClassApplication.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
52 changes: 52 additions & 0 deletions
52
backEnd/src/main/java/com/quiz/ourclass/domain/board/controller/CommentController.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
package com.quiz.ourclass.domain.board.controller; | ||
|
||
import com.quiz.ourclass.domain.board.dto.request.CommentRequest; | ||
import com.quiz.ourclass.domain.board.dto.request.UpdateCommentRequest; | ||
import com.quiz.ourclass.domain.board.sevice.CommentService; | ||
import com.quiz.ourclass.global.dto.ResultResponse; | ||
import lombok.RequiredArgsConstructor; | ||
import org.springframework.http.ResponseEntity; | ||
import org.springframework.web.bind.annotation.DeleteMapping; | ||
import org.springframework.web.bind.annotation.PatchMapping; | ||
import org.springframework.web.bind.annotation.PathVariable; | ||
import org.springframework.web.bind.annotation.PostMapping; | ||
import org.springframework.web.bind.annotation.RequestBody; | ||
import org.springframework.web.bind.annotation.RequestMapping; | ||
import org.springframework.web.bind.annotation.RestController; | ||
|
||
@RestController | ||
@RequiredArgsConstructor | ||
@RequestMapping("/comments") | ||
public class CommentController implements CommentControllerDocs { | ||
|
||
private final CommentService commentService; | ||
|
||
@PostMapping | ||
public ResponseEntity<ResultResponse<Long>> write( | ||
@RequestBody CommentRequest request) { | ||
Long commentId = commentService.write(request); | ||
return ResponseEntity.ok(ResultResponse.success(commentId)); | ||
} | ||
|
||
@PatchMapping("/{id}") | ||
public ResponseEntity<ResultResponse<Long>> modify( | ||
@PathVariable(value = "id") Long id, | ||
@RequestBody UpdateCommentRequest request) { | ||
Long commentId = commentService.modify(id, request); | ||
return ResponseEntity.ok(ResultResponse.success(commentId)); | ||
} | ||
|
||
@DeleteMapping("/{id}") | ||
public ResponseEntity<ResultResponse<Boolean>> delete( | ||
@PathVariable(value = "id") Long id) { | ||
Boolean isDelete = commentService.delete(id); | ||
return ResponseEntity.ok(ResultResponse.success(isDelete)); | ||
} | ||
|
||
@PostMapping("/{id}/report") | ||
public ResponseEntity<ResultResponse<Boolean>> report( | ||
@PathVariable(value = "id") Long id) { | ||
Boolean isReport = commentService.report(id); | ||
return ResponseEntity.ok(ResultResponse.success(isReport)); | ||
} | ||
} |
113 changes: 113 additions & 0 deletions
113
backEnd/src/main/java/com/quiz/ourclass/domain/board/controller/CommentControllerDocs.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
package com.quiz.ourclass.domain.board.controller; | ||
|
||
import com.quiz.ourclass.domain.board.dto.request.CommentRequest; | ||
import com.quiz.ourclass.domain.board.dto.request.UpdateCommentRequest; | ||
import com.quiz.ourclass.global.dto.ResultResponse; | ||
import io.swagger.v3.oas.annotations.Operation; | ||
import io.swagger.v3.oas.annotations.Parameter; | ||
import io.swagger.v3.oas.annotations.enums.ParameterIn; | ||
import io.swagger.v3.oas.annotations.media.Content; | ||
import io.swagger.v3.oas.annotations.media.Schema; | ||
import io.swagger.v3.oas.annotations.responses.ApiResponse; | ||
import io.swagger.v3.oas.annotations.tags.Tag; | ||
import org.springframework.http.ResponseEntity; | ||
import org.springframework.web.bind.annotation.DeleteMapping; | ||
import org.springframework.web.bind.annotation.PatchMapping; | ||
import org.springframework.web.bind.annotation.PathVariable; | ||
import org.springframework.web.bind.annotation.PostMapping; | ||
import org.springframework.web.bind.annotation.RequestBody; | ||
|
||
@Tag(name = "CommentController", description = "SNS λκΈ API") | ||
public interface CommentControllerDocs { | ||
|
||
@Operation(summary = "λκΈ μμ±", | ||
description = """ | ||
μ λ ₯μΌλ‘ λ€μ΄μ€λ DTO κΈ°μ€μΌλ‘ λκΈμ μμ±ν©λλ€. | ||
μ΄λ, λΆλͺ¨ λκΈμ parentId κ°μ 0Lμ 보λ΄μ£ΌμΈμ!""", | ||
responses = { | ||
@ApiResponse(responseCode = "200", description = "(message : \"Success\")", | ||
content = @Content(schema = @Schema(implementation = Long.class))), | ||
@ApiResponse(responseCode = "403", description = """ | ||
(message : "λ©€λ²κ° ν΄λΉ λ¨μ²΄ μμμ΄ μλλλ€.") | ||
(message : "κ²μκΈ μμ±μ λ¨μ²΄μ νμ¬ μ¬μ©μ λ¨μ²΄κ° λ€λ¦ λλ€.") | ||
""", content = @Content), | ||
@ApiResponse(responseCode = "404", description = """ | ||
(message : "λ©€λ²κ° μ‘΄μ¬νμ§ μμ΅λλ€.") | ||
(message : "κ²μκΈμ μ°Ύμ μ μμ΅λλ€.") | ||
(message : "λ λ©€λ²κ°μ κ΄κ³λ₯Ό μ°Ύμ μ μμ΅λλ€.") | ||
""", content = @Content), | ||
} | ||
) | ||
@PostMapping | ||
ResponseEntity<ResultResponse<Long>> write( | ||
@Parameter(name = "request", description = "λκΈ μμ± DTO", required = true, in = ParameterIn.DEFAULT) | ||
@RequestBody CommentRequest request | ||
); | ||
|
||
@Operation(summary = "λκΈ μμ ", | ||
description = "μ λ ₯μΌλ‘ λ€μ΄μ€λ DTO κΈ°μ€μΌλ‘ λκΈμ μμ ν©λλ€.", | ||
responses = { | ||
@ApiResponse(responseCode = "200", description = "(message : \"Success\")", | ||
content = @Content(schema = @Schema(implementation = Long.class))), | ||
@ApiResponse(responseCode = "403", description = "(message : \"λκΈ μμ±μ λ¨μ²΄μ νμ¬ μ¬μ©μ λ¨μ²΄κ° λ€λ¦ λλ€.\")", content = @Content), | ||
@ApiResponse(responseCode = "404", description = """ | ||
(message : "λ©€λ²κ° μ‘΄μ¬νμ§ μμ΅λλ€.") | ||
(message : "λκΈμ μ°Ύμ μ μμ΅λλ€.") | ||
""", content = @Content), | ||
} | ||
) | ||
@PatchMapping("/{id}") | ||
ResponseEntity<ResultResponse<Long>> modify( | ||
@Parameter(name = "id", description = "λκΈ PK κ°", required = true, in = ParameterIn.PATH) | ||
@PathVariable(value = "id") Long id, | ||
@Parameter(name = "request", description = "λκΈ μμ DTO", required = true, in = ParameterIn.DEFAULT) | ||
@RequestBody UpdateCommentRequest request | ||
); | ||
|
||
@Operation(summary = "λκΈ μμ ", | ||
description = "μ λ ₯μΌλ‘ λ€μ΄μ€λ λκΈ PK κΈ°μ€μΌλ‘ λκΈμ μμ ν©λλ€.", | ||
responses = { | ||
@ApiResponse(responseCode = "200", description = "(message : \"Success\")", | ||
content = @Content(schema = @Schema(implementation = Boolean.class))), | ||
@ApiResponse(responseCode = "403", description = """ | ||
(message : "λκΈ μμ±μμ μμ²μκ° λ€λ¦ λλ€.") | ||
(message : "λ©€λ²κ° ν΄λΉ λ¨μ²΄ μμμ΄ μλλλ€.") | ||
""", content = @Content), | ||
@ApiResponse(responseCode = "404", description = "(message : \"λκΈμ μ°Ύμ μ μμ΅λλ€.\")", content = @Content) | ||
} | ||
) | ||
@DeleteMapping("/{id}") | ||
ResponseEntity<ResultResponse<Boolean>> delete( | ||
@Parameter(name = "id", description = "λκΈ PK κ°", required = true, in = ParameterIn.PATH) | ||
@PathVariable(value = "id") Long id | ||
); | ||
|
||
@Operation( | ||
summary = "λκΈ μ κ³ ", | ||
description = "path μ λ ₯μΌλ‘ λ€μ΄μ¨ κ²μκΈ PK κ° κΈ°μ€μΌλ‘ λμ μ κ³ νμ¬ ν΄λΉ λ¨μ²΄ κ΄λ¦¬μμκ² FCM μλ¦Όμ μ μ‘ν©λλ€.", | ||
responses = { | ||
@ApiResponse(responseCode = "200", description = "(message : \"Success\")", | ||
content = @Content(schema = @Schema(implementation = Boolean.class))), | ||
@ApiResponse(responseCode = "403", description = """ | ||
(message : "λ©€λ²κ° ν΄λΉ λ¨μ²΄ μμμ΄ μλλλ€.") | ||
(message : "λ¨μ²΄ κ΄λ¦¬μλ μ κ³ ν μ μμ΅λλ€.") | ||
""", content = @Content), | ||
@ApiResponse(responseCode = "404", description = """ | ||
(message : "λ©€λ²κ° μ‘΄μ¬νμ§ μμ΅λλ€.") | ||
(message : "λκΈμ μ°Ύμ μ μμ΅λλ€.") | ||
""", content = @Content), | ||
} | ||
) | ||
@PostMapping("/{id}/report") | ||
ResponseEntity<ResultResponse<Boolean>> report( | ||
@Parameter(name = "id", description = "λκΈ PK κ°", required = true, in = ParameterIn.PATH) | ||
@PathVariable(value = "id") Long id | ||
); | ||
} |
Oops, something went wrong.