Skip to content
/ idk Public
forked from ormi5-1poom/idk

지식 공유 커뮤니티 서비스 입니다.

Notifications You must be signed in to change notification settings

hyezuu/idk

 
 

Repository files navigation

QnA 질문 답변 사이트 I DON'T KNOW

Group 174

📚 목차

프로젝트 소개 프로젝트 개요 기대효과 팀 소개 화면 구성 기술 스택 요구사항 정의서 ERD API 명세서 아키텍처

📌 프로젝트 소개

이 프로젝트는 사용자 간의 지식 공유와 문제 해결을 촉진하는 QnA 커뮤니티 게시판 웹 애플리케이션입니다.
사용자들이 질문을 게시하고, 답변을 제공하며, 유용한 정보를 공유할 수 있는 플랫폼을 제공합니다.
관리자 기능과 신고 시스템을 통해 건전한 커뮤니티 문화를 유지하고자 합니다.

🚩 프로젝트 개요

  • 프로젝트 이름 : I DON'T KNOW
  • 프로젝트 기간 : 2024.07.22~ 2024.08.06

🎯 기대효과

  1. 지식 공유 활성화: 다양한 분야의 전문가와 일반 사용자들이 지식을 공유하여 집단 지성을 형성합니다.
  2. 효율적인 문제 해결: 사용자들이 겪는 문제에 대해 신속하고 정확한 해답을 얻을 수 있습니다.
  3. 커뮤니티 형성: 비슷한 관심사를 가진 사용자들 간의 네트워크 형성을 촉진합니다.
  4. 사용자 참여 증진: 답변 채택 기능을 통해 양질의 답변 작성을 장려합니다.
  5. 건전한 온라인 문화 조성: 신고 시스템과 관리자 기능을 통해 부적절한 콘텐츠를 관리합니다.

👀 팀 소개

강혜주
@hyezuu
김래현
@raehyeonn
박정균
@junggyun
#Frontend
- 질문 글 상세 페이지
- 공지사항 목록 페이지
- 관리자 페이지
- 신고 모달

#Backend
- 인증/인가
- 답변 등록/조회/수정/삭제/채택
- 회원 탈퇴/권한 변경/정보 수정
- 답변 신고 처리
- 질문 신고
#Frontend
- 메인 페이지
- 마이 페이지

#Backend
- 공지사항 등록/조회/수정/삭제
- 신고 사유 등록/조회/삭제
- 답변 신고

#기타
- 결과 보고서
- 발표
#Frontend
- Vue.js 환경 구성 및 설계
- API 연동 및 데이터 바인딩
- 로그인/회원가입 페이지
- 질문 작성/수정 페이지
- 공지사항 작성/수정/상세 페이지

#Backend
- 인증/인가
- 질문 글 등록/수정/삭제/조회
- 질문 신고 처리

#기타
- ci/cd

🪄 화면 구성

회원가입 회원탈퇴
로그인 : 회원 로그인 : 관리자
메인 : 검색 메인 : 페이지네이션
질문 작성 질문 수정
질문 삭제 질문 신고
답변 작성 답변 수정
답변 삭제 답변 신고
답변 채택 신고 처리
공지사항 등록 공지사항 수정
공지사항 삭제 신고사유 등록
신고사유 삭제 신고 삭제
신고 처리된 질문 신고 처리된 답변

🛠 기술 스택

Backend

Gradle
SpringSecurity

Frontend

Deployment

📋 요구사항 정의서

Mind Map

🔗 ERD

스크린샷 2024-08-07 오후 4 01 33

📜 API 명세서

Question

메서드명 HTTP 메서드 엔드포인트 역할
createQuestion POST /api/questions 질문 생성
modify PUT /api/questions/{id} 질문 수정
delete DELETE /api/questions/{id} 질문 삭제
getQuestion GET /api/questions/{id} 단일 질문 조회
findQuestions GET /api/questions 전체 질문 목록 조회
findMyQuestions GET /api/questions/me 나의 질문 목록 조회

Answer

메서드명 HTTP 메서드 엔드포인트 역할
create POST /api/answers 답변 생성
modify PUT /api/answers/{id} 답변 수정
delete DELETE /api/answers/{id} 답변 삭제
select POST /api/answers/{id}/selections 답변 채택
getMyAnswers GET /api/answers/me 나의 답변 목록 조회

Notice

메서드명 HTTP 메서드 엔드포인트 역할
createNotice POST /api/notices 공지사항 생성
updateNotice PUT /api/notices/{id} 공지사항 수정
deleteNotice DELETE /api/notices/{id} 공지사항 삭제
detailNotice GET /api/notices/{id} 단일 공지사항 조회
allNotice GET /api/notices 전체 공지사항 목록 조회
fiveNotice GET /api/notices/five 공지사항 5개 목록 조회

User

메서드명 HTTP 메서드 엔드포인트 역할
join POST /api/users/join 회원 가입
resign DELETE /api/users/me 회원 탈퇴
suspend POST /api/users/{id}/roles 회원 정지
unsuspend DELETE /api/users/{id}/roles 회원 정지 취소
login POST /api/users/login 회원 로그인

QuestionReport

메서드명 HTTP 메서드 엔드포인트 역할
reportQuestion POST /api/questions/reports 질문 신고 생성
deleteQusetionReport DELETE /api/questions/reports/{id} 질문 신고 삭제
getAllQuestionReports GET /api/questions/reports 전체 질문 신고 목록 조회
handleQuestionReport POST /api/questions/reports/handle/{id} 질문 신고 처리 - 회원 정지

AnswerReport

메서드명 HTTP 메서드 엔드포인트 역할
createAnswerReport POST /api/reports/answers 답변 신고 생성
deleteAnswerReport DELETE /api/reports/answers/{id} 답변 신고 삭제
getAllAnswerReports GET /api/reports/answers 전체 답변 신고 목록 조회
suspensionReportUser POST /api/reports/answers/{id} 답변 신고 처리 - 회원 정지

ReportReason

메서드명 HTTP 메서드 엔드포인트 역할
createReportReason POST /api/report-reasons 신고 사유 생성
deleteReportReason DELETE /api/report-reasons/{id} 신고 사유 삭제
allReportReason GET /api/report-reasons 전체 신고 사유 목록 조회

🌐 아키텍쳐

2024-08-06_2 54 37

About

지식 공유 커뮤니티 서비스 입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 53.9%
  • Vue 41.7%
  • JavaScript 3.8%
  • Other 0.6%