프로젝트 준비 과정
Closed this issue · 4 comments
cjs1301 commented
진행 작업
- 로그인 검증 기능 구현
- 상품 도메인 설계 및 상품 리스트 및 상세설명 API 구현
예정 작업
- 테스트코드 작성(
JUnit
) - 데이터베이스 연결(
JDBC
) - Github Action 설정
프로젝트 진행 과정 예상안
- 기획
- 요구사항을 정의
- 이행할 방법?
- 정책 수립한다 => (어떻게 뭘 할지를 정한다)
- 스토리보드 제작 (요구사항 명세)
- api 명세서
- 로그인
- 회원가입
- 상품리스트 표시
kimcno3 commented
📌 프로젝트 요구사항
-
사용자는
회원가입 및 로그인
을 해야 해당 서비스를 이용할 수 있다.(또는 상품 리스트 접근까지는 가능) -
사용자는 등록된
상품 리스트
를 확인할 수 있다. -
사용자가 하나의 상품을 선택하면 해당 상품의
상세 설명 및 거래 페이지
로 이동한다. -
상세 설명 및 거래 페이지
에는 특정 상품의최근 거래내역
과입찰현황
,상세설명
을 확인할 수 있다. -
거래 가격
은사이즈
를 기준으로 분류하고, 사이즈 선택 전엔모든 사이즈
의최근 거래내역
과입찰현황
을 볼 수 있다. -
거래의사가 있는 사용자는
희망 사이즈 선택
후, 해당 상품의구매
또는판매
의사를 선택할 수 있다. -
구매
나판매
의사를 결정한 이후,즉시거래
또는입찰
을 선택할 수 있다.-
구매
즉시 구매
의 경우,배송지
와결제수단
을 등록해야 한다.구매 입찰
의 경우,배송지
와결제수단
과 함께구매희망가
,입찰 종료일
을 추가로 입력해야 한다.
-
판매
즉시 판매
의 경우,배송지
와정산계좌
,페널티 결제 수단
을 등록해야 한다.판매 입찰
의 경우,배송지
와정산계좌
,페널티 결제 수단
과 함께판매희망가
과입찰 종료일
을 추가로 입력해야 한다.
-
-
즉시 구매
즉시 구매
를 결정하면 바로결제
가 진행된다.
-
즉시 판매
즉시 판매
를 결정하면 해당 제품을 판매자가 배송한다.(일반 택배, 편의점 택배 선택)- 그 다음,
검수 센터
에서검수 과정
을 거치고,검수 통과
가 되면구매자
에게 상품을 배송한다. 구매자
에게 상품 배송이 완료되면정산
을 진행한다.
-
구매 입찰
과판매 입찰
- 같은 사이즈의 제품이
구매 희망가
와판매 희망가
가동일
한 경우, 거래가 성사된다.판매자
는 해당 제품을검수 센터
에 배송한 이후,검수과정
을 거친다.- 검수가 통과되면
검수 센터
에서 해당 제품을구매자의 배송지
로 배송한다. - 구매자는 배송이 시작되면(또는 도착하면) 해당 가격으로
결제
를 진행한다. 판매자
는 구매자에게 상품 배송이 시작되면정산
을 진행한다.
- 같은 사이즈의 제품이
cjs1301 commented
- 카카오 로그인
url('/oauth/kakao') method GET
req 없음 res(or URL params) ex) /oauth/kakao/callback/${REDIRECT_URI}?code=${AUTHORIZE_CODE}
기능 : 카카로 로그인 페이지로 보내주기 - 카카오 로그인 정보 저장 후 토큰발급(로그인처리)
url('/oauth/kakao/callback') method GET
req 없음
res
200
{
success: true,
data: accessToken,
message:"ok"
}
500 // 서버 에러가 아닌이상 카카오 요청에서는 에러가 없다는것으로 가정
{
success: false,
data: null ,
error:{
code:"error code"
message:"error message"
}
}
cookie
token:refreshToken
tokenData
{
id: 1,
nickName:"",
email:"",
name:"",
}
기능: 카카오로 부터 기본 유저정보 저장 후 토큰 발급
- 유저 추가 기본 정보 받기
url('/user') method PUT
req
{
phone:"",
password:"",
}
res
200
{
success: true,
data: accessToken,
message:"ok"
}
cjs1301 commented
- 로그인
url('/user/signin') method POST
req
body{
email:"",
password:""
}
res
200
{
success: true,
data: accessToken,
message:"ok"
}
401 // 비밀번호 오류, 아이디 없음, req값없음, email 양식 오류
{
success: false,
data: null ,
error:{
code:"error code"
message:"error message"
}
}
cookie
token:refreshToken
- 회원가입
url('/user/signup') method POST
req
body{
name:"",
email:"",
password:"",//hash값만 저장
phone:""//옵션
address:""//옵션
}
res
{
success: true,
data: userData,
message:"ok"
}
400 // 필수값 없음, 중복 아이디
{
success: false,
data: null ,
error:{
code:"error code"
message:"error message"
}
}
cjs1301 commented
- user 는 어떤 값을 저장 할 것인가
{
name:"",
email:"",
password:"",//hash값만 저장
phone:""//옵션 => 문자 인증 api 옵션
address:""//옵션
}