사용자는 Every-Cheap 서비스에 회원가입을 할 수 있다.
username
, phoneNumber
, password
를 입력 받는다.
username
은 영소문자 4 - 10 글자
형식이다.
username
은 중복
이 불가능
하다.phoneNumber
은 010 - 9999 - 9999
형식으로 이뤄져야 한다.password
는 영소문자
, 대문자
, 특수문자
, 숫자
를 포함한 8 - 15
자리 형식사용자
는 Naver
/Google
/kakao
/ 로컬 로그인
을 통해 서비스에 가입할 수 있다.
소셜 로그인
을 통해 가입한 사람은 구매
혹은 입찰
시도 시 본인 인증
절차를 한 번만 거친다.
인증된 사용자
라면 본인 인증
은 패스
한다.로컬 로그인
을 통해 가입한 사람은 구매
혹은 입찰
시도 시 본인 인증
절차를 한 번만 거친다.
로컬 로그인
시 username
, password
를 입력 받는다.
형식
의 검증
을 한다.사용자
는 프로필
을 수정
할 수 있다.
password
를 수정할 수 있다.본인 인증된 사용자
는 상품
을 구매
할 수 있다.
상품
은 관리자
만 등록할 수 있다. 관리자
는 서비스 개발자로 제한한다.상품 구매
시 쿠폰
을 적용할 수 있다.
쿠폰
은 퍼센트 할인
과 금액 할인
으로 나뉜다.쿠폰
은 발급 된다. → 선착순 이벤트와 같은 요소를 고려해서 대용량 트래픽 필요경매
에는 적용할 수 없다
.상품
에는 하나의 쿠폰
만 적용할 수 있다.상품
은 단일
로만 구매
할 수 있다. (대신, 같은 상품을 여러 개 구매할 수 있다.)상품
의 재고
보다 많은 수
는 구매 할 수 없다
.재고가 하나인
상품을 동시에 구매
할 경우, 결제를 먼저 완료한 사람
에게 구매 기회가 주어진다.관리자
는 경매
를 등록
하고, 오픈
할 수 있다.
경매
는 상품
의 이름
을 경매 이름
으로 표기한다.경매
는 경매 이름
몇분으로 설정
할지, 시작 가격
, 상품 이미지
, 경매 시작 시간
으로 등록
할 수 있다.
현재 가격
은 경매
가 등록
될 때 시작 가격
으로 정의
한다.시작 시간
+ 경매 시간
이 현재 시간 대비 지났으면 경매
는 종료
된다.
경매
가 종료되면 최고 입찰자
는 해당 상품
에 대해서 결제 여부
를 선택
할 수 있다.사용자
는 상품
을 입찰
할 수 있다.
입찰
받고 상품을 구매하지 않으면, black 횟수가 1회 누적
되며, 3회 누적될 경우 블랙 리스트에 등록
되고, 다시는 가입할 수 없다
. (전화번호로 확인)가장 높은 가격
으로 입찰 한 사람이 구매하지 않으면
, 그 다음으로 높은 가격
으로 입찰한 사람에게 구매 기회
가 주어지며, 이 과정은 세번째 입찰자
에게 까지만 넘어가고, 세번째 입찰자도 구매하지 않는다면 유찰
된다.결제 시스템은 구축 보류 중 (api 유료 이슈)
쿠폰 발급
음 일단 저희가 선착순으로 쿠폰 발급하는 로직을 생각하고 있었는데요,
만약에 만 장의 쿠폰을 발급한다고 생각했을 때, 이건 종류가 하나라서 괜찮지만
여러개의 종류의 쿠폰을 다량 생산해야 한다고 생각했을 때, db에 들어있는 값이 너무 커지지 않을까 하는 마음과
어떤 쿠폰이 써졌는지 확인하기 위해
db를 조회하는 측면에서 저렇게 데이터가 많아지면 어떡하지? 라는 걱정에서 db 부하를 걱정했던 것 같습니다.