Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Team-03][BE][루이&쿠킴] - 로그인 제외한 모든 API 기능 구현, 배포 #135

Merged
merged 33 commits into from Apr 28, 2022

Conversation

ku-kim
Copy link
Member

@ku-kim ku-kim commented Apr 27, 2022

안녕하세요 ! 루이쿠킴입니다
이번 PR은 기능과 배포에 집중하여 구현하였습니다.
리뷰 감사합니다.! 😁

📝Description

  • GET /api/products/{id} : 특정 음식 디테일 정보 조회
  • GET /api/products/best?category={value} : 베스트 음식 조회
  • GET/api/products/recommandation : 추천 음식 조회 (현재 10개 랜덤 전송)
  • POST /api/products/{id}/order : 특정 음식 주문
  • AWS에 FE, BE 배포
    • 배포/개발 환경 분리 : 시스템 환경변수에 따라 application 선택 사용
    • CORS 설정

결과

웹 애플리케이션
배포 아키텍처

아키텍처

테스트

테스트결과

ku-kim and others added 28 commits April 25, 2022 12:12
- 현재 10개의 Product 랜덤하게 전달
- 추후 로그인, 유저별 추천 가능성이 있다.
…mmendation

[BE] 추천 음식 조회 기능
- API : GET /api/products/best?category={value}
- 컨트롤러 테스트 구현
- 서비스 계층은 Mock 처리
특정 베스트 카테고리 음식 조회 기능 인수테스트 작성
특정 베스트 카테고리 음식 조회 기능 리파지토리 테스트 작성
@repository 어노테이션 제거
discountRate 자료형 float에서 long으로 변경
validProducts 메서드 이름 validateProducts로 이름 변경
…egory

[BE] 특정 카테고리의 베스트 음식 조회 기능 구현
- Product 테이블과 객체에 stock_quantity 필드 추가
- stock_quantity 샘플 데이터 추가
- 컨트롤러 테스트 구현
…mmendation

[BE] 배포/개발 환경 application 분리
- totalPrice를 계산하는 calculateTotalPrice() 구현
- deliveryPrice를 계산하는 calculateDeliveryPrice() 구현
- 만약 주문 개수보다 재고 수량이 부족하다면 NotEnoughStockQuantityException이 발생한다.
- ProductsDtoMapper 클래스의 이름을 DomainDtoMapper로 변경
- DomainDtoMapper에서 두개의 도메인 객체를 참조하기 때문에 메서드명에 사용되었던 Domain이라는 단어를 실제 도메인 객체 이름으로 변경했습니다.
- 특정 상품 주문 시 엔티티를 도메인 객체로 변경하는 과정에서 id가 사라지는 문제가 발생했습니다.
- 해당 문제를 해결하기 위해 도메인 객체에 id 필드를 추가했습니다.
- 서비스, 리파지토리 계층에 특정 상품 주문하기와 관련된 로직 구현
- Response 전용 객체인 OrderSaveResponse 구현
- 만약 count가 음수라면 400(Bad Request) 상태코드를 반환한다.
[BE] CORS 기능 추가 (시스템 환경변수 활용)
…입력되는 오류 수정

update 쿼리를 직접 작성해서 사용하는 방식으로 해당 문제를 해결했습니다.
[BE] 도메인 설정으로 CORS 문제 해결
@ku-kim ku-kim added the review-BE Improvements or additions to documentation label Apr 27, 2022
@ku-kim ku-kim requested a review from guswns1659 April 27, 2022 07:32
Copy link

@guswns1659 guswns1659 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

모든 레이어 테스트와 함께 기능 구현하시느라 수고하셨습니다 👍
몇가지 코멘트와 질문만 남겼고 바로 머지하겠습니다 : )

@ku-kim ku-kim merged commit e00348e into codesquad-members-2022:team-03 Apr 28, 2022
eeeesong pushed a commit that referenced this pull request Apr 28, 2022
feat - 이미지 화면에 보여주기 기능 구현 - #135
eeeesong pushed a commit that referenced this pull request Apr 28, 2022
eeeesong pushed a commit that referenced this pull request Apr 28, 2022
refactor - 옵셔널바인딩 처리. #135
eeeesong pushed a commit that referenced this pull request Apr 28, 2022
eeeesong pushed a commit that referenced this pull request Apr 28, 2022
refactor - protocol 함수 인자값 변경 #135
jwu-ice added a commit to Louie-03/sidedish that referenced this pull request Apr 29, 2022
commit 274e734
Merge: 43ee842 3bc6667
Author: sju02048 <sju02048@naver.com>
Date:   Fri Apr 29 12:10:31 2022 +0900

    Merge branch 'team-03' of https://github.com/Louie-03/sidedish into team-03

