회원가입과 로그인 절차 없이 누구나 간편하게 사용할 수 있는 웹 사이트
2022.06.01 ~ 2022.06.17
node.js
,mongodb
,EJS
- 판매 db에
sale
이라는 항목을 추가하여 판매중과/거래완료를 제어 - 구매를 누르면 판매자 연락처를 확인할 수 있고 에어컨 이름과 구매하였습니다 표출
- 그 후 돌아가기를 누르면 ejs에서 달라진 sale 값의 if문을 사용해 거래 완료라는 말이 뜨고 구매 및 수정이 불가능하게 처리
- 이미지는
multer
를 이용 - 이미지가 저장되는 이름은 중복을 피하기 위해 사용자가 요청한 시간의 타임스탬프이며, 한 장의 사진만 입력 가능
- 한 판매글마다 지정한 이미지의 경로를 db에 저장
- 판매 글을 작성할 때 지정한 비밀번호는 크립토를 이용해 암호화해 db에 보관
- 수정을 눌렀을 때 암호화된 패스워드와 현재 작성된 문자열을 다시 암호화해 비교
- db에서 암호화된 패스워드를 확인 가능
- 예약 시점인 6월 17일을 기준으로 다음 날부터 달력 버튼이 활성화
- 예약 시간은 영상에서 보셨듯이 오전 10시부터 오후 6시까지 가능
- 30분 단위로 가능하기 때문에 다른 값을 입력하면 근접한 유효값을 안내
- 같은 날짜, 시간, 수리기사 내역이 존재하면 예약이 불가
- 예약 시 입력한 전화번호를 입력해 DB 내역과 검증
- "기사별 예약내역 조회"는 수리기사를 선택하고 "수리 기사별 예약내역 확인" 버튼을 클릭하면 해당 기사의 예약내역 출력
- 콘솔 화면은 버튼을 클릭했을 때 vscode의 터미널에 찍힌 로그내역
socket.io
를 이용해 실시간 채팅을 구현하였습니다,
- 메세지를 보내는 사람의 이름은 직접 설정한 이름과 번호로 자동 등록
- 또 이름을 입력하는 칸에 “상담원” 이라는 문자열을 포함되어있다면 상담원이 연결되었다는 문구를 보여줌