기능명세서

회원가입 API POST /api/auth/register입력: 이메일, 비밀번호, 닉네임동작: 비밀번호 해시화, 중복 체크 후 DB 저장
로그인 API POST /api/auth/login입력: 이메일, 비밀번호동작: 비밀번호 검증 후 JWT 발급
JWT 토큰 미들웨어 모든 보호된 API 요청에 대해 JWT 유효성 검사 수행
사용자 정보 조회 API GET /api/users/me동작: JWT 기반으로 현재 사용자 정보 반환

1순위

설문 데이터 모델 문항, 선택지, 점수 맵핑 정보 포함ex: “지난 2주간 우울함을 느낀 적이 있나요?” → 0~3점
설문 결과 저장 API POST /api/diagnosis/submit입력: 문항별 응답출력: 진단 ID 반환
진단 점수 계산 로직 응답 점수 총합 기반으로 AI 모델 또는 rule-based 로 진단 점수 계산
진단 결과 조회 API GET /api/diagnosis/:id출력: 총점, 위험도 분류, 권장 행동
위험도 분류 알고리즘 점수에 따라 경증/중등도/고위험군으로 자동 분류
치료 옵션 DB 모델 치료 유형(약물, 상담, 운동 등), 설명, 효과 등 메타데이터 포함
추천 로직 진단 점수, 응답 패턴, 위험도 기반 적절한 치료 조합 선택
추천 API GET /api/treatment/recommend/:diagnosisId출력: 추천 치료방안 리스트
우선순위 알고리즘 심각도 + 개인 선호도 기반으로 추천 순위 정렬

구현하기 힘듦

병원 DB 모델 병원명, 주소, 진료과목, 운영시간 등
위치 기반 검색 API GET /api/hospitals?lat=...&lng=...입력 좌표 기반 병원 리스트 반환
외부 지도 API 연동 카카오맵 또는 Google Places API에서 병원 정보 불러와 DB 갱신
거리 계산 로직 Haversine 또는 좌표 기반 거리 계산을 통한 정렬
치료 콘텐츠 모델 콘텐츠 유형(명상, CBT, 영상 등), 설명, 시간 등
개인화 로직 진단 결과 + 이전 기록 기반 치료 콘텐츠 구성
치료 프로그램 API GET /api/programs/personal출력: 단계별 콘텐츠 목록
진행률 추적 시스템 유저가 완료한 콘텐츠, 현재 위치, 점수 변화 추적 및 저장
챗봇 메시지 모델 사용자 발화, 응답 이력, 타임스탬프 등 저장
키워드 매칭 로직 특정 키워드 (예: 불안, 죽고싶다 등)에 대한 정해진 응답 제공
챗봇 응답 API POST /api/chatbot/message입력: 사용자 메시지출력: 응답 메시지
위기상황 감지 로직 위기 키워드 탐지 시 관리자 알림 또는 24시간 상담 연계 자동 발생