commit 3bc6667
Author: Jwu <sju02048@naver.com>
Date:   Fri Apr 29 11:40:04 2022 +0900

    Revert "[FE] Deatil 페이지 및 OAuth 테스트용 뷰 추가 (#61)" (#62)

    This reverts commit 2baf578.

commit 2baf578
Author: Jwu <sju02048@naver.com>
Date:   Fri Apr 29 11:38:13 2022 +0900

    [FE] Deatil 페이지 및 OAuth 테스트용 뷰 추가 (#61)

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: Jwu <sju02048@naver.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] MealContainer 레이아웃 작성 (#16)

    * Chore: vscode debugger .gitingore에추가

    * Chore: axios 라이브러리 추가

    * Feat: MealContainer

    - MealHeader
    - Carousel -> MealCard여러개

    * Refactor: useMemo 삭제

    * Chore: TODO 주석 작성

    - 컴포넌트 분리
    - stlye 코드 분리
    - status 코드

    * [FE] BestMealContainer 레이아웃 작성 (#18)

    * Chore: Prettier useTabs true로 수정

    * Chore: axios 라이브러리 추가

    * Feat: BestMealContainer 기본 레이아웃

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] components단위로 파일 분리 (#20)

    * Refactor: App.jsx에서 BestMealContainer import수정

    * Refactor: MealContainer에서 Loader와 MealCard 분리

    * Chore: components 폴더 관리

    * [FE] 페어 리팩토링 (#21)

    * Refactor: mockServerURL .env파일에서 관리

    - constant폴더에서 관리

    * Feat: setDefaultImage()함수 추가

    - 인자로 image url을 받아서 false면 default이미지로 반환

    * Chore: 폴더경로 상대경로에서 절대경로로 변경

    - jsconfig.json파일 설정

    * [FE] team-03브랜치에서 dev-FE로 최신화

    commit a773a14
    Merge: 2bc424b 1276077
    Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Date:   Sun Apr 24 22:54:48 2022 +0900

        Merge pull request #59 from Louie-03/dev-BE

        [Team-03][BE][루이&쿠킴] - 특정 음식 타입 조회 기능

    commit 2bc424b
    Author: Jwu <sju02048@naver.com>
    Date:   Sun Apr 24 17:06:36 2022 +0900

        [team-03][FE][쥬&도리] 1주차 두 번째 PR: 컴포넌트 단위 설계 (codesquad-members-2022#66)

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

        * Feat: 프로젝트 초기 세팅

        ref: #8

        * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

        * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

        * Docs: 프로젝트 및 팀원 소개(readme.md)

        * Chore: Issues, PR templates 추가

        ref: #1

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        * Docs: 팀원 수정

        - 팀원 한 마디 추가

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        Co-authored-by: Louie <dhdustnr0134@naver.com>
        Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
        Co-authored-by: Jwu <sju02048@naver.com>
        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

        * [FE] MealContainer 레이아웃 작성 (#16)

        * Chore: vscode debugger .gitingore에추가

        * Chore: axios 라이브러리 추가

        * Feat: MealContainer

        - MealHeader
        - Carousel -> MealCard여러개

        * Refactor: useMemo 삭제

        * Chore: TODO 주석 작성

        - 컴포넌트 분리
        - stlye 코드 분리
        - status 코드

        * [FE] BestMealContainer 레이아웃 작성 (#18)

        * Chore: Prettier useTabs true로 수정

        * Chore: axios 라이브러리 추가

        * Feat: BestMealContainer 기본 레이아웃

        Co-authored-by: YUNHO <kimyouknow@naver.com>

        * [FE] components단위로 파일 분리 (#20)

        * Refactor: App.jsx에서 BestMealContainer import수정

        * Refactor: MealContainer에서 Loader와 MealCard 분리

        * Chore: components 폴더 관리

        * [FE] 페어 리팩토링 (#21)

        * Refactor: mockServerURL .env파일에서 관리

        - constant폴더에서 관리

        * Feat: setDefaultImage()함수 추가

        - 인자로 image url을 받아서 false면 default이미지로 반환

        * Chore: 폴더경로 상대경로에서 절대경로로 변경

        - jsconfig.json파일 설정

        Co-authored-by: YUNHO <kimyouknow@naver.com>
        Co-authored-by: Louie <dhdustnr0134@naver.com>
        Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    commit 1276077
    Merge: e8eca13 68b6e96
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 11:03:53 2022 +0900

        Merge pull request #22 from Louie-03/BE-feature-GET_api_products_meal_type

        [BE] 특정 음식 타입 조회 기능

    commit 68b6e96
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 10:39:03 2022 +0900

        Fix: DiscountPolicy NPE 문제 해결

        - DiscountPolicy가 존재하지 않는 상품의 인수 테스트 추가

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit 5335f2e
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 10:37:09 2022 +0900

        Refactor: 계산 로직의 책임을 Product에서 DiscountPolicy로 위임

        - 기존 Product의 계산 로직을 DiscountPolicy의 calculateFixedPrice 메서드로 옮겼다.

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit 1e27697
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 17:47:25 2022 +0900

        Feat: meal type으로 음식 조회가 되지 않는 경우 조회 실패 구현(404 NOT FOUND)

    commit db93682
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 17:27:13 2022 +0900

        Fix: Product 객체 fixedPrice 계산 로직 수정

        - 기존 연산 괄호 실수 -> 올바르게 변경
        - 테스트 코드 추가

    commit 3b74382
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Thu Apr 21 16:53:35 2022 +0900

        Refactor: Entity와 Domain 객체 분리

        - Entity를 Domain 객체로 변경해주는 DomainEntityMapper 구현
        - 변경된 코드에 따른 테스트 코드 수정

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit ca34b5a
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 15:17:09 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 리포지토리 구현

        - 테스트 작성

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit 06cebb6
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 15:15:29 2022 +0900

        Feat: product, product_image, discount_policy 테이블 DDL과 더미데이터 생성, 테스트 환경 구분

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit feb2909
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 09:32:59 2022 +0900

        Refactor: Product <-> Response Dto 변환 위치를 컨트롤러에서 서비스로 변경

    commit fc57090
    Author: Jwu <sju02048@naver.com>
    Date:   Wed Apr 20 21:07:11 2022 +0900

        [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

        * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

        * Docs: 프로젝트 및 팀원 소개(readme.md)

        * Chore: Issues, PR templates 추가

        ref: #1

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        * Docs: 팀원 수정

        - 팀원 한 마디 추가

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit 4f385a1
    Merge: a002511 e8eca13
    Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Date:   Wed Apr 20 18:29:42 2022 +0900

        Merge pull request #20 from Louie-03/dev-BE

        [Team-03][BE] 쿠킴 & 루이 - 데이터베이스 설계, Mock API Server, 배포 아키텍처, 프로젝트 세팅

    commit f4c13a4
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 17:32:01 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 서비스 구현

        - 테스트 작성

    commit 8e691b4
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 17:03:56 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 컨트롤러 구현

        - API : GET /api/products?meal={value}
        - 컨트롤러 테스트 구현
        - 서비스 계층은 Mock 처리
        - Product 도메인 객체 생성
        - ProductsDtoMapper 객체 생성 : Product 도메인 <-> ProductsMealTypeResponse 변환

    commit b9873d0
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 15:57:24 2022 +0900

        Test: 특정 Products의 meal type 조회 기능 테스트코드만 작성

        - 인수 테스트 작성

    commit e8eca13
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Wed Apr 20 14:24:31 2022 +0900

        Feat: 프로젝트 초기 세팅

        ref: #8

    Co-Authored-By: YUNHO <kimyouknow@naver.com>
    Co-Authored-By: Louie <dhdustnr0134@naver.com>
    Co-Authored-By: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] Styled Component Best Header 부분 (#25)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Chore: env 추가

    * Style: SVG 아이콘 추가

    * Feat: theme 추가

    * Style: 폰트 추가

    * Style: 파일 이름 변경

    * Design: BestMeal 헤더&네비게이션

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] PR 반영 및 styledCSS 수정 (#28)

    - 두 번째 PR 반영
    - 코드 스타일 리팩토링
    ref: #26

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] 일반 Meal 컴포넌트 UI 구현 (#39)

    * Design: Meal Card

    styles.js 분리

    * Design: 카드에 hover시 택배서비스 표시

    * Design: MealConatiner  헤더 및 레이아웃

    * Design: 캐러셀 컨테이너

    - svg추가

    * Chore: Card컨테이너에서 hover할 때 보여지는 배송정보 코드 상 위치 변경

    - 컴포넌트 하단으로 빼기

    * Build: mock servser url 환경변수로 관리

    .env파일에서 관리하던 url을 각 로컬에서 관리하기

    * Refactor: mock sever 403에러 일때 constant에 있는 mock데이터 사용

    * Design: theme 세부속성 분해할당해서 접근

    이전: theme -> theme.color
    이후: theme: {color} -> color

    * Refactor: mealCard hover 속성 js변수에서 css로 제어

    * Chore: 주석 정리

    * [FE] Best 컴포넌트 구현 (#40)

    * Feat: 금액 toLocalString로 구분

    * Feat: mock api -> mock data로 수정

    - postman api 호출횟수 초과해서 로컬로 값 보내는 걸로 수정

    * Design: Best 컴포넌트 추가

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE]  캐러셀 디자인, getCarouselDesign() (#48)

    * Design: App에서 Main 컴포넌트 분리

    * Desgin: 캐러셀 디자인, getCarouselDesign()

    - getCarouselDesign: 이미지 사이즈, 이미지 개수에 따라 동적으로 UI 결정

    * [FE] GNB Design 구현 (#49)

    * Style: 오타 수정

    * Design: 글로벌스타일 button poiner 추가

    * Design: Header Component 추가

    - 헤더에 hover 시 레이아웃 나타나는 디자인
    - 글씨, 아이콘 hover 디자인
    - 전체적인 헤더 UI 디자인

    * [FE] BestMealCard 컴포넌트와 MealCard 컴포넌트 통합 (#50)

    * Refactor: BestMeal Container mock데이터 분리 및 탭 변수 수정

        - MOCK_DATA_JS -> MOCK_BEST_MEAT: 변수명 변경 및 contant로 이동
        - BEST_SUBTITLE -> BEST_TAB_TYPE: 변수명 변경 및 api
        Params추가
        - Tabs컴포넌트 BestMeals컴포넌트처럼 양식 통일

    * Refactor: BestMealCard를 MealCard컴포넌트와 통일

    - MealCard를 받을 때 이미지 사이즈 넘겨받기

    * Feat: BestMeal에서 findTargetTab()함수

    선택한 탭의 id를 인자로 받고 apiParams를 반환함.

    * Chore: Main위치 src/components -> src/pages

    * Chore: 메인 레이아웃

    헤더 mainWidth설정

    * Chore: 함수 선언식 -> arrow function

    * Design 캐러셀 양 옆 svg 스타일 수정

    - border 없애기
    - 크기 키움

    * Fix: Main 경로 오타 수정

    * Refactor: 호버창 컴포넌트 단위로 분리

    * Refactor: state값 이용하지 않고 hover로 수정

    * Design: 컴포넌트 간 간격 수정

    * [FE] 컴포넌트 리팩토링 (#51)

    Refactor: 호버창 컴포넌트 단위로 분리

    Refactor: state값 이용하지 않고 hover로 수정

    Design: 컴포넌트 간 간격 수정

    * Chore: 오타수정

    * Chore: 충돌해결하면서 지우지 못한 폴더 삭제

    - constant
    - util

    * Chore: reset.css 삭제

    * [FE} 캐러셀 컴포넌트 구현 (#58)

    * Chore: mock server에서 실제서버url로 변경

    * Feat: Carousel  구현

    * Feat: Carousel 재사용성 고려해서 children을 밖에서 선언

    * [FE] Custom Axios 작성 및 데이터 fetch 기능 (#59)

    * Style: API 변수이름 수정

    * Fix: price 오타 수정

    * Delete: PR 충돌 오류로 삭제

    * Style: 여백 오타 수정

    * Feat: useAxios 추가

    * Design: 더보기 버튼

    * Feat: 카테고리 더보기

    * Design: 버튼 가운데 정렬

    * Feat: 카테고리 추가 렌더링

    버그 고쳐야함

    * Feat: 추가 데이터 버튼 감추기

    Co-authored-by: yunho <kimyouknow@naver.com>
    Co-authored-by: Jwu <sju02048@naver.com>

    * Design: CSS 스타일 변경

    * Refactor: 유틸함수 따로 관리

    * Feat: 세부정보(detail) 페이지

    * Refactor: useAxios response state 수정

    * Design: OAuth 테스트용 추가

    Co-authored-by: YUNHO <kimyouknow@naver.com>
    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

commit 43ee842
Author: Jwu <sju02048@naver.com>
Date:   Fri Apr 29 01:12:56 2022 +0900

    [team-03][FE][쥬&도리] 2주차 첫 번째: 컴포넌트 구현 (codesquad-members-2022#143)

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: Jwu <sju02048@naver.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] MealContainer 레이아웃 작성 (#16)

    * Chore: vscode debugger .gitingore에추가

    * Chore: axios 라이브러리 추가

    * Feat: MealContainer

    - MealHeader
    - Carousel -> MealCard여러개

    * Refactor: useMemo 삭제

    * Chore: TODO 주석 작성

    - 컴포넌트 분리
    - stlye 코드 분리
    - status 코드

    * [FE] BestMealContainer 레이아웃 작성 (#18)

    * Chore: Prettier useTabs true로 수정

    * Chore: axios 라이브러리 추가

    * Feat: BestMealContainer 기본 레이아웃

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] components단위로 파일 분리 (#20)

    * Refactor: App.jsx에서 BestMealContainer import수정

    * Refactor: MealContainer에서 Loader와 MealCard 분리

    * Chore: components 폴더 관리

    * [FE] 페어 리팩토링 (#21)

    * Refactor: mockServerURL .env파일에서 관리

    - constant폴더에서 관리

    * Feat: setDefaultImage()함수 추가

    - 인자로 image url을 받아서 false면 default이미지로 반환

    * Chore: 폴더경로 상대경로에서 절대경로로 변경

    - jsconfig.json파일 설정

    * [FE] team-03브랜치에서 dev-FE로 최신화

    commit a773a14
    Merge: 2bc424b 1276077
    Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Date:   Sun Apr 24 22:54:48 2022 +0900

        Merge pull request #59 from Louie-03/dev-BE

        [Team-03][BE][루이&쿠킴] - 특정 음식 타입 조회 기능

    commit 2bc424b
    Author: Jwu <sju02048@naver.com>
    Date:   Sun Apr 24 17:06:36 2022 +0900

        [team-03][FE][쥬&도리] 1주차 두 번째 PR: 컴포넌트 단위 설계 (codesquad-members-2022#66)

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

        * Feat: 프로젝트 초기 세팅

        ref: #8

        * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

        * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

        * Docs: 프로젝트 및 팀원 소개(readme.md)

        * Chore: Issues, PR templates 추가

        ref: #1

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        * Docs: 팀원 수정

        - 팀원 한 마디 추가

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        Co-authored-by: Louie <dhdustnr0134@naver.com>
        Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
        Co-authored-by: Jwu <sju02048@naver.com>
        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

        * [FE] MealContainer 레이아웃 작성 (#16)

        * Chore: vscode debugger .gitingore에추가

        * Chore: axios 라이브러리 추가

        * Feat: MealContainer

        - MealHeader
        - Carousel -> MealCard여러개

        * Refactor: useMemo 삭제

        * Chore: TODO 주석 작성

        - 컴포넌트 분리
        - stlye 코드 분리
        - status 코드

        * [FE] BestMealContainer 레이아웃 작성 (#18)

        * Chore: Prettier useTabs true로 수정

        * Chore: axios 라이브러리 추가

        * Feat: BestMealContainer 기본 레이아웃

        Co-authored-by: YUNHO <kimyouknow@naver.com>

        * [FE] components단위로 파일 분리 (#20)

        * Refactor: App.jsx에서 BestMealContainer import수정

        * Refactor: MealContainer에서 Loader와 MealCard 분리

        * Chore: components 폴더 관리

        * [FE] 페어 리팩토링 (#21)

        * Refactor: mockServerURL .env파일에서 관리

        - constant폴더에서 관리

        * Feat: setDefaultImage()함수 추가

        - 인자로 image url을 받아서 false면 default이미지로 반환

        * Chore: 폴더경로 상대경로에서 절대경로로 변경

        - jsconfig.json파일 설정

        Co-authored-by: YUNHO <kimyouknow@naver.com>
        Co-authored-by: Louie <dhdustnr0134@naver.com>
        Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    commit 1276077
    Merge: e8eca13 68b6e96
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 11:03:53 2022 +0900

        Merge pull request #22 from Louie-03/BE-feature-GET_api_products_meal_type

        [BE] 특정 음식 타입 조회 기능

    commit 68b6e96
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 10:39:03 2022 +0900

        Fix: DiscountPolicy NPE 문제 해결

        - DiscountPolicy가 존재하지 않는 상품의 인수 테스트 추가

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit 5335f2e
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 10:37:09 2022 +0900

        Refactor: 계산 로직의 책임을 Product에서 DiscountPolicy로 위임

        - 기존 Product의 계산 로직을 DiscountPolicy의 calculateFixedPrice 메서드로 옮겼다.

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit 1e27697
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 17:47:25 2022 +0900

        Feat: meal type으로 음식 조회가 되지 않는 경우 조회 실패 구현(404 NOT FOUND)

    commit db93682
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 17:27:13 2022 +0900

        Fix: Product 객체 fixedPrice 계산 로직 수정

        - 기존 연산 괄호 실수 -> 올바르게 변경
        - 테스트 코드 추가

    commit 3b74382
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Thu Apr 21 16:53:35 2022 +0900

        Refactor: Entity와 Domain 객체 분리

        - Entity를 Domain 객체로 변경해주는 DomainEntityMapper 구현
        - 변경된 코드에 따른 테스트 코드 수정

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit ca34b5a
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 15:17:09 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 리포지토리 구현

        - 테스트 작성

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit 06cebb6
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 15:15:29 2022 +0900

        Feat: product, product_image, discount_policy 테이블 DDL과 더미데이터 생성, 테스트 환경 구분

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit feb2909
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 09:32:59 2022 +0900

        Refactor: Product <-> Response Dto 변환 위치를 컨트롤러에서 서비스로 변경

    commit fc57090
    Author: Jwu <sju02048@naver.com>
    Date:   Wed Apr 20 21:07:11 2022 +0900

        [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

        * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

        * Docs: 프로젝트 및 팀원 소개(readme.md)

        * Chore: Issues, PR templates 추가

        ref: #1

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        * Docs: 팀원 수정

        - 팀원 한 마디 추가

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit 4f385a1
    Merge: a002511 e8eca13
    Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Date:   Wed Apr 20 18:29:42 2022 +0900

        Merge pull request #20 from Louie-03/dev-BE

        [Team-03][BE] 쿠킴 & 루이 - 데이터베이스 설계, Mock API Server, 배포 아키텍처, 프로젝트 세팅

    commit f4c13a4
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 17:32:01 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 서비스 구현

        - 테스트 작성

    commit 8e691b4
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 17:03:56 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 컨트롤러 구현

        - API : GET /api/products?meal={value}
        - 컨트롤러 테스트 구현
        - 서비스 계층은 Mock 처리
        - Product 도메인 객체 생성
        - ProductsDtoMapper 객체 생성 : Product 도메인 <-> ProductsMealTypeResponse 변환

    commit b9873d0
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 15:57:24 2022 +0900

        Test: 특정 Products의 meal type 조회 기능 테스트코드만 작성

        - 인수 테스트 작성

    commit e8eca13
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Wed Apr 20 14:24:31 2022 +0900

        Feat: 프로젝트 초기 세팅

        ref: #8

    Co-Authored-By: YUNHO <kimyouknow@naver.com>
    Co-Authored-By: Louie <dhdustnr0134@naver.com>
    Co-Authored-By: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] Styled Component Best Header 부분 (#25)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Chore: env 추가

    * Style: SVG 아이콘 추가

    * Feat: theme 추가

    * Style: 폰트 추가

    * Style: 파일 이름 변경

    * Design: BestMeal 헤더&네비게이션

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] PR 반영 및 styledCSS 수정 (#28)

    - 두 번째 PR 반영
    - 코드 스타일 리팩토링
    ref: #26

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] 일반 Meal 컴포넌트 UI 구현 (#39)

    * Design: Meal Card

    styles.js 분리

    * Design: 카드에 hover시 택배서비스 표시

    * Design: MealConatiner  헤더 및 레이아웃

    * Design: 캐러셀 컨테이너

    - svg추가

    * Chore: Card컨테이너에서 hover할 때 보여지는 배송정보 코드 상 위치 변경

    - 컴포넌트 하단으로 빼기

    * Build: mock servser url 환경변수로 관리

    .env파일에서 관리하던 url을 각 로컬에서 관리하기

    * Refactor: mock sever 403에러 일때 constant에 있는 mock데이터 사용

    * Design: theme 세부속성 분해할당해서 접근

    이전: theme -> theme.color
    이후: theme: {color} -> color

    * Refactor: mealCard hover 속성 js변수에서 css로 제어

    * Chore: 주석 정리

    * [FE] Best 컴포넌트 구현 (#40)

    * Feat: 금액 toLocalString로 구분

    * Feat: mock api -> mock data로 수정

    - postman api 호출횟수 초과해서 로컬로 값 보내는 걸로 수정

    * Design: Best 컴포넌트 추가

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE]  캐러셀 디자인, getCarouselDesign() (#48)

    * Design: App에서 Main 컴포넌트 분리

    * Desgin: 캐러셀 디자인, getCarouselDesign()

    - getCarouselDesign: 이미지 사이즈, 이미지 개수에 따라 동적으로 UI 결정

    * [FE] GNB Design 구현 (#49)

    * Style: 오타 수정

    * Design: 글로벌스타일 button poiner 추가

    * Design: Header Component 추가

    - 헤더에 hover 시 레이아웃 나타나는 디자인
    - 글씨, 아이콘 hover 디자인
    - 전체적인 헤더 UI 디자인

    * [FE] BestMealCard 컴포넌트와 MealCard 컴포넌트 통합 (#50)

    * Refactor: BestMeal Container mock데이터 분리 및 탭 변수 수정

        - MOCK_DATA_JS -> MOCK_BEST_MEAT: 변수명 변경 및 contant로 이동
        - BEST_SUBTITLE -> BEST_TAB_TYPE: 변수명 변경 및 api
        Params추가
        - Tabs컴포넌트 BestMeals컴포넌트처럼 양식 통일

    * Refactor: BestMealCard를 MealCard컴포넌트와 통일

    - MealCard를 받을 때 이미지 사이즈 넘겨받기

    * Feat: BestMeal에서 findTargetTab()함수

    선택한 탭의 id를 인자로 받고 apiParams를 반환함.

    * Chore: Main위치 src/components -> src/pages

    * Chore: 메인 레이아웃

    헤더 mainWidth설정

    * Chore: 함수 선언식 -> arrow function

    * Design 캐러셀 양 옆 svg 스타일 수정

    - border 없애기
    - 크기 키움

    * Fix: Main 경로 오타 수정

    * Refactor: 호버창 컴포넌트 단위로 분리

    * Refactor: state값 이용하지 않고 hover로 수정

    * Design: 컴포넌트 간 간격 수정

    * [FE] 컴포넌트 리팩토링 (#51)

    Refactor: 호버창 컴포넌트 단위로 분리

    Refactor: state값 이용하지 않고 hover로 수정

    Design: 컴포넌트 간 간격 수정

    * Chore: 오타수정

    * Chore: 충돌해결하면서 지우지 못한 폴더 삭제

    - constant
    - util

    * Chore: reset.css 삭제

    * [FE} 캐러셀 컴포넌트 구현 (#58)

    * Chore: mock server에서 실제서버url로 변경

    * Feat: Carousel  구현

    * Feat: Carousel 재사용성 고려해서 children을 밖에서 선언

    * [FE] Custom Axios 작성 및 데이터 fetch 기능 (#59)

    * Style: API 변수이름 수정

    * Fix: price 오타 수정

    * Delete: PR 충돌 오류로 삭제

    * Style: 여백 오타 수정

    * Feat: useAxios 추가

    * Design: 더보기 버튼

    * Feat: 카테고리 더보기

    * Design: 버튼 가운데 정렬

    * Feat: 카테고리 추가 렌더링

    버그 고쳐야함

    * Feat: 추가 데이터 버튼 감추기

    Co-authored-by: yunho <kimyouknow@naver.com>
    Co-authored-by: Jwu <sju02048@naver.com>

    Co-authored-by: YUNHO <kimyouknow@naver.com>
    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

commit e00348e
Merge: a773a14 97dd386
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Thu Apr 28 14:20:36 2022 +0900

    Merge pull request codesquad-members-2022#135 from Louie-03/dev-BE

    [Team-03][BE][루이&쿠킴] - 로그인 제외한 모든 API 기능 구현, 배포

commit 97dd386
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 28 11:54:59 2022 +0900

    Chore: 운영 DB 더미데이터 추가

commit d84f4a6
Author: Louie <dhdustnr0134@naver.com>
Date:   Thu Apr 28 11:45:23 2022 +0900

    Feat: 주문 실패 시 현재 재고 수량을 반환해주도록 GlobalExceptionHandler 구현

    - 인수 테스트 작성

commit ecac1da
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 28 10:43:13 2022 +0900

    Refactor: PR 리뷰 피드백 적용(오타, 사용하지 않는 코드제거(Valid), Long -> long 타입 변환)

commit b3cb1eb
Merge: 05b9d52 dc7383d
Author: Louie <dhdustnr0134@naver.com>
Date:   Wed Apr 27 16:58:07 2022 +0900

    Merge pull request #55 from Louie-03/BE-feature-remove_id_field

    [BE] 도메인 객체의 불필요한 id 필드 제거

commit dc7383d
Author: seok <dhdustnr0134@naver.com>
Date:   Wed Apr 27 16:45:42 2022 +0900

    Refactor: 도메인 객체의 불필요한 id 필드 제거

commit 05b9d52
Merge: 947bdca c8826e0
Author: Louie <dhdustnr0134@naver.com>
Date:   Wed Apr 27 16:20:40 2022 +0900

    Merge pull request #53 from Louie-03/BE-feature-cors_bug_fix

    [BE] 도메인 설정으로 CORS 문제 해결

commit c8826e0
Author: seok <dhdustnr0134@naver.com>
Date:   Wed Apr 27 16:17:00 2022 +0900

    Fix: 도메인 설정으로 인한 CORS 문제 해결

commit 947bdca
Merge: 3375244 921e065
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Tue Apr 26 16:20:37 2022 +0900

    Merge pull request #43 from Louie-03/BE-feature-POST_products_order

    [BE] 특정 상품 주문 기능 구현

commit 921e065
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 16:13:35 2022 +0900

    Fix: Spring Data Jdbc에서 save 메서드를 통해서 update 할 때 PK를 List의 index 값으로 입력되는 오류 수정

    update 쿼리를 직접 작성해서 사용하는 방식으로 해당 문제를 해결했습니다.

commit 3375244
Merge: b8753ad b67ecc9
Author: Louie <dhdustnr0134@naver.com>
Date:   Tue Apr 26 15:54:25 2022 +0900

    Merge pull request #41 from Louie-03/BE-feature-CORS

    [BE] CORS 기능 추가 (시스템 환경변수 활용)

commit b67ecc9
Author: “kukim” <kukim.dev@gmail.com>
Date:   Tue Apr 26 15:34:49 2022 +0900

    Feat: CORS 기능 추가 (시스템 환경변수 활용하여 LOCAL_IP, AWS_IP 추가)

    - 환경변수로 LOCAl_IP, AWS_IP 추가해야함

commit d5c67f6
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 15:03:27 2022 +0900

    Feat: 특정 상품 주문하기의 RequestBody 검증 구현

    - 만약 count가 음수라면 400(Bad Request) 상태코드를 반환한다.

commit b7fcfef
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 14:41:26 2022 +0900

    Feat: 특정 상품 주문하기 기능 구현

    - 서비스, 리파지토리 계층에 특정 상품 주문하기와 관련된 로직 구현
    - Response 전용 객체인 OrderSaveResponse 구현

commit 825fb39
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 14:32:37 2022 +0900

    Feat: 도메인 객체에 id 필드 추가

    - 특정 상품 주문 시 엔티티를 도메인 객체로 변경하는 과정에서 id가 사라지는 문제가 발생했습니다.
    - 해당 문제를 해결하기 위해 도메인 객체에 id 필드를 추가했습니다.

commit 95511a7
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:20:36 2022 +0900

    Style: ProductsDtoMapper의 클래스명, 메서드명 변경

    - ProductsDtoMapper 클래스의 이름을 DomainDtoMapper로 변경
    - DomainDtoMapper에서 두개의 도메인 객체를 참조하기 때문에 메서드명에 사용되었던 Domain이라는 단어를 실제 도메인 객체 이름으로 변경했습니다.

commit 5ff762d
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:15:43 2022 +0900

    Feat: OrderEntity 구현

commit 6543cb6
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:14:09 2022 +0900

    Feat: Product 클래스에 재고 수량 차감 로직 구현

    - 만약 주문 개수보다 재고 수량이 부족하다면 NotEnoughStockQuantityException이 발생한다.

commit 0fdbb79
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:11:18 2022 +0900

    Feat: Order 도메인 객체 구현

    - totalPrice를 계산하는 calculateTotalPrice() 구현
    - deliveryPrice를 계산하는 calculateDeliveryPrice() 구현

commit c20b925
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:06:34 2022 +0900

    Feat: orders 테이블 스키마 작성

commit b8753ad
Merge: a763171 9f62389
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Tue Apr 26 12:52:20 2022 +0900

    Merge pull request #38 from Louie-03/BE-feature-GET_api_products_recommendation

    [BE] 배포/개발 환경 application 분리

commit 9f62389
Author: “kukim” <kukim.dev@gmail.com>
Date:   Tue Apr 26 12:47:29 2022 +0900

    Build: 배포/개발 환경 분리 application 프로파일 설정

    - 환경변수 설정

commit 401b9ad
Author: Louie <dhdustnr0134@naver.com>
Date:   Tue Apr 26 00:38:58 2022 +0900

    Feat: 특정 음식 주문하기 기능의 컨트롤러 구현

    - Product 테이블과 객체에 stock_quantity 필드 추가
    - stock_quantity 샘플 데이터 추가
    - 컨트롤러 테스트 구현

commit a763171
Merge: 52dd9da 1541eb2
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Mon Apr 25 21:02:47 2022 +0900

    Merge pull request #36 from Louie-03/BE-feature-GET_products_best_category

    [BE] 특정 카테고리의 베스트 음식 조회 기능 구현

commit 1541eb2
Author: Louie <dhdustnr0134@naver.com>
Date:   Mon Apr 25 19:20:06 2022 +0900

    Feat: 특정 베스트 카테고리 음식 조회 기능 구현

    특정 베스트 카테고리 음식 조회 기능 인수테스트 작성
    특정 베스트 카테고리 음식 조회 기능 리파지토리 테스트 작성
    @repository 어노테이션 제거
    discountRate 자료형 float에서 long으로 변경
    validProducts 메서드 이름 validateProducts로 이름 변경

commit 9882c4a
Author: Louie <dhdustnr0134@naver.com>
Date:   Mon Apr 25 15:34:35 2022 +0900

    Feat: 특정 베스트 음식 카테고리 조회 기능의 컨트롤러 구현

    - API : GET /api/products/best?category={value}
    - 컨트롤러 테스트 구현
    - 서비스 계층은 Mock 처리

commit 52dd9da
Merge: 5810e2e fbb5a66
Author: Louie <dhdustnr0134@naver.com>
Date:   Mon Apr 25 15:19:24 2022 +0900

    Merge pull request #31 from Louie-03/BE-feature-GET_api_products_recommendation

    [BE] 추천 음식 조회 기능

commit fbb5a66
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 14:57:30 2022 +0900

    feat: 추천 음식 조회 기능

    - 현재 10개의 Product 랜덤하게 전달
    - 추후 로그인, 유저별 추천 가능성이 있다.

commit 5810e2e
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 13:06:37 2022 +0900

    Refactor: ProductMealTypeResponse -> ProductBasicTypeResponse 이름 변경

commit b11552c
Merge: a773a14 e750413
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Mon Apr 25 12:30:56 2022 +0900

    Merge pull request #27 from Louie-03/BE-feature-GET_api_products_id

    [BE] 특정 id의 음식 조회 기능

commit e750413
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 12:22:32 2022 +0900

    feat: 특정 id의 음식 조회 기능 구현 (Controller, Service 계층)

    - 테스트 코드 작성

commit 5bda672
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 12:21:14 2022 +0900

    feat: Product 도메인 객체에 Delivery 객체 연결

commit d63a0f6
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 12:17:54 2022 +0900

    feat: DeliveryPolicy Repository 구현과 테스트

commit 1157fca
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 12:12:32 2022 +0900

    feat: DeliveryPolicy 테이블 설계와 Dummy 데이터 추가
eve712 pushed a commit that referenced this pull request May 2, 2022
* Chore: 초기개발환경

Chore: CRA 초기구성

Chore: eslint 구성

Chore: prettier 구성

* Style: App.js -> jsx 수정

* [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

* Feat: 프로젝트 초기 세팅

ref: #8

* [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

* [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

* Docs: 프로젝트 및 팀원 소개(readme.md)

* Chore: Issues, PR templates 추가

ref: #1

Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

* Docs: 팀원 수정

- 팀원 한 마디 추가

* Chore: 초기개발환경

Chore: CRA 초기구성

Chore: eslint 구성

Chore: prettier 구성

* Style: App.js -> jsx 수정

Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

Co-authored-by: Louie <dhdustnr0134@naver.com>
Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
Co-authored-by: Jwu <sju02048@naver.com>
Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

* [FE] MealContainer 레이아웃 작성 (#16)

* Chore: vscode debugger .gitingore에추가

* Chore: axios 라이브러리 추가

* Feat: MealContainer

- MealHeader
- Carousel -> MealCard여러개

* Refactor: useMemo 삭제

* Chore: TODO 주석 작성

- 컴포넌트 분리
- stlye 코드 분리
- status 코드

* [FE] BestMealContainer 레이아웃 작성 (#18)

* Chore: Prettier useTabs true로 수정

* Chore: axios 라이브러리 추가

* Feat: BestMealContainer 기본 레이아웃

Co-authored-by: YUNHO <kimyouknow@naver.com>

* [FE] components단위로 파일 분리 (#20)

* Refactor: App.jsx에서 BestMealContainer import수정

* Refactor: MealContainer에서 Loader와 MealCard 분리

* Chore: components 폴더 관리

* [FE] 페어 리팩토링 (#21)

* Refactor: mockServerURL .env파일에서 관리

- constant폴더에서 관리

* Feat: setDefaultImage()함수 추가

- 인자로 image url을 받아서 false면 default이미지로 반환

* Chore: 폴더경로 상대경로에서 절대경로로 변경

- jsconfig.json파일 설정

* [FE] team-03브랜치에서 dev-FE로 최신화

commit a773a14
Merge: 2bc424b 1276077
Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
Date:   Sun Apr 24 22:54:48 2022 +0900

    Merge pull request #59 from Louie-03/dev-BE

    [Team-03][BE][루이&쿠킴] - 특정 음식 타입 조회 기능

commit 2bc424b
Author: Jwu <sju02048@naver.com>
Date:   Sun Apr 24 17:06:36 2022 +0900

    [team-03][FE][쥬&도리] 1주차 두 번째 PR: 컴포넌트 단위 설계 (#66)

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: Jwu <sju02048@naver.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] MealContainer 레이아웃 작성 (#16)

    * Chore: vscode debugger .gitingore에추가

    * Chore: axios 라이브러리 추가

    * Feat: MealContainer

    - MealHeader
    - Carousel -> MealCard여러개

    * Refactor: useMemo 삭제

    * Chore: TODO 주석 작성

    - 컴포넌트 분리
    - stlye 코드 분리
    - status 코드

    * [FE] BestMealContainer 레이아웃 작성 (#18)

    * Chore: Prettier useTabs true로 수정

    * Chore: axios 라이브러리 추가

    * Feat: BestMealContainer 기본 레이아웃

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] components단위로 파일 분리 (#20)

    * Refactor: App.jsx에서 BestMealContainer import수정

    * Refactor: MealContainer에서 Loader와 MealCard 분리

    * Chore: components 폴더 관리

    * [FE] 페어 리팩토링 (#21)

    * Refactor: mockServerURL .env파일에서 관리

    - constant폴더에서 관리

    * Feat: setDefaultImage()함수 추가

    - 인자로 image url을 받아서 false면 default이미지로 반환

    * Chore: 폴더경로 상대경로에서 절대경로로 변경

    - jsconfig.json파일 설정

    Co-authored-by: YUNHO <kimyouknow@naver.com>
    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

commit 1276077
Merge: e8eca13 68b6e96
Author: Louie <dhdustnr0134@naver.com>
Date:   Fri Apr 22 11:03:53 2022 +0900

    Merge pull request #22 from Louie-03/BE-feature-GET_api_products_meal_type

    [BE] 특정 음식 타입 조회 기능

commit 68b6e96
Author: Louie <dhdustnr0134@naver.com>
Date:   Fri Apr 22 10:39:03 2022 +0900

    Fix: DiscountPolicy NPE 문제 해결

    - DiscountPolicy가 존재하지 않는 상품의 인수 테스트 추가

    Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

commit 5335f2e
Author: Louie <dhdustnr0134@naver.com>
Date:   Fri Apr 22 10:37:09 2022 +0900

    Refactor: 계산 로직의 책임을 Product에서 DiscountPolicy로 위임

    - 기존 Product의 계산 로직을 DiscountPolicy의 calculateFixedPrice 메서드로 옮겼다.

    Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

commit 1e27697
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 21 17:47:25 2022 +0900

    Feat: meal type으로 음식 조회가 되지 않는 경우 조회 실패 구현(404 NOT FOUND)

commit db93682
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 21 17:27:13 2022 +0900

    Fix: Product 객체 fixedPrice 계산 로직 수정

    - 기존 연산 괄호 실수 -> 올바르게 변경
    - 테스트 코드 추가

commit 3b74382
Author: Louie <dhdustnr0134@naver.com>
Date:   Thu Apr 21 16:53:35 2022 +0900

    Refactor: Entity와 Domain 객체 분리

    - Entity를 Domain 객체로 변경해주는 DomainEntityMapper 구현
    - 변경된 코드에 따른 테스트 코드 수정

    Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

commit ca34b5a
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 21 15:17:09 2022 +0900

    Feat: 특정 Products의 meal type 조회 기능의 리포지토리 구현

    - 테스트 작성

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

commit 06cebb6
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 21 15:15:29 2022 +0900

    Feat: product, product_image, discount_policy 테이블 DDL과 더미데이터 생성, 테스트 환경 구분

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

commit feb2909
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 21 09:32:59 2022 +0900

    Refactor: Product <-> Response Dto 변환 위치를 컨트롤러에서 서비스로 변경

commit fc57090
Author: Jwu <sju02048@naver.com>
Date:   Wed Apr 20 21:07:11 2022 +0900

    [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

commit 4f385a1
Merge: a002511 e8eca13
Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
Date:   Wed Apr 20 18:29:42 2022 +0900

    Merge pull request #20 from Louie-03/dev-BE

    [Team-03][BE] 쿠킴 & 루이 - 데이터베이스 설계, Mock API Server, 배포 아키텍처, 프로젝트 세팅

commit f4c13a4
Author: “kukim” <kukim.dev@gmail.com>
Date:   Wed Apr 20 17:32:01 2022 +0900

    Feat: 특정 Products의 meal type 조회 기능의 서비스 구현

    - 테스트 작성

commit 8e691b4
Author: “kukim” <kukim.dev@gmail.com>
Date:   Wed Apr 20 17:03:56 2022 +0900

    Feat: 특정 Products의 meal type 조회 기능의 컨트롤러 구현

    - API : GET /api/products?meal={value}
    - 컨트롤러 테스트 구현
    - 서비스 계층은 Mock 처리
    - Product 도메인 객체 생성
    - ProductsDtoMapper 객체 생성 : Product 도메인 <-> ProductsMealTypeResponse 변환

commit b9873d0
Author: “kukim” <kukim.dev@gmail.com>
Date:   Wed Apr 20 15:57:24 2022 +0900

    Test: 특정 Products의 meal type 조회 기능 테스트코드만 작성

    - 인수 테스트 작성

commit e8eca13
Author: Louie <dhdustnr0134@naver.com>
Date:   Wed Apr 20 14:24:31 2022 +0900

    Feat: 프로젝트 초기 세팅

    ref: #8

Co-Authored-By: YUNHO <kimyouknow@naver.com>
Co-Authored-By: Louie <dhdustnr0134@naver.com>
Co-Authored-By: kukim <57086195+ku-kim@users.noreply.github.com>

* [FE] Styled Component Best Header 부분 (#25)

* Feat: 프로젝트 초기 세팅

ref: #8

* [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

* [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

* Docs: 프로젝트 및 팀원 소개(readme.md)

* Chore: Issues, PR templates 추가

ref: #1

Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

* Docs: 팀원 수정

- 팀원 한 마디 추가

* Chore: 초기개발환경

Chore: CRA 초기구성

Chore: eslint 구성

Chore: prettier 구성

* Style: App.js -> jsx 수정

Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

* Chore: env 추가

* Style: SVG 아이콘 추가

* Feat: theme 추가

* Style: 폰트 추가

* Style: 파일 이름 변경

* Design: BestMeal 헤더&네비게이션

Co-authored-by: Louie <dhdustnr0134@naver.com>
Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

* [FE] PR 반영 및 styledCSS 수정 (#28)

- 두 번째 PR 반영
- 코드 스타일 리팩토링
ref: #26

Co-authored-by: YUNHO <kimyouknow@naver.com>

* [FE] 일반 Meal 컴포넌트 UI 구현 (#39)

* Design: Meal Card

styles.js 분리

* Design: 카드에 hover시 택배서비스 표시

* Design: MealConatiner  헤더 및 레이아웃

* Design: 캐러셀 컨테이너

- svg추가

* Chore: Card컨테이너에서 hover할 때 보여지는 배송정보 코드 상 위치 변경

- 컴포넌트 하단으로 빼기

* Build: mock servser url 환경변수로 관리

.env파일에서 관리하던 url을 각 로컬에서 관리하기

* Refactor: mock sever 403에러 일때 constant에 있는 mock데이터 사용

* Design: theme 세부속성 분해할당해서 접근

이전: theme -> theme.color
이후: theme: {color} -> color

* Refactor: mealCard hover 속성 js변수에서 css로 제어

* Chore: 주석 정리

* [FE] Best 컴포넌트 구현 (#40)

* Feat: 금액 toLocalString로 구분

* Feat: mock api -> mock data로 수정

- postman api 호출횟수 초과해서 로컬로 값 보내는 걸로 수정

* Design: Best 컴포넌트 추가

Co-authored-by: YUNHO <kimyouknow@naver.com>

* [FE]  캐러셀 디자인, getCarouselDesign() (#48)

* Design: App에서 Main 컴포넌트 분리

* Desgin: 캐러셀 디자인, getCarouselDesign()

- getCarouselDesign: 이미지 사이즈, 이미지 개수에 따라 동적으로 UI 결정

* [FE] GNB Design 구현 (#49)

* Style: 오타 수정

* Design: 글로벌스타일 button poiner 추가

* Design: Header Component 추가

- 헤더에 hover 시 레이아웃 나타나는 디자인
- 글씨, 아이콘 hover 디자인
- 전체적인 헤더 UI 디자인

* [FE] BestMealCard 컴포넌트와 MealCard 컴포넌트 통합 (#50)

* Refactor: BestMeal Container mock데이터 분리 및 탭 변수 수정

    - MOCK_DATA_JS -> MOCK_BEST_MEAT: 변수명 변경 및 contant로 이동
    - BEST_SUBTITLE -> BEST_TAB_TYPE: 변수명 변경 및 api
    Params추가
    - Tabs컴포넌트 BestMeals컴포넌트처럼 양식 통일

* Refactor: BestMealCard를 MealCard컴포넌트와 통일

- MealCard를 받을 때 이미지 사이즈 넘겨받기

* Feat: BestMeal에서 findTargetTab()함수

선택한 탭의 id를 인자로 받고 apiParams를 반환함.

* Chore: Main위치 src/components -> src/pages

* Chore: 메인 레이아웃

헤더 mainWidth설정

* Chore: 함수 선언식 -> arrow function

* Design 캐러셀 양 옆 svg 스타일 수정

- border 없애기
- 크기 키움

* Fix: Main 경로 오타 수정

* Refactor: 호버창 컴포넌트 단위로 분리

* Refactor: state값 이용하지 않고 hover로 수정

* Design: 컴포넌트 간 간격 수정

* [FE] 컴포넌트 리팩토링 (#51)

Refactor: 호버창 컴포넌트 단위로 분리

Refactor: state값 이용하지 않고 hover로 수정

Design: 컴포넌트 간 간격 수정

* Chore: 오타수정

* Chore: 충돌해결하면서 지우지 못한 폴더 삭제

- constant
- util

* Chore: reset.css 삭제

* [FE} 캐러셀 컴포넌트 구현 (#58)

* Chore: mock server에서 실제서버url로 변경

* Feat: Carousel  구현

* Feat: Carousel 재사용성 고려해서 children을 밖에서 선언

* [FE] Custom Axios 작성 및 데이터 fetch 기능 (#59)

* Style: API 변수이름 수정

* Fix: price 오타 수정

* Delete: PR 충돌 오류로 삭제

* Style: 여백 오타 수정

* Feat: useAxios 추가

* Design: 더보기 버튼

* Feat: 카테고리 더보기

* Design: 버튼 가운데 정렬

* Feat: 카테고리 추가 렌더링

버그 고쳐야함

* Feat: 추가 데이터 버튼 감추기

Co-authored-by: yunho <kimyouknow@naver.com>
Co-authored-by: Jwu <sju02048@naver.com>

* [FE] team-03브랜치에서 dev-FE로 최신화

* [FE] Deatil 페이지 및 OAuth 테스트용 뷰 추가 (#63)

* Design: CSS 스타일 변경

* Refactor: 유틸함수 따로 관리

* Feat: 세부정보(detail) 페이지

* Refactor: useAxios response state 수정

* Design: OAuth 테스트용 추가

* Squashed commit of the following:

commit 274e734
Merge: 43ee842 3bc6667
Author: sju02048 <sju02048@naver.com>
Date:   Fri Apr 29 12:10:31 2022 +0900

    Merge branch 'team-03' of https://github.com/Louie-03/sidedish into team-03

commit 3bc6667
Author: Jwu <sju02048@naver.com>
Date:   Fri Apr 29 11:40:04 2022 +0900

    Revert "[FE] Deatil 페이지 및 OAuth 테스트용 뷰 추가 (#61)" (#62)

    This reverts commit 2baf578.

commit 2baf578
Author: Jwu <sju02048@naver.com>
Date:   Fri Apr 29 11:38:13 2022 +0900

    [FE] Deatil 페이지 및 OAuth 테스트용 뷰 추가 (#61)

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: Jwu <sju02048@naver.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] MealContainer 레이아웃 작성 (#16)

    * Chore: vscode debugger .gitingore에추가

    * Chore: axios 라이브러리 추가

    * Feat: MealContainer

    - MealHeader
    - Carousel -> MealCard여러개

    * Refactor: useMemo 삭제

    * Chore: TODO 주석 작성

    - 컴포넌트 분리
    - stlye 코드 분리
    - status 코드

    * [FE] BestMealContainer 레이아웃 작성 (#18)

    * Chore: Prettier useTabs true로 수정

    * Chore: axios 라이브러리 추가

    * Feat: BestMealContainer 기본 레이아웃

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] components단위로 파일 분리 (#20)

    * Refactor: App.jsx에서 BestMealContainer import수정

    * Refactor: MealContainer에서 Loader와 MealCard 분리

    * Chore: components 폴더 관리

    * [FE] 페어 리팩토링 (#21)

    * Refactor: mockServerURL .env파일에서 관리

    - constant폴더에서 관리

    * Feat: setDefaultImage()함수 추가

    - 인자로 image url을 받아서 false면 default이미지로 반환

    * Chore: 폴더경로 상대경로에서 절대경로로 변경

    - jsconfig.json파일 설정

    * [FE] team-03브랜치에서 dev-FE로 최신화

    commit a773a14
    Merge: 2bc424b 1276077
    Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Date:   Sun Apr 24 22:54:48 2022 +0900

        Merge pull request #59 from Louie-03/dev-BE

        [Team-03][BE][루이&쿠킴] - 특정 음식 타입 조회 기능

    commit 2bc424b
    Author: Jwu <sju02048@naver.com>
    Date:   Sun Apr 24 17:06:36 2022 +0900

        [team-03][FE][쥬&도리] 1주차 두 번째 PR: 컴포넌트 단위 설계 (#66)

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

        * Feat: 프로젝트 초기 세팅

        ref: #8

        * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

        * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

        * Docs: 프로젝트 및 팀원 소개(readme.md)

        * Chore: Issues, PR templates 추가

        ref: #1

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        * Docs: 팀원 수정

        - 팀원 한 마디 추가

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        Co-authored-by: Louie <dhdustnr0134@naver.com>
        Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
        Co-authored-by: Jwu <sju02048@naver.com>
        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

        * [FE] MealContainer 레이아웃 작성 (#16)

        * Chore: vscode debugger .gitingore에추가

        * Chore: axios 라이브러리 추가

        * Feat: MealContainer

        - MealHeader
        - Carousel -> MealCard여러개

        * Refactor: useMemo 삭제

        * Chore: TODO 주석 작성

        - 컴포넌트 분리
        - stlye 코드 분리
        - status 코드

        * [FE] BestMealContainer 레이아웃 작성 (#18)

        * Chore: Prettier useTabs true로 수정

        * Chore: axios 라이브러리 추가

        * Feat: BestMealContainer 기본 레이아웃

        Co-authored-by: YUNHO <kimyouknow@naver.com>

        * [FE] components단위로 파일 분리 (#20)

        * Refactor: App.jsx에서 BestMealContainer import수정

        * Refactor: MealContainer에서 Loader와 MealCard 분리

        * Chore: components 폴더 관리

        * [FE] 페어 리팩토링 (#21)

        * Refactor: mockServerURL .env파일에서 관리

        - constant폴더에서 관리

        * Feat: setDefaultImage()함수 추가

        - 인자로 image url을 받아서 false면 default이미지로 반환

        * Chore: 폴더경로 상대경로에서 절대경로로 변경

        - jsconfig.json파일 설정

        Co-authored-by: YUNHO <kimyouknow@naver.com>
        Co-authored-by: Louie <dhdustnr0134@naver.com>
        Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    commit 1276077
    Merge: e8eca13 68b6e96
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 11:03:53 2022 +0900

        Merge pull request #22 from Louie-03/BE-feature-GET_api_products_meal_type

        [BE] 특정 음식 타입 조회 기능

    commit 68b6e96
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 10:39:03 2022 +0900

        Fix: DiscountPolicy NPE 문제 해결

        - DiscountPolicy가 존재하지 않는 상품의 인수 테스트 추가

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit 5335f2e
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 10:37:09 2022 +0900

        Refactor: 계산 로직의 책임을 Product에서 DiscountPolicy로 위임

        - 기존 Product의 계산 로직을 DiscountPolicy의 calculateFixedPrice 메서드로 옮겼다.

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit 1e27697
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 17:47:25 2022 +0900

        Feat: meal type으로 음식 조회가 되지 않는 경우 조회 실패 구현(404 NOT FOUND)

    commit db93682
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 17:27:13 2022 +0900

        Fix: Product 객체 fixedPrice 계산 로직 수정

        - 기존 연산 괄호 실수 -> 올바르게 변경
        - 테스트 코드 추가

    commit 3b74382
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Thu Apr 21 16:53:35 2022 +0900

        Refactor: Entity와 Domain 객체 분리

        - Entity를 Domain 객체로 변경해주는 DomainEntityMapper 구현
        - 변경된 코드에 따른 테스트 코드 수정

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit ca34b5a
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 15:17:09 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 리포지토리 구현

        - 테스트 작성

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit 06cebb6
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 15:15:29 2022 +0900

        Feat: product, product_image, discount_policy 테이블 DDL과 더미데이터 생성, 테스트 환경 구분

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit feb2909
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 09:32:59 2022 +0900

        Refactor: Product <-> Response Dto 변환 위치를 컨트롤러에서 서비스로 변경

    commit fc57090
    Author: Jwu <sju02048@naver.com>
    Date:   Wed Apr 20 21:07:11 2022 +0900

        [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

        * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

        * Docs: 프로젝트 및 팀원 소개(readme.md)

        * Chore: Issues, PR templates 추가

        ref: #1

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        * Docs: 팀원 수정

        - 팀원 한 마디 추가

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit 4f385a1
    Merge: a002511 e8eca13
    Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Date:   Wed Apr 20 18:29:42 2022 +0900

        Merge pull request #20 from Louie-03/dev-BE

        [Team-03][BE] 쿠킴 & 루이 - 데이터베이스 설계, Mock API Server, 배포 아키텍처, 프로젝트 세팅

    commit f4c13a4
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 17:32:01 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 서비스 구현

        - 테스트 작성

    commit 8e691b4
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 17:03:56 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 컨트롤러 구현

        - API : GET /api/products?meal={value}
        - 컨트롤러 테스트 구현
        - 서비스 계층은 Mock 처리
        - Product 도메인 객체 생성
        - ProductsDtoMapper 객체 생성 : Product 도메인 <-> ProductsMealTypeResponse 변환

    commit b9873d0
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 15:57:24 2022 +0900

        Test: 특정 Products의 meal type 조회 기능 테스트코드만 작성

        - 인수 테스트 작성

    commit e8eca13
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Wed Apr 20 14:24:31 2022 +0900

        Feat: 프로젝트 초기 세팅

        ref: #8

    Co-Authored-By: YUNHO <kimyouknow@naver.com>
    Co-Authored-By: Louie <dhdustnr0134@naver.com>
    Co-Authored-By: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] Styled Component Best Header 부분 (#25)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Chore: env 추가

    * Style: SVG 아이콘 추가

    * Feat: theme 추가

    * Style: 폰트 추가

    * Style: 파일 이름 변경

    * Design: BestMeal 헤더&네비게이션

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] PR 반영 및 styledCSS 수정 (#28)

    - 두 번째 PR 반영
    - 코드 스타일 리팩토링
    ref: #26

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] 일반 Meal 컴포넌트 UI 구현 (#39)

    * Design: Meal Card

    styles.js 분리

    * Design: 카드에 hover시 택배서비스 표시

    * Design: MealConatiner  헤더 및 레이아웃

    * Design: 캐러셀 컨테이너

    - svg추가

    * Chore: Card컨테이너에서 hover할 때 보여지는 배송정보 코드 상 위치 변경

    - 컴포넌트 하단으로 빼기

    * Build: mock servser url 환경변수로 관리

    .env파일에서 관리하던 url을 각 로컬에서 관리하기

    * Refactor: mock sever 403에러 일때 constant에 있는 mock데이터 사용

    * Design: theme 세부속성 분해할당해서 접근

    이전: theme -> theme.color
    이후: theme: {color} -> color

    * Refactor: mealCard hover 속성 js변수에서 css로 제어

    * Chore: 주석 정리

    * [FE] Best 컴포넌트 구현 (#40)

    * Feat: 금액 toLocalString로 구분

    * Feat: mock api -> mock data로 수정

    - postman api 호출횟수 초과해서 로컬로 값 보내는 걸로 수정

    * Design: Best 컴포넌트 추가

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE]  캐러셀 디자인, getCarouselDesign() (#48)

    * Design: App에서 Main 컴포넌트 분리

    * Desgin: 캐러셀 디자인, getCarouselDesign()

    - getCarouselDesign: 이미지 사이즈, 이미지 개수에 따라 동적으로 UI 결정

    * [FE] GNB Design 구현 (#49)

    * Style: 오타 수정

    * Design: 글로벌스타일 button poiner 추가

    * Design: Header Component 추가

    - 헤더에 hover 시 레이아웃 나타나는 디자인
    - 글씨, 아이콘 hover 디자인
    - 전체적인 헤더 UI 디자인

    * [FE] BestMealCard 컴포넌트와 MealCard 컴포넌트 통합 (#50)

    * Refactor: BestMeal Container mock데이터 분리 및 탭 변수 수정

        - MOCK_DATA_JS -> MOCK_BEST_MEAT: 변수명 변경 및 contant로 이동
        - BEST_SUBTITLE -> BEST_TAB_TYPE: 변수명 변경 및 api
        Params추가
        - Tabs컴포넌트 BestMeals컴포넌트처럼 양식 통일

    * Refactor: BestMealCard를 MealCard컴포넌트와 통일

    - MealCard를 받을 때 이미지 사이즈 넘겨받기

    * Feat: BestMeal에서 findTargetTab()함수

    선택한 탭의 id를 인자로 받고 apiParams를 반환함.

    * Chore: Main위치 src/components -> src/pages

    * Chore: 메인 레이아웃

    헤더 mainWidth설정

    * Chore: 함수 선언식 -> arrow function

    * Design 캐러셀 양 옆 svg 스타일 수정

    - border 없애기
    - 크기 키움

    * Fix: Main 경로 오타 수정

    * Refactor: 호버창 컴포넌트 단위로 분리

    * Refactor: state값 이용하지 않고 hover로 수정

    * Design: 컴포넌트 간 간격 수정

    * [FE] 컴포넌트 리팩토링 (#51)

    Refactor: 호버창 컴포넌트 단위로 분리

    Refactor: state값 이용하지 않고 hover로 수정

    Design: 컴포넌트 간 간격 수정

    * Chore: 오타수정

    * Chore: 충돌해결하면서 지우지 못한 폴더 삭제

    - constant
    - util

    * Chore: reset.css 삭제

    * [FE} 캐러셀 컴포넌트 구현 (#58)

    * Chore: mock server에서 실제서버url로 변경

    * Feat: Carousel  구현

    * Feat: Carousel 재사용성 고려해서 children을 밖에서 선언

    * [FE] Custom Axios 작성 및 데이터 fetch 기능 (#59)

    * Style: API 변수이름 수정

    * Fix: price 오타 수정

    * Delete: PR 충돌 오류로 삭제

    * Style: 여백 오타 수정

    * Feat: useAxios 추가

    * Design: 더보기 버튼

    * Feat: 카테고리 더보기

    * Design: 버튼 가운데 정렬

    * Feat: 카테고리 추가 렌더링

    버그 고쳐야함

    * Feat: 추가 데이터 버튼 감추기

    Co-authored-by: yunho <kimyouknow@naver.com>
    Co-authored-by: Jwu <sju02048@naver.com>

    * Design: CSS 스타일 변경

    * Refactor: 유틸함수 따로 관리

    * Feat: 세부정보(detail) 페이지

    * Refactor: useAxios response state 수정

    * Design: OAuth 테스트용 추가

    Co-authored-by: YUNHO <kimyouknow@naver.com>
    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

commit 43ee842
Author: Jwu <sju02048@naver.com>
Date:   Fri Apr 29 01:12:56 2022 +0900

    [team-03][FE][쥬&도리] 2주차 첫 번째: 컴포넌트 구현 (#143)

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: Jwu <sju02048@naver.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] MealContainer 레이아웃 작성 (#16)

    * Chore: vscode debugger .gitingore에추가

    * Chore: axios 라이브러리 추가

    * Feat: MealContainer

    - MealHeader
    - Carousel -> MealCard여러개

    * Refactor: useMemo 삭제

    * Chore: TODO 주석 작성

    - 컴포넌트 분리
    - stlye 코드 분리
    - status 코드

    * [FE] BestMealContainer 레이아웃 작성 (#18)

    * Chore: Prettier useTabs true로 수정

    * Chore: axios 라이브러리 추가

    * Feat: BestMealContainer 기본 레이아웃

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] components단위로 파일 분리 (#20)

    * Refactor: App.jsx에서 BestMealContainer import수정

    * Refactor: MealContainer에서 Loader와 MealCard 분리

    * Chore: components 폴더 관리

    * [FE] 페어 리팩토링 (#21)

    * Refactor: mockServerURL .env파일에서 관리

    - constant폴더에서 관리

    * Feat: setDefaultImage()함수 추가

    - 인자로 image url을 받아서 false면 default이미지로 반환

    * Chore: 폴더경로 상대경로에서 절대경로로 변경

    - jsconfig.json파일 설정

    * [FE] team-03브랜치에서 dev-FE로 최신화

    commit a773a14
    Merge: 2bc424b 1276077
    Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Date:   Sun Apr 24 22:54:48 2022 +0900

        Merge pull request #59 from Louie-03/dev-BE

        [Team-03][BE][루이&쿠킴] - 특정 음식 타입 조회 기능

    commit 2bc424b
    Author: Jwu <sju02048@naver.com>
    Date:   Sun Apr 24 17:06:36 2022 +0900

        [team-03][FE][쥬&도리] 1주차 두 번째 PR: 컴포넌트 단위 설계 (#66)

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        * [FE] team-03브랜치에서 dev-FE로 최신화 (#14)

        * Feat: 프로젝트 초기 세팅

        ref: #8

        * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

        * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

        * Docs: 프로젝트 및 팀원 소개(readme.md)

        * Chore: Issues, PR templates 추가

        ref: #1

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        * Docs: 팀원 수정

        - 팀원 한 마디 추가

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        Co-authored-by: Louie <dhdustnr0134@naver.com>
        Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
        Co-authored-by: Jwu <sju02048@naver.com>
        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

        * [FE] MealContainer 레이아웃 작성 (#16)

        * Chore: vscode debugger .gitingore에추가

        * Chore: axios 라이브러리 추가

        * Feat: MealContainer

        - MealHeader
        - Carousel -> MealCard여러개

        * Refactor: useMemo 삭제

        * Chore: TODO 주석 작성

        - 컴포넌트 분리
        - stlye 코드 분리
        - status 코드

        * [FE] BestMealContainer 레이아웃 작성 (#18)

        * Chore: Prettier useTabs true로 수정

        * Chore: axios 라이브러리 추가

        * Feat: BestMealContainer 기본 레이아웃

        Co-authored-by: YUNHO <kimyouknow@naver.com>

        * [FE] components단위로 파일 분리 (#20)

        * Refactor: App.jsx에서 BestMealContainer import수정

        * Refactor: MealContainer에서 Loader와 MealCard 분리

        * Chore: components 폴더 관리

        * [FE] 페어 리팩토링 (#21)

        * Refactor: mockServerURL .env파일에서 관리

        - constant폴더에서 관리

        * Feat: setDefaultImage()함수 추가

        - 인자로 image url을 받아서 false면 default이미지로 반환

        * Chore: 폴더경로 상대경로에서 절대경로로 변경

        - jsconfig.json파일 설정

        Co-authored-by: YUNHO <kimyouknow@naver.com>
        Co-authored-by: Louie <dhdustnr0134@naver.com>
        Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    commit 1276077
    Merge: e8eca13 68b6e96
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 11:03:53 2022 +0900

        Merge pull request #22 from Louie-03/BE-feature-GET_api_products_meal_type

        [BE] 특정 음식 타입 조회 기능

    commit 68b6e96
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 10:39:03 2022 +0900

        Fix: DiscountPolicy NPE 문제 해결

        - DiscountPolicy가 존재하지 않는 상품의 인수 테스트 추가

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit 5335f2e
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Fri Apr 22 10:37:09 2022 +0900

        Refactor: 계산 로직의 책임을 Product에서 DiscountPolicy로 위임

        - 기존 Product의 계산 로직을 DiscountPolicy의 calculateFixedPrice 메서드로 옮겼다.

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit 1e27697
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 17:47:25 2022 +0900

        Feat: meal type으로 음식 조회가 되지 않는 경우 조회 실패 구현(404 NOT FOUND)

    commit db93682
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 17:27:13 2022 +0900

        Fix: Product 객체 fixedPrice 계산 로직 수정

        - 기존 연산 괄호 실수 -> 올바르게 변경
        - 테스트 코드 추가

    commit 3b74382
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Thu Apr 21 16:53:35 2022 +0900

        Refactor: Entity와 Domain 객체 분리

        - Entity를 Domain 객체로 변경해주는 DomainEntityMapper 구현
        - 변경된 코드에 따른 테스트 코드 수정

        Co-authored-by: “ku-kim” <kukim.dev@gmail.com>

    commit ca34b5a
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 15:17:09 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 리포지토리 구현

        - 테스트 작성

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit 06cebb6
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 15:15:29 2022 +0900

        Feat: product, product_image, discount_policy 테이블 DDL과 더미데이터 생성, 테스트 환경 구분

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit feb2909
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Thu Apr 21 09:32:59 2022 +0900

        Refactor: Product <-> Response Dto 변환 위치를 컨트롤러에서 서비스로 변경

    commit fc57090
    Author: Jwu <sju02048@naver.com>
    Date:   Wed Apr 20 21:07:11 2022 +0900

        [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

        * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

        * Docs: 프로젝트 및 팀원 소개(readme.md)

        * Chore: Issues, PR templates 추가

        ref: #1

        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

        * Docs: 팀원 수정

        - 팀원 한 마디 추가

        * Chore: 초기개발환경

        Chore: CRA 초기구성

        Chore: eslint 구성

        Chore: prettier 구성

        * Style: App.js -> jsx 수정

        Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
        Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    commit 4f385a1
    Merge: a002511 e8eca13
    Author: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Date:   Wed Apr 20 18:29:42 2022 +0900

        Merge pull request #20 from Louie-03/dev-BE

        [Team-03][BE] 쿠킴 & 루이 - 데이터베이스 설계, Mock API Server, 배포 아키텍처, 프로젝트 세팅

    commit f4c13a4
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 17:32:01 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 서비스 구현

        - 테스트 작성

    commit 8e691b4
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 17:03:56 2022 +0900

        Feat: 특정 Products의 meal type 조회 기능의 컨트롤러 구현

        - API : GET /api/products?meal={value}
        - 컨트롤러 테스트 구현
        - 서비스 계층은 Mock 처리
        - Product 도메인 객체 생성
        - ProductsDtoMapper 객체 생성 : Product 도메인 <-> ProductsMealTypeResponse 변환

    commit b9873d0
    Author: “kukim” <kukim.dev@gmail.com>
    Date:   Wed Apr 20 15:57:24 2022 +0900

        Test: 특정 Products의 meal type 조회 기능 테스트코드만 작성

        - 인수 테스트 작성

    commit e8eca13
    Author: Louie <dhdustnr0134@naver.com>
    Date:   Wed Apr 20 14:24:31 2022 +0900

        Feat: 프로젝트 초기 세팅

        ref: #8

    Co-Authored-By: YUNHO <kimyouknow@naver.com>
    Co-Authored-By: Louie <dhdustnr0134@naver.com>
    Co-Authored-By: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] Styled Component Best Header 부분 (#25)

    * Feat: 프로젝트 초기 세팅

    ref: #8

    * [team-03][FE][쥬&도리] 1주차 첫 PR: 프로젝트 환경설정 및 설계 (#25)

    * [공통] Issues, PR templates 와 프로젝트 소개 README.md 추가 (#2)

    * Docs: 프로젝트 및 팀원 소개(readme.md)

    * Chore: Issues, PR templates 추가

    ref: #1

    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Docs: 팀원 수정

    - 팀원 한 마디 추가

    * Chore: 초기개발환경

    Chore: CRA 초기구성

    Chore: eslint 구성

    Chore: prettier 구성

    * Style: App.js -> jsx 수정

    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
    Co-authored-by: “Louie-03” <dhdustnr0134@naver.com>

    * Chore: env 추가

    * Style: SVG 아이콘 추가

    * Feat: theme 추가

    * Style: 폰트 추가

    * Style: 파일 이름 변경

    * Design: BestMeal 헤더&네비게이션

    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

    * [FE] PR 반영 및 styledCSS 수정 (#28)

    - 두 번째 PR 반영
    - 코드 스타일 리팩토링
    ref: #26

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE] 일반 Meal 컴포넌트 UI 구현 (#39)

    * Design: Meal Card

    styles.js 분리

    * Design: 카드에 hover시 택배서비스 표시

    * Design: MealConatiner  헤더 및 레이아웃

    * Design: 캐러셀 컨테이너

    - svg추가

    * Chore: Card컨테이너에서 hover할 때 보여지는 배송정보 코드 상 위치 변경

    - 컴포넌트 하단으로 빼기

    * Build: mock servser url 환경변수로 관리

    .env파일에서 관리하던 url을 각 로컬에서 관리하기

    * Refactor: mock sever 403에러 일때 constant에 있는 mock데이터 사용

    * Design: theme 세부속성 분해할당해서 접근

    이전: theme -> theme.color
    이후: theme: {color} -> color

    * Refactor: mealCard hover 속성 js변수에서 css로 제어

    * Chore: 주석 정리

    * [FE] Best 컴포넌트 구현 (#40)

    * Feat: 금액 toLocalString로 구분

    * Feat: mock api -> mock data로 수정

    - postman api 호출횟수 초과해서 로컬로 값 보내는 걸로 수정

    * Design: Best 컴포넌트 추가

    Co-authored-by: YUNHO <kimyouknow@naver.com>

    * [FE]  캐러셀 디자인, getCarouselDesign() (#48)

    * Design: App에서 Main 컴포넌트 분리

    * Desgin: 캐러셀 디자인, getCarouselDesign()

    - getCarouselDesign: 이미지 사이즈, 이미지 개수에 따라 동적으로 UI 결정

    * [FE] GNB Design 구현 (#49)

    * Style: 오타 수정

    * Design: 글로벌스타일 button poiner 추가

    * Design: Header Component 추가

    - 헤더에 hover 시 레이아웃 나타나는 디자인
    - 글씨, 아이콘 hover 디자인
    - 전체적인 헤더 UI 디자인

    * [FE] BestMealCard 컴포넌트와 MealCard 컴포넌트 통합 (#50)

    * Refactor: BestMeal Container mock데이터 분리 및 탭 변수 수정

        - MOCK_DATA_JS -> MOCK_BEST_MEAT: 변수명 변경 및 contant로 이동
        - BEST_SUBTITLE -> BEST_TAB_TYPE: 변수명 변경 및 api
        Params추가
        - Tabs컴포넌트 BestMeals컴포넌트처럼 양식 통일

    * Refactor: BestMealCard를 MealCard컴포넌트와 통일

    - MealCard를 받을 때 이미지 사이즈 넘겨받기

    * Feat: BestMeal에서 findTargetTab()함수

    선택한 탭의 id를 인자로 받고 apiParams를 반환함.

    * Chore: Main위치 src/components -> src/pages

    * Chore: 메인 레이아웃

    헤더 mainWidth설정

    * Chore: 함수 선언식 -> arrow function

    * Design 캐러셀 양 옆 svg 스타일 수정

    - border 없애기
    - 크기 키움

    * Fix: Main 경로 오타 수정

    * Refactor: 호버창 컴포넌트 단위로 분리

    * Refactor: state값 이용하지 않고 hover로 수정

    * Design: 컴포넌트 간 간격 수정

    * [FE] 컴포넌트 리팩토링 (#51)

    Refactor: 호버창 컴포넌트 단위로 분리

    Refactor: state값 이용하지 않고 hover로 수정

    Design: 컴포넌트 간 간격 수정

    * Chore: 오타수정

    * Chore: 충돌해결하면서 지우지 못한 폴더 삭제

    - constant
    - util

    * Chore: reset.css 삭제

    * [FE} 캐러셀 컴포넌트 구현 (#58)

    * Chore: mock server에서 실제서버url로 변경

    * Feat: Carousel  구현

    * Feat: Carousel 재사용성 고려해서 children을 밖에서 선언

    * [FE] Custom Axios 작성 및 데이터 fetch 기능 (#59)

    * Style: API 변수이름 수정

    * Fix: price 오타 수정

    * Delete: PR 충돌 오류로 삭제

    * Style: 여백 오타 수정

    * Feat: useAxios 추가

    * Design: 더보기 버튼

    * Feat: 카테고리 더보기

    * Design: 버튼 가운데 정렬

    * Feat: 카테고리 추가 렌더링

    버그 고쳐야함

    * Feat: 추가 데이터 버튼 감추기

    Co-authored-by: yunho <kimyouknow@naver.com>
    Co-authored-by: Jwu <sju02048@naver.com>

    Co-authored-by: YUNHO <kimyouknow@naver.com>
    Co-authored-by: Louie <dhdustnr0134@naver.com>
    Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
    Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>

commit e00348e
Merge: a773a14 97dd386
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Thu Apr 28 14:20:36 2022 +0900

    Merge pull request #135 from Louie-03/dev-BE

    [Team-03][BE][루이&쿠킴] - 로그인 제외한 모든 API 기능 구현, 배포

commit 97dd386
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 28 11:54:59 2022 +0900

    Chore: 운영 DB 더미데이터 추가

commit d84f4a6
Author: Louie <dhdustnr0134@naver.com>
Date:   Thu Apr 28 11:45:23 2022 +0900

    Feat: 주문 실패 시 현재 재고 수량을 반환해주도록 GlobalExceptionHandler 구현

    - 인수 테스트 작성

commit ecac1da
Author: “kukim” <kukim.dev@gmail.com>
Date:   Thu Apr 28 10:43:13 2022 +0900

    Refactor: PR 리뷰 피드백 적용(오타, 사용하지 않는 코드제거(Valid), Long -> long 타입 변환)

commit b3cb1eb
Merge: 05b9d52 dc7383d
Author: Louie <dhdustnr0134@naver.com>
Date:   Wed Apr 27 16:58:07 2022 +0900

    Merge pull request #55 from Louie-03/BE-feature-remove_id_field

    [BE] 도메인 객체의 불필요한 id 필드 제거

commit dc7383d
Author: seok <dhdustnr0134@naver.com>
Date:   Wed Apr 27 16:45:42 2022 +0900

    Refactor: 도메인 객체의 불필요한 id 필드 제거

commit 05b9d52
Merge: 947bdca c8826e0
Author: Louie <dhdustnr0134@naver.com>
Date:   Wed Apr 27 16:20:40 2022 +0900

    Merge pull request #53 from Louie-03/BE-feature-cors_bug_fix

    [BE] 도메인 설정으로 CORS 문제 해결

commit c8826e0
Author: seok <dhdustnr0134@naver.com>
Date:   Wed Apr 27 16:17:00 2022 +0900

    Fix: 도메인 설정으로 인한 CORS 문제 해결

commit 947bdca
Merge: 3375244 921e065
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Tue Apr 26 16:20:37 2022 +0900

    Merge pull request #43 from Louie-03/BE-feature-POST_products_order

    [BE] 특정 상품 주문 기능 구현

commit 921e065
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 16:13:35 2022 +0900

    Fix: Spring Data Jdbc에서 save 메서드를 통해서 update 할 때 PK를 List의 index 값으로 입력되는 오류 수정

    update 쿼리를 직접 작성해서 사용하는 방식으로 해당 문제를 해결했습니다.

commit 3375244
Merge: b8753ad b67ecc9
Author: Louie <dhdustnr0134@naver.com>
Date:   Tue Apr 26 15:54:25 2022 +0900

    Merge pull request #41 from Louie-03/BE-feature-CORS

    [BE] CORS 기능 추가 (시스템 환경변수 활용)

commit b67ecc9
Author: “kukim” <kukim.dev@gmail.com>
Date:   Tue Apr 26 15:34:49 2022 +0900

    Feat: CORS 기능 추가 (시스템 환경변수 활용하여 LOCAL_IP, AWS_IP 추가)

    - 환경변수로 LOCAl_IP, AWS_IP 추가해야함

commit d5c67f6
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 15:03:27 2022 +0900

    Feat: 특정 상품 주문하기의 RequestBody 검증 구현

    - 만약 count가 음수라면 400(Bad Request) 상태코드를 반환한다.

commit b7fcfef
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 14:41:26 2022 +0900

    Feat: 특정 상품 주문하기 기능 구현

    - 서비스, 리파지토리 계층에 특정 상품 주문하기와 관련된 로직 구현
    - Response 전용 객체인 OrderSaveResponse 구현

commit 825fb39
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 14:32:37 2022 +0900

    Feat: 도메인 객체에 id 필드 추가

    - 특정 상품 주문 시 엔티티를 도메인 객체로 변경하는 과정에서 id가 사라지는 문제가 발생했습니다.
    - 해당 문제를 해결하기 위해 도메인 객체에 id 필드를 추가했습니다.

commit 95511a7
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:20:36 2022 +0900

    Style: ProductsDtoMapper의 클래스명, 메서드명 변경

    - ProductsDtoMapper 클래스의 이름을 DomainDtoMapper로 변경
    - DomainDtoMapper에서 두개의 도메인 객체를 참조하기 때문에 메서드명에 사용되었던 Domain이라는 단어를 실제 도메인 객체 이름으로 변경했습니다.

commit 5ff762d
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:15:43 2022 +0900

    Feat: OrderEntity 구현

commit 6543cb6
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:14:09 2022 +0900

    Feat: Product 클래스에 재고 수량 차감 로직 구현

    - 만약 주문 개수보다 재고 수량이 부족하다면 NotEnoughStockQuantityException이 발생한다.

commit 0fdbb79
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:11:18 2022 +0900

    Feat: Order 도메인 객체 구현

    - totalPrice를 계산하는 calculateTotalPrice() 구현
    - deliveryPrice를 계산하는 calculateDeliveryPrice() 구현

commit c20b925
Author: seok <dhdustnr0134@naver.com>
Date:   Tue Apr 26 13:06:34 2022 +0900

    Feat: orders 테이블 스키마 작성

commit b8753ad
Merge: a763171 9f62389
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Tue Apr 26 12:52:20 2022 +0900

    Merge pull request #38 from Louie-03/BE-feature-GET_api_products_recommendation

    [BE] 배포/개발 환경 application 분리

commit 9f62389
Author: “kukim” <kukim.dev@gmail.com>
Date:   Tue Apr 26 12:47:29 2022 +0900

    Build: 배포/개발 환경 분리 application 프로파일 설정

    - 환경변수 설정

commit 401b9ad
Author: Louie <dhdustnr0134@naver.com>
Date:   Tue Apr 26 00:38:58 2022 +0900

    Feat: 특정 음식 주문하기 기능의 컨트롤러 구현

    - Product 테이블과 객체에 stock_quantity 필드 추가
    - stock_quantity 샘플 데이터 추가
    - 컨트롤러 테스트 구현

commit a763171
Merge: 52dd9da 1541eb2
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Mon Apr 25 21:02:47 2022 +0900

    Merge pull request #36 from Louie-03/BE-feature-GET_products_best_category

    [BE] 특정 카테고리의 베스트 음식 조회 기능 구현

commit 1541eb2
Author: Louie <dhdustnr0134@naver.com>
Date:   Mon Apr 25 19:20:06 2022 +0900

    Feat: 특정 베스트 카테고리 음식 조회 기능 구현

    특정 베스트 카테고리 음식 조회 기능 인수테스트 작성
    특정 베스트 카테고리 음식 조회 기능 리파지토리 테스트 작성
    @repository 어노테이션 제거
    discountRate 자료형 float에서 long으로 변경
    validProducts 메서드 이름 validateProducts로 이름 변경

commit 9882c4a
Author: Louie <dhdustnr0134@naver.com>
Date:   Mon Apr 25 15:34:35 2022 +0900

    Feat: 특정 베스트 음식 카테고리 조회 기능의 컨트롤러 구현

    - API : GET /api/products/best?category={value}
    - 컨트롤러 테스트 구현
    - 서비스 계층은 Mock 처리

commit 52dd9da
Merge: 5810e2e fbb5a66
Author: Louie <dhdustnr0134@naver.com>
Date:   Mon Apr 25 15:19:24 2022 +0900

    Merge pull request #31 from Louie-03/BE-feature-GET_api_products_recommendation

    [BE] 추천 음식 조회 기능

commit fbb5a66
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 14:57:30 2022 +0900

    feat: 추천 음식 조회 기능

    - 현재 10개의 Product 랜덤하게 전달
    - 추후 로그인, 유저별 추천 가능성이 있다.

commit 5810e2e
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 13:06:37 2022 +0900

    Refactor: ProductMealTypeResponse -> ProductBasicTypeResponse 이름 변경

commit b11552c
Merge: a773a14 e750413
Author: kukim <57086195+ku-kim@users.noreply.github.com>
Date:   Mon Apr 25 12:30:56 2022 +0900

    Merge pull request #27 from Louie-03/BE-feature-GET_api_products_id

    [BE] 특정 id의 음식 조회 기능

commit e750413
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 12:22:32 2022 +0900

    feat: 특정 id의 음식 조회 기능 구현 (Controller, Service 계층)

    - 테스트 코드 작성

commit 5bda672
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 12:21:14 2022 +0900

    feat: Product 도메인 객체에 Delivery 객체 연결

commit d63a0f6
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 12:17:54 2022 +0900

    feat: DeliveryPolicy Repository 구현과 테스트

commit 1157fca
Author: “kukim” <kukim.dev@gmail.com>
Date:   Mon Apr 25 12:12:32 2022 +0900

    feat: DeliveryPolicy 테이블 설계와 Dummy 데이터 추가

* Style: 주석 제거

* Refactor: api 주소 변경

* Chore: FE/src/Pages -> FE/src/pages 폴더명 변경

* Chore: src/Pages 폴더 삭제

Co-authored-by: YUNHO <kimyouknow@naver.com>
Co-authored-by: Louie <dhdustnr0134@naver.com>
Co-authored-by: HYUNJUN SON <55608425+guswns1659@users.noreply.github.com>
Co-authored-by: kukim <57086195+ku-kim@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
review-BE Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants