🌟 wanted_pre_onboarding 선발과제

🌟 What is wanted_pre_onboarding Project

wanted 웹 사이트처럼 채용공고를 열람할 수 있는 미니 프로젝트이다.
로그인한 사용자가 기업계정인 경우 채용공고를 업로드할 수 있고, 일반계정 사용자는 채용공고를 지원 할 수있다.

🌟개발 인원 및 기간

개발기간 2022/08/15 ~ 2022/08/21 (총 7일간)

🌟 적용 기술 및 구현 기능

적용 기술

Node.js
express
Mysql
Sequelize
passport
jest

구현 기능

How To Use

1. 채용공고 등록

- POST  /post

- postJobPosting

image

  • 권한이 있는 유저만 등록가능 : Invalid Permission

image

  • 필수 입력 항목이 비어있을 경우 : key error

image

  1. 채용공고 수정

    • Patch /edit/:jobPostingId

    • patchJobPosting

image

  • 필수 입력 항목이 비어있을 경우 : key error

image

  1. 채용공고 삭제

    • DELETE /delete/:jobPostingId

    • deleteJobPosting

스크린샷 2022-08-22 오전 12 42 06

  1. 채용공고 검색 기능

    • GET /list?search=코리아

    • getJobPostingList

  • 회사명으로 검색 가능

image

  1. 채용공고 상제 정보

    • GET /detail/:jobPostingId

    • getJobPostingDetail

image

  1. 채용공고 지원

    • POST /apply/:jobPostingId

    • postJobPostingApply

image

  1. 로그인

    • POST /auth/login

    • passport

image

  • 아이디 및 비밀번호 오류 Invalid User

image

  1. 로그아웃

    • POST /auth/logout

    • passport

image

  • 로그인 되어있지 않은 user일 경우 로그인 필요하다는 메세지 response

image

jest을 이용한 유닛 테스트

로그인,로그아웃에 대한 테스트 결과(middlewares.test.js)

image

기능 구현

🌱modeling

db.diagram image

🌟Contributing

Thanks to Wanted

🌟Reference

wanted
dbdiagram.io

🌟Links

API Documentation