Assignment - 간단한 수거 서비스

수거대장이 제공하는 수거 신청, 신청 내역 조회, 신청 취소 기능을 가볍게 구현하는 과제이다. 제공하는 템플릿은 별도로 없으며 자유롭게 세팅하고, 작업을 진행하면 된다.

이번 과제는 검색, 학습 능력 및 속도, 효율성, 협업 가능한 코드를 평가요소로 삼는다.

TO DO

  • 수거 신청

    • 사용자에게 이름, 주소, 전화번호, 요청사항 정보를 받을 수 있는 input이 있다.
    • 사용자가 정보를 입력한 뒤 submit 버튼을 클릭하면 데이터베이스에 저장된다.
  • 신청 내역 조회

    • 신청한 내역을 조회할 수 있다.
    • 필터링으로 기간을 설정할 수 있으며, 특정 기간 동안 신청한 날짜 기준으로 조회가 가능하다.
  • 신청 취소

    • 신청한 내역을 취소할 수 있다.
    • 1시간 이내의 신청 내역만 취소할 수 있다.

USE CASE

  1. 사용자가 이름, 주소, 전화번호, 요청사항 정보를 받고 수거 신청을 한다.
  2. 신청한 내역을 확인하니 잘못된 정보가 있어 취소한다.
  3. 다시 1번으로 돌아가 신청을 하고, 조회하는데 어제 날짜로 신청한 데이터를 확인하고 싶어 필터링으로 기간 조회를 한다.
  4. 처음 신청한 어제 날짜로 조회하니 데이터가 없는 것을 확인할 수 있다.
  5. 다시 오늘 날짜로 조회를 하고, 신청한 내역을 확인한다.
  6. 1시간 뒤 취소하려고 하나 취소 조건인 1시간 이내의 신청 명세가 아니라 취소가 불가능하다.

Requirements

  • 해당 저장소를 fork하고, 과제를 수행한 뒤 PR로 제출한다.
  • 반복된 PR은 상관 없으나, 공지된 시간 기준으로 평가한다.
  • 해당 프로젝트는 Node.js의 프레임워크인 Express를 사용해서 구현한다.
  • Database는 MongoDB를 사용한다.
  • REST 스타일로 API를 정의한다.
  • 별도의 주석은 필요 없다.
  • 프론트에서 사용자 친화적인 UI/UX는 필요 없으며, 기능만 정상적으로 구현하면 된다.

References