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-12 BE] 1주차 첫 PR (2022/4/20) #50

Merged
merged 15 commits into from Apr 21, 2022
Merged

[Team-12 BE] 1주차 첫 PR (2022/4/20) #50

merged 15 commits into from Apr 21, 2022

Conversation

zbqmgldjfh
Copy link
Member

@zbqmgldjfh zbqmgldjfh commented Apr 20, 2022

안녕하세요 리뷰어님!

Team12의 BE조원 검봉, Shine 이라고 합니다.
저희 팀의 리뷰를 담당해주셔서 우선 감사의 말 전합니다!

질문

팀원과 Spring Data Jdbc를 사용하던 도중, OneToMany 관계를 이용할 때 Map을 통해 저장하도록 하였었습니다.
Category : item = 1 : N 의 관계로 말이죠!

하지만 해당 Map을 이용할 경우 어그리게이트 루트에 해당되는 Category는 auto_increment가 잘 적용되지만,
item은 auto_increment가 정상작동하지 않았습니다.

혹시 Map을 사용할때는 id값을 직접 지정해줘야 하나요?

@Test
public void itemSaveTest() {
    // given
    Category mainCategory = new Category(CategoryType.MAIN);
    Item newItem = new Item("고기", "맛있는 고기", BigDecimal.valueOf(10000),
            10.0, Badge.EVENT, "풍성한 고기 반찬", 10, BigDecimal.valueOf(100), "html");
    
    // when
    mainCategory.saveItem(newItem); // item의 id가 null
    Category savedCategory = categoryRepository.save(mainCategory); // category는 id생성, but item의 아이디는??
  
    // then
    Category findCategory = categoryRepository.findById(savedCategory.getId()).get();
    List<Item> findItems = findCategory.getItems();
    Item findItem = findItems.get(0);
    assertThat(findItem.getTitle()).isEqualTo("고기");
}

public class Category {

    @Id
    private Long id; // 1L
    private CategoryType type;

    public Category(CategoryType type) {
        this.type = type;
    }

    @MappedCollection(idColumn = "category_id", keyColumn = "id")
    private Map<String, Item> items = new ConcurrentHashMap<>();

    public Long getId() {
        return id;
    }

    public List<Item> getItems() {
        return new ArrayList<>(items.values());
    }

    public void saveItem(Item item) {
        items.put(item.getId(), item);
    }
}

잘 작동하지않아 우선 List로 변경하여 처리하였습니다.

zbqmgldjfh and others added 12 commits April 18, 2022 11:26
* env: issue 템플릿

- FE, BE의 기본 feature 템플릿 생성

* env: PR template 작성
- test를 통해 CategoryRepository 작동 확인 완료
- test를 통해 itemRepository 작동 확인 완료
- UUID를 통해 item의 PK를 생성하는 버전
Contents
- Item과 Order 도메인 구현
- OrderRef를 통해 두개의 도메인을 many to many 관계로 구현
Contents
- 카테고리에 아이템이 정상적으로 저장되는지 테스트 진행
- 주문에 아이템이 정상적으로 저장되는지 테스트 진행
- REST controller를 위한 HATEAOS를 명시
@zbqmgldjfh zbqmgldjfh added the review-BE Improvements or additions to documentation label Apr 20, 2022
zbqmgldjfh and others added 3 commits April 20, 2022 21:17
- REST controller를 위한 HATEAOS를 명시
Contnents
- gradle build가 안되는 오류가 발생하여, build.gradle파일을 수정함
Contents
- CategoryController 내부에 sidedish 조회 api를 구현
eeeesong pushed a commit that referenced this pull request Apr 21, 2022
feat - ViewController의존성 주입 #49
Copy link

@wooody92 wooody92 left a comment

Choose a reason for hiding this comment

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

안녕하세요~ 🙃

image


질문 주신 부분에 대해 먼저 말씀드리면, 우선 일반적인 List 타입이 아닌 Map으로 설정하려고 했는지 궁금합니다. (단일 쓰레드로 동작하는 것 같은데 일반적인 HashMap이 아닌 ConcurrentHashMap를 설정한 이유도 궁금하구요.)

확고한 이유가 있다면 spring-data-jdbc에서 @MappedCollection 사용 시 어떻게 동작하는지 이해하시고 (또는 Map 사용시에는 어떻게 id auto_increment가 진행되는지) 구글링으로 답을 찾아가시는게 더 도움이 될 것 같네요.

추가로 ERD 작성했다면 PR에 링크를 걸어주시면 앞으로 코드를 파악하는데 더 도움이 될 것 같습니다. (ERD를 작성하지 않았다면 다음 PR부터는 꼭 작성해주세요.)

그럼 수고 많으셨고, 남은 이번 주도 화이팅입니다. 💪

Comment on lines +17 to +41
@RequiredArgsConstructor
@Component
public class initDB {

private final InitService initService;

@PostConstruct
void init() {
initService.init();
}

@Component
@Transactional
@RequiredArgsConstructor
static class InitService {

private final CategoryRepository categoryRepository;

public void init(){
Category mainCategory = new Category(CategoryType.MAIN);
Category sidedishCategory = new Category(CategoryType.SIDE);

Item newItem1 = new Item("고기1", "맛있는 고기1", BigDecimal.valueOf(10000),
10.0, Badge.EVENT, "풍성한 고기 반찬", 10, BigDecimal.valueOf(100), "html");

Choose a reason for hiding this comment

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

테스트 용 데이터 초기화를 서비스 코드에서 처리하는 방식은 실제 운영 관점에서 매우 위험해보입니다. 특별한 사유가 없다면 사용하지 않았으면 좋겠네요.

  1. profile로 관리한다고하여도 실수 등으로 실제 운영 중인 DB를 초기화 할 수 있음
  2. 운영중인 서비스 코드에 테스트 데이터가 들어가는 것은 좋지 않음

Copy link
Member Author

Choose a reason for hiding this comment

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

배포전 데이터를 삽입하는 용도로만 사용하고, build 전에 삭제하도록 하겠습니다 ㅎㅎ

Comment on lines +29 to +31
@GetMapping("/main/{pageId}")
public CollectionModel<ItemResource> getMain(@PathVariable Long pageId) {
List<Item> items = categoryService.findItemsByPageId(pageId);

Choose a reason for hiding this comment

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

pageId는 어떤값인가요? categoryService.findItemsByPageId(pageId) 메서드에서는 categoryId로 사용되는 것으로 보이는데 이름이 달라서요.

Copy link
Member Author

Choose a reason for hiding this comment

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

원래 생각했던것은 pageId를 통해 페이징을 처리하려 했는데, 구현하고 보니 categoryId를 넘기고 있었습니다... ㅠ,ㅠ....
수정하여 구현은 변경하였습니다!

Comment on lines +33 to +38
List<ItemResource> itemResources = items.stream().map(ItemResource::new).collect(Collectors.toList());

CollectionModel<ItemResource> responseMainType = CollectionModel.of(itemResources);
responseMainType.add(linkTo(methodOn(CategoryController.class).getMain(pageId)).withSelfRel());
responseMainType.add(linkTo(methodOn(CategoryController.class).getMain(pageId-1)).withRel("prev-page"));
responseMainType.add(linkTo(methodOn(CategoryController.class).getMain(pageId+1)).withRel("next-page"));

Choose a reason for hiding this comment

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

이 부분이 좀 난해한데요.. 페이지네이션을 위한 부분일까요??

Copy link
Member Author

Choose a reason for hiding this comment

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

Spring HATEOAS를 사용하여 REST API의 상태전이를 적용시킨 부분입니다!!
RESTful한 API 작성을 위해 필수적인 부분입니다 ㅠ,ㅠ

Comment on lines +3 to +4
public enum CategoryType {
MAIN, SIDE, SOUP

Choose a reason for hiding this comment

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

enum 사용 좋습니다~

Copy link
Member Author

Choose a reason for hiding this comment

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

감사합니다!!!

@@ -0,0 +1,50 @@
SET FOREIGN_KEY_CHECKS = 0;

Choose a reason for hiding this comment

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

schema 처음과 끝 f.k check 설정 변경 부분도 특별한 사유가 없다면 제거해주세요.

Copy link
Member Author

Choose a reason for hiding this comment

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

Category 에 의존하고 있던 Item을 먼저 drop 하게 순서를 변경하여, f,k check에서 에러가 발생하지 않도록 변경하였습니다!!

@@ -0,0 +1,113 @@
= Shine's REST API Guide

Choose a reason for hiding this comment

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

REST Docs 적용 좋습니다. 👏

Copy link
Member Author

Choose a reason for hiding this comment

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

빌드 설정에서 꼬여 많은 문제를 겪고 있습니다 ㅠ,ㅠ........

import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;

@Transactional

Choose a reason for hiding this comment

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

controller 테스트에서는 불필요해보입니다.

Copy link
Member Author

Choose a reason for hiding this comment

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

해당 테스트의 원래 목적은 데이터 베이스 연동까지 확인해보고 싶었기 때문에 통합 테스트로 이름을 변경해 주었습니다!
변경된 이름은 다음과 같습니다 : CategoryIntergrationTest

실제 데이터를 삽입해보고 싶었기 때문에 @transactional을 추가하였습니다!!

혼동되는 이름 죄송합니다 ㅠ,ㅠ


@Transactional
@ActiveProfiles("local")
@SpringBootTest

Choose a reason for hiding this comment

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

이렇게하면 controller test에 사용하지않는 불필요한 빈까지 전부 불러옵니다. @WebMvcTest 에 대해 학습해보시길 추천드립니다.

Copy link
Member Author

Choose a reason for hiding this comment

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

Slice Test 에 해당되는 Controller 만의 테스트가 아닌 통합테스트를 해보기 위해 이름을 따로 변경해 주었습니다!
데이터까지 직접 들어가서 확인해 보고 싶었거든요 ㅠ,ㅠ
@WebMvcTest 또한 학습하였습니다 !! 감사합니다!

Comment on lines +36 to +37
@AutoConfigureMockMvc
@AutoConfigureRestDocs

Choose a reason for hiding this comment

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

이 설정들도 필수인가요?

Copy link
Member Author

Choose a reason for hiding this comment

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

@AutoConfigureMockMvc 는 통합테스트 에서 MockMvc 사용을 위해 추가하였으며,
@AutoConfigureRestDocs 는 필수는 아니지만, Rest doc 작성을 위한 많은 설정을 해주기 때문에 사용하였습니다.

Comment on lines +40 to +44
@Autowired
MockMvc mockMvc;

@Autowired
CategoryRepository categoryRepository;

Choose a reason for hiding this comment

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

테스트여도 기본적인 접근제어자는 설정해주세요.

Copy link
Member Author

Choose a reason for hiding this comment

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

private 로 변경하였습니다!!!

@wooody92 wooody92 merged commit b3a3e8d into codesquad-members-2022:team-12 Apr 21, 2022
@crispindeity
Copy link

안녕하세요 검봉입니다.
우선 바쁘신 와중에 리뷰를 남겨주셔서 감사드립니다.
남겨주신 리뷰 내용 반영하여 다음 PR전 까지 미션 진행하도록 하겠습니다.
다시한번 감사드립니다.

wheejuni pushed a commit that referenced this pull request Apr 28, 2022
- 상품 할인가격 : 할인정책, 상품 원가를 기반으로 할인가격 계산
- 적립금 계산 : 상품 할인가격의 1%를 적립금으로 함
eve712 pushed a commit that referenced this pull request Apr 28, 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>

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>
Dae-Hwa pushed a commit that referenced this pull request Apr 29, 2022
Sally order
-- 코드 추가 수정 예정
Hyune-c pushed a commit that referenced this pull request May 1, 2022
…dme_modify

[BE] deploy script and README 업데이트
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>
somedaycode pushed a commit that referenced this pull request May 9, 2022
* [#6] Chore: CRA 없이 React 빌드 환경 구축

* [#6] Chore: sass 모듈 추가, react 인식 불가 에러 해결

* [#6] Fix: typo 수정

* [#8] Chore: Header 이미지 파일 추가

* [#8] Feat: Header 구현

* [#8] Design: Header 스타일 작성

* [#8] Rename: 컴포넌트 확장자 변경

* [#8] Rename: assets 디렉토리 생성 및 image 디렉토리 이동

* [#6] Chore: webpack.config.js에 절대경로 alias 설정

* [#8] Refactor: import 경로 수정

* [#8] Refactor: Nav함수 구조분해할당 적용

* [#8] Refactor: PR리뷰 반영

Nav 컴포넌트 함수에 conditional rendering 적용
makeNavCatetory함수 로직을 MainSubNav 컴포넌트 함수에서 처리

* [#8] Refactor: MainNav, MainSubNav 컴포넌트 함수 이름 변경

* [#8] Design: subCategory 마우스 호버 스타일 추가

* [#13] Feat: Promotion 1차 구현

* [#13] Chore: babel transform-runtime-plugin 설치, 설정

* [#13] Feat: 기획전 컴포넌트 구현

목서버에서 데이터 fetch 함수 구현
PromotionBar에서 클릭이벤트 등록
클릭이벤트의 타겟 ID에 따른 PromotionSection 렌더링 구현

* Chore: 깃 충돌 해결 과정에서 꼬인 코드 수정

* Remove: 깃 수정 과정에서 생긴 오류 수정

* [#13] Feat: useEffect를 사용하여 TAB 랜더링 구현 & TAB 클릭 스타일 변경 구현

* [#6] Chore: babel config에 `runtime: automatic' 추가

* Chore: config의 절대경로 alias 수정

* Feat: constant 파일을 만들어서 상수 변수를 관리함

* [#8] Refactor: img 태그에 alt 속성 추가

* [#13] Refactor: img 태그에 alt 속성 추가

* [#13] Refactor: fetchData API를 util 파일로 분리

* [#13] Refactor: label 컴포넌트 수정

* [#31] Feat: Header 컴포넌트에 Atomic Design Pattern 적용

* [#13] Chore: data URL 수정

* [#31] Rename: Nav를 HeaderNav로 이름 변경

* [#36] Feat: Promotion 컴포넌트 분리

* Test: 임시 사용하는 fake data 생성

* [#31] Remove: 중복되는 image 디렉토리(src/image) 제거

* [#39] Chore:  styled-components, babel-plugin-styled-components 설치

* [#39] Feat: Header 컴포넌트에 styled-components 적용

* Chore: development, production mode build 환경 설정

* Chore: 깃 충돌 해결 과정에서 꼬인 코드 수정

* Remove: 깃 수정 과정에서 생긴 오류 수정

* [#13] Feat: useEffect를 사용하여 TAB 랜더링 구현 & TAB 클릭 스타일 변경 구현

* [#6] Chore: babel config에 `runtime: automatic' 추가

* Chore: config의 절대경로 alias 수정

* Feat: constant 파일을 만들어서 상수 변수를 관리함

* [#8] Refactor: img 태그에 alt 속성 추가

* [#13] Refactor: img 태그에 alt 속성 추가

* [#13] Refactor: fetchData API를 util 파일로 분리

* [#13] Refactor: label 컴포넌트 수정

* [#31] Feat: Header 컴포넌트에 Atomic Design Pattern 적용

* [#13] Chore: data URL 수정

* [#31] Rename: Nav를 HeaderNav로 이름 변경

* [#36] Feat: Promotion 컴포넌트 분리

* Test: 임시 사용하는 fake data 생성

* [#31] Remove: 중복되는 image 디렉토리(src/image) 제거

* [#39] Chore:  styled-components, babel-plugin-styled-components 설치

* [#39] Feat: Header 컴포넌트에 styled-components 적용

* Chore: development, production mode build 환경 설정

* [#6] Chore: CRA 없이 React 빌드 환경 구축

* [#6] Chore: sass 모듈 추가, react 인식 불가 에러 해결

* [#6] Fix: typo 수정

* [#8] Chore: Header 이미지 파일 추가

* [#8] Feat: Header 구현

* [#8] Design: Header 스타일 작성

* [#8] Rename: 컴포넌트 확장자 변경

* [#8] Rename: assets 디렉토리 생성 및 image 디렉토리 이동

* [#6] Chore: webpack.config.js에 절대경로 alias 설정

* [#8] Refactor: import 경로 수정

* [#8] Refactor: Nav함수 구조분해할당 적용

* [#8] Refactor: PR리뷰 반영

Nav 컴포넌트 함수에 conditional rendering 적용
makeNavCatetory함수 로직을 MainSubNav 컴포넌트 함수에서 처리

* [#8] Refactor: MainNav, MainSubNav 컴포넌트 함수 이름 변경

* [#8] Design: subCategory 마우스 호버 스타일 추가

* [#13] Feat: Promotion 1차 구현

* [#13] Chore: babel transform-runtime-plugin 설치, 설정

* [#13] Feat: 기획전 컴포넌트 구현

목서버에서 데이터 fetch 함수 구현
PromotionBar에서 클릭이벤트 등록
클릭이벤트의 타겟 ID에 따른 PromotionSection 렌더링 구현

* Chore: 깃 충돌 해결 과정에서 꼬인 코드 수정

* [#13] Feat: useEffect를 사용하여 TAB 랜더링 구현 & TAB 클릭 스타일 변경 구현

* [#6] Chore: babel config에 `runtime: automatic' 추가

* Chore: config의 절대경로 alias 수정

* Feat: constant 파일을 만들어서 상수 변수를 관리함

* [#8] Refactor: img 태그에 alt 속성 추가

* [#13] Refactor: img 태그에 alt 속성 추가

* [#13] Refactor: fetchData API를 util 파일로 분리

* [#13] Refactor: label 컴포넌트 수정

* [#31] Feat: Header 컴포넌트에 Atomic Design Pattern 적용

* [#13] Chore: data URL 수정

* [#31] Rename: Nav를 HeaderNav로 이름 변경

* [#36] Feat: Promotion 컴포넌트 분리

* Test: 임시 사용하는 fake data 생성

* [#39] Chore:  styled-components, babel-plugin-styled-components 설치

* [#39] Feat: Header 컴포넌트에 styled-components 적용

* .

* [#6] Chore: .gitignore에 build 추가

* [#43] Refactor: 변수에 할당하지 않고 section 태그 내에서 map 사용

* [#46] Feat: Category 컴포넌트 구현

* [#49] Feat: image에 hover시 delivery type 표시 기능 구현

* [#6] Chore: react-is 추가

* Chore: 배포를 위한 build 폴더 업데이트

* [#49] Refactor: DealiveryLabel에 onMouseLeave 추가

* [#50] Design: article에 hover시 box-shadow 효과 적용

* [#52] Feat: Modal과 상세페이지 구현

* [#6] Chore: 배포를 위한 build 폴더 업데이트

* [#52] Refactor: API에서 데이터를 요청하는 것으로 수정

* [#6] 배포를 위한 build 폴더 업데이트

Co-authored-by: DESKTOP-88VMMCI\user <luzverde0314@gmail.com>
Co-authored-by: ver <95198109+lv0314@users.noreply.github.com>
snowjang24 pushed a commit that referenced this pull request May 10, 2022
* feat: Modal Component 열기, 닫기 기능 구현

메뉴 카드를 클릭하면 모달창이 화면 가운데 나타나고, 모달창의 닫기 버튼을 클릭하면 모달창이 닫힌다.

* feat: 주문하기 기능 구현

주문하기 버튼을 클릭하고 주문이 완료되면 로딩화면이 렌더되고 메인페이지로 리로드된다. 주문에 실패하면 주문실패 알림창이 렌더되고 모달창으로 돌아간다.

* feat: 모달창 렌더 및 post 요청 기능 구현

모달창 마크업, 주문하기 기능 구현

Co-authored-by: Serin Kim  <Serin-Kim@users.noreply.github.com>

* feat: 모달창 UI styled-component 적용

Co-authored-by: Serin Kim  <Serin-Kim@users.noreply.github.com>

* feat: 배포된 api와 연결

Co-authored-by: Serin Kim  <Serin-Kim@users.noreply.github.com>

Co-authored-by: Serin Kim  <Serin-Kim@users.noreply.github.com>
godrm pushed a commit that referenced this pull request May 18, 2022
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