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

[BugFix/BE] 대표장비 업데이트 로직 수정 #326

Merged
merged 4 commits into from
Aug 2, 2022

Conversation

yh20studio
Copy link
Collaborator

issue: #325

작업 내용

  • 대표장비로 등록하려는 인벤토리 상품 ID 배열만 받아 대표장비 업데이트 로직 수정.
  • 빈 배열이 오는 경우 등록된 모든 대표장비를 해제.

@yh20studio yh20studio added 🔧 fix_issue 버그 수정 🖥️ backend 백엔드 💼 inventory 등록된 장비와 대표 장비 labels Aug 1, 2022
@yh20studio yh20studio linked an issue Aug 1, 2022 that may be closed by this pull request
Copy link
Collaborator

@Ohzzi Ohzzi left a comment

Choose a reason for hiding this comment

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

고생하셨습니다~ approve 드릴게요 리뷰 남긴 부분에 대해서는 반영해주세요!

Comment on lines 16 to 23
@Modifying(clearAutomatically = true)
@Query("update InventoryProduct i set i.selected = false where i.member = :member")
int updateBulkProfileProductByMember(Member member);

@Modifying(clearAutomatically = true)
@Query("update InventoryProduct i set i.selected = true "
+ "where i.member = :member and i.id in :selectedInventoryProductIds")
int updateBulkProfileProductByMemberAndIds(Member member, List<Long> selectedInventoryProductIds);
Copy link
Collaborator

Choose a reason for hiding this comment

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

위 메서드는 false로 만드는게 핵심이고 아래 메서드는 selected된 product들을 true로 만드는게 핵심인데 메서드 이름이 잘 나타내지 못하는 것 같아요

Copy link
Collaborator Author

@yh20studio yh20studio Aug 2, 2022

Choose a reason for hiding this comment

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

@Modifying(clearAutomatically = true)
@Query("update InventoryProduct i set i.selected = :selected where i.member = :member")
int updateBulkProfileProductByMember(Member member, boolean selected);

@Modifying(clearAutomatically = true)
@Query("update InventoryProduct i set i.selected = :selected "
        + "where i.member = :member and i.id in :selectedInventoryProductIds")
int updateBulkProfileProductByMemberAndIds(Member member, List<Long> selectedInventoryProductIds, boolean selected);

false와 true 값을 메서드 네임에 나타내기에는 너무 길어질 것으로 생각되어 다음과 같은 방식으로 boolean 값을 받아서 사용하도록 변경했습니다

);
}

@Test
void 대표_장비를_업데이트할_때_요청된_장비가_모두_null인_경우_예외가_발생한다() {
void 수정하려는_장비_갯수와_실제_등록된_대표_장비_갯수와_일치하지_않으면_예외를_반환한다() {
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
void 수정하려는_장비_갯수와_실제_등록된_대표_장비_갯수와_일치하지_않으면_예외를_반환한다() {
void 수정하려는_장비_개수와_실제_등록된_대표_장비_개수와_일치하지_않으면_예외를_반환한다() {

맞춤법 😢

void 인벤토리_상품_모두를_대표_장비에서_해제한다() {
// given
Member member = 회원을_저장한다(CORINNE.생성());
Product product = 제품을_저장한다(KEYBOARD_1.생성(1L));
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
Product product = 제품을_저장한다(KEYBOARD_1.생성(1L));
Product product = 제품을_저장한다(KEYBOARD_1.생성());

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

repository test 전부 살펴보고 변경했습니다

void 인벤토리_상품을_대표_장비로_등록한다() {
// given
Member member = 회원을_저장한다(CORINNE.생성());
Product product = 제품을_저장한다(KEYBOARD_1.생성(1L));
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
Product product = 제품을_저장한다(KEYBOARD_1.생성(1L));
Product product = 제품을_저장한다(KEYBOARD_1.생성());

// then
assertThat(actual).isOne();
}

Copy link
Collaborator

Choose a reason for hiding this comment

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

여기 위의 다른 메서드들도 repository에 save할 때는 id값 빼주세요

Copy link
Collaborator

@Youngyoon-1 Youngyoon-1 left a comment

Choose a reason for hiding this comment

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

고생하셨습니당~!

private void updateProfileProduct(final Member member, final ProfileProductRequest profileProductRequest) {
final List<Long> selectedInventoryProductIds = profileProductRequest.getSelectedInventoryProductIds();
inventoryProductRepository.updateBulkProfileProductByMember(member);
final int updateCount = inventoryProductRepository.updateBulkProfileProductByMemberAndIds(member,
Copy link
Collaborator

Choose a reason for hiding this comment

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

updatedCount 라는 변수명은 어떨까요?!

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

좋네요!

final int updateCount = inventoryProductRepository.updateBulkProfileProductByMemberAndIds(member,
selectedInventoryProductIds);
if (updateCount != selectedInventoryProductIds.size()) {
throw new SqlUpdateException();
Copy link
Collaborator

Choose a reason for hiding this comment

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

개인적으로 예외이름이 SqlUpdateException 라서 비즈니스 예외라고 생각하기 힘든것 것 같아요.(java에서 제공되는 SqlException과 혼동됨) 다른 이름으로 바꿔보는건 어떨까요? 물론 저도 쓸만한 이름이 기억나진 않습니다.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

NotUpdatableException 으로 변경했습니다!

Member member = 응답을_회원으로_변환한다(loginResponse.getMember());

InventoryProduct inventoryProduct = SELECTED_INVENTORY_PRODUCT.생성(member, product);
InventoryProduct savedInventoryProduct = 인벤토리에_장비를_추가한다(inventoryProduct);
Copy link
Collaborator

Choose a reason for hiding this comment

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

사용되지 않는 변수는 없애주는 건 어떨까요?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

좋네요!

@Youngyoon-1 Youngyoon-1 changed the base branch from release2 to release August 2, 2022 07:46
yh20studio and others added 2 commits August 2, 2022 21:25
Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
refactor: 회원 검색 시 대표 장비와 함께 조회되도록 수정
@yh20studio yh20studio force-pushed the bugfix/be/profile-product-with-category branch from 69e84a4 to 25b8ed1 Compare August 2, 2022 12:25
@github-actions
Copy link

github-actions bot commented Aug 2, 2022

Test Results

  35 files  ±0    35 suites  ±0   8s ⏱️ -2s
185 tests ±0  185 ✔️ ±0  0 💤 ±0  0 ±0 
188 runs  ±0  188 ✔️ ±0  0 💤 ±0  0 ±0 

Results for commit 1a39046. ± Comparison against base commit 00f579f.

This pull request removes 1 and adds 1 tests. Note that renamed tests count towards both.
com.woowacourse.f12.application.inventoryproduct.InventoryProductServiceTest ‑ 수정하려는_장비_갯수와_실제_등록된_대표_장비_갯수와_일치하지_않으면_예외를_반환한다()
com.woowacourse.f12.application.inventoryproduct.InventoryProductServiceTest ‑ 수정하려는_장비_개수와_실제_등록된_대표_장비_개수와_일치하지_않으면_예외를_반환한다()

♻️ This comment has been updated with latest results.

yh20studio and others added 2 commits August 2, 2022 21:58
* refactor: InventoryProductRepository 벌크 업데이트 하는 메서드 시그니처 변경

* test: InventoryProductRepository id 값을 지정하지않고 저장하도록 변경

* refactor: exception 메서드 시그니처 변경
# Conflicts:
#	backend/src/main/java/com/woowacourse/f12/application/inventoryproduct/InventoryProductService.java
#	backend/src/main/java/com/woowacourse/f12/domain/inventoryproduct/InventoryProductRepository.java
#	backend/src/main/java/com/woowacourse/f12/domain/member/Member.java
#	backend/src/main/java/com/woowacourse/f12/dto/response/member/MemberWithProfileProductResponse.java
#	backend/src/main/java/com/woowacourse/f12/exception/badrequest/InvalidProfileProductException.java
#	backend/src/test/java/com/woowacourse/f12/acceptance/InventoryProductAcceptanceTest.java
#	backend/src/test/java/com/woowacourse/f12/acceptance/MemberAcceptanceTest.java
#	backend/src/test/java/com/woowacourse/f12/application/inventoryproduct/InventoryProductServiceTest.java
#	backend/src/test/java/com/woowacourse/f12/domain/inventoryproduct/InventoryProductRepositoryTest.java
#	backend/src/test/java/com/woowacourse/f12/presentation/inventoryproduct/InventoryProductControllerTest.java
@yh20studio yh20studio merged commit ccc129b into release Aug 2, 2022
@yh20studio yh20studio deleted the bugfix/be/profile-product-with-category branch August 2, 2022 15:18
jswith added a commit that referenced this pull request Aug 3, 2022
* [FE] 통계 그래프 토글 버튼 수정 요청을 반영 (#357)

style: BarGraph에 제목을 추가한다.

* [Feature/BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#330)

* refactor: 대표장비 업데이트 로직 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#329)

refactor: 회원 검색 시 대표 장비와 함께 조회되도록 수정

* [BE] 회원 검색 시 대표장비만 조회되도록 수정 코드 리뷰 피드백 반영 (#356)

refactor: 코드 리뷰 피드백 반영

Co-authored-by: yh20studio(tiki) <[email protected]>
Co-authored-by: hamcheeseburger <[email protected]>

* [BugFix/BE] 대표장비 업데이트 로직 수정 (#326)

* refactor: 대표장비 업데이트 로직 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#329)

refactor: 회원 검색 시 대표 장비와 함께 조회되도록 수정

* [BE] 대표장비 업데이트 로직 수정 피드백을 반영 (#359)

* refactor: InventoryProductRepository 벌크 업데이트 하는 메서드 시그니처 변경

* test: InventoryProductRepository id 값을 지정하지않고 저장하도록 변경

* refactor: exception 메서드 시그니처 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: Dongjue Yang <[email protected]>

* [Feature/BE] 로깅 구현 (#351)

[BE] 로깅 구현 (#350)

* chore: log4j2 관련 의존성 추가

* feat: 프로필 별 log4j2 환경 설정 구현

* feat: 예외에 대한 로그 추가

* feat: API 요청 응답에 대한 로그 구현

* refactor: 프로필 별 yaml 파일 submodule import

* fix: 통계 UI 관련 테스트 수정 및 무한 스크롤 테스트 수정

Co-authored-by: Dongjue Yang <[email protected]>
Co-authored-by: yh20studio(tiki) <[email protected]>
Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: tiki <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: Yo Wook Kim <[email protected]>
hamcheeseburger added a commit that referenced this pull request Aug 4, 2022
* [Feature, FE] 스프린트2 버퍼 적용 (#226)

* chore: 웹팩 설정 파일 환경에 따라 분리 처리

Co-authored-by: Youngmin Hong <[email protected]>

* chore: 웹팩 설정에 hash를 fullhash로 변경

Co-authored-by: Youngmin Hong <[email protected]>

* chore: 절대경로 누락 부분 적용

Co-authored-by: Youngmin Hong <[email protected]>

* chore: 환경에 따라서 github client id가 변경되도록 설정

Co-authored-by: Youngmin Hong <[email protected]>

* chore: favicon이 webpack으로 함께 bundle 되도록 설정

Co-authored-by: Youngmin Hong <[email protected]>

* feat: API 오류 처리 구현

Co-authored-by: Youngmin Hong <[email protected]>

* style: 추가정보 입력 클릭 시 버튼 스타일 방식 수정

Co-authored-by: Youngmin Hong <[email protected]>

* feat: 추가정보 입력 API 연결 구현

Co-authored-by: Youngmin Hong <[email protected]>

* chore: lintignore 파일의 eol 누락 적용

Co-authored-by: Youngmin Hong <[email protected]>

* [FE] 모킹 데이터에서 발생하는 에러를 수정 (#243)

* fix: 리뷰 카드에서 사용자 아이디가 보이지 않는 문제를 수정한다.

* fix: 모킹 데이터에서 발생하는 타입스크립트 에러를 수정한다.

* [Feature, BE] auth 설정 파일 서브모듈 적용  (#244)

[BE] auth 설정 파일 서브모듈 적용 (#215)

feat: auth 설정 파일 서브모듈 적용

Co-authored-by: Jihoon Oh <[email protected]>

* [BugFix] 인기 많은 상품 페이지에 존재하는 새로고침 오류 수정 (#252)

fix: 인기 많은 상품 페이지에 존재하는 새로고침 오류 수정

* [Feature, FE] 위시리스트 추가 버튼 구현 (#262)

[FE] 위시리스트 추가 버튼 컴포넌트 구현 (#261)

feat: WishButton 컴포넌트 구현

* [Feature/BE] h2 데이터베이스에 관련된 설정을 서브모듈로 분리 (#270)

* [BE] h2 설정 파일 서브모듈 적용 (#265)

* [BE] 서브모듈로 분리한 h2 설정 파일 ignore (#269)

feat: gitignore에 application-h2.yml 추가

* [Feature/BE] 제품에 카테고리를 추가 (#258)

* [BE] 키보드 관련 URI 및 클래스 이름을 제품 관련 내용으로 수정 (#220)

* refactor: Keyboard 관련 repository, service, controller, URL을 Product로 수정

* refactor: Keyboard 도메인 클래스 이름 변경 및 table 연결 정보 변경

* [BE] 상품을 카테고리로 목록 조회하는 기능을 구현 (#224)

* feat: ProductFixture 구현

* feat: Product 엔티티에 Category 추가 및 ProductRepository에 카테고리로 조회 기능 추가

* feat: 카테고리 기준으로 Product 목록 조회하는 Service 기능 추가

* feat: 카테고리 기준으로 Product 목록 조회하는 API 구현

* docs: Product 카테고리별 조회 API 문서화

* style: 코드 포맷팅

* refactor: final 키워드 제거

* feat: 카테고리가 잘못 입력됐을 경우 BAD REQUEST 응답하는 기능 구현

* [BE] 열거형을 분리하고 DTO에 카테고리 추가 (#256)

* refactor: keyboard 키워드 product 혹은 items로 수정

* feat: 카테고리 열거형 뷰와 분리

* feat: 제품 카테고리별 조회 컨트롤러 구현

* feat: 제품 목록 조회 service 구현

* docs: 상품 목록 조회, 인벤토리 목록 조회 API 문서 작성

* feat: 상품 목록 조회, 인벤토리 목록 조회 API 구현

* feat: 카테고리 사용자 정의 예외 처리

* test: 중복된 테스트 제거

* refactor: 필요하지 않은 상수 제거

* [BE] 제품 카테고리 속성 추가 피드백 반영 (#276)

* refactor: final 키워드 추가

* refactor: InventoryProduct Product JoinColumn 수정

* refactor: Category 세미콜론 추가 및 CategoryConstant 수정

* refactor: GlobalExceptionHandler 잘못된 메서드 이름 수정

* refactor: keyboardId productId로 수정

* refactor: 개행 추가

* refactor: Rest-docs keyboard 키워드 수정

* test: CategoryConstantTest 수정

* test: CustomPageableArgumentResolverTest uri 카멜케이스로 수정

* test: ProductControllerTest uri 카멜케이스로 수정

* refactor: ProductResponse 메서드 변경 반영

* test: ProductAcceptanceTest 단일 제품 조회 검증 수정

* refactor: CategoryConstant static import 적용

* [Feature/FE] Private Route 처리 및 카테고리 페이지 구현 (#272)

* [FE] Private Route 컴포넌트 구현 및 적용 (#250)

* feat: private route 컴포넌트 구현 및 회원/비회원 사용자 구분 적용

* feat: login 응답에 registerCompleted 필드 추가

* feat: 추가정보 입력 여부 검증 후 route 처리

로그인 여부의 즉시 반영을 위해서 flushSync를 사용하도록 설정함에 유의

* [FE] 카테고리 상단 메뉴 구현 (#253)

* feat: 카테고리 선택 메뉴바 구현

* feat: toggle 시에 애니메이션 적용

* [FE] 카테고리 별 상품 목록 조회 페이지 구현 및 API 설정 (#255)

* feat: 상품 카테고리별 페이지 구현 및 API 요청 수정

* refactor: 카테고리 링크 리팩토링

* refactor: get many 훅의 params 처리 방식 수정

* feat: 카테고리 페이지에 따라 제목 변경 UI 구현 (#271)

* refactor: flushSync를 제거하고 로그인 시 추가정보 페이지로 이동 구현

* refactor: protected Route의 일부 네이밍 변경

* [Feature/BE] 사용자 검색 기능 구현 (#267)

* [BE] 사용자와 인벤토리에 연관관계를 설정 (#222)

* refactor: InventoryProduct에 Member 직접 참조

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: Member에 InventoryProduct 직접 참조

Co-authored-by: hamcheeseburger <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>

* [BE] 사용자 검색 기능 구현 (#266)

* feat: Querydsl 설정

Co-authored-by: hamcheeseburger <[email protected]>

* feat: 사용자 검색 기능 Repository method querydsl로 구현

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: presentation에서 사용하는 Enum 분리

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: null 체크에 대한 메서드 변경

Co-authored-by: hamcheeseburger <[email protected]>

* feat: 사용자 검색 기능 Service 구현

Co-authored-by: hamcheeseburger <[email protected]>

* feat: Enum 바인딩 Converter 구현

Co-authored-by: hamcheeseburger <[email protected]>

* test: 쿼리 바인딩 로그 설정

Co-authored-by: hamcheeseburger <[email protected]>

* feat: 사용자 검색 기능 API 구현

Co-authored-by: hamcheeseburger <[email protected]>

* docs: 사용자 검색 기능 API 문서화

Co-authored-by: hamcheeseburger <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>

* [BE] 회원 검색 기능 피드백 반영 (#277)

* chore: queryDsl gradle 설정 방법 변경

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: Enum 기본 생성자 제거

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: Member 관련 response Dto에 presentation Enum 활용

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: LoginMemberResponse toMember 제거

Co-authored-by: hamcheeseburger <[email protected]>

* test: 의미있는 변수명으로 변경

Co-authored-by: hamcheeseburger <[email protected]>

* test: KeyboardFixtures static import 적용

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: Presentation Enum name 변경 및 static import 적용

Co-authored-by: hamcheeseburger <[email protected]>

* test: MemberFixtures 메서드 이름 변경

Co-authored-by: hamcheeseburger <[email protected]>

* test: MemberControllerTest 불필요한 convert import 삭제

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: MemberRepositoryCustom 메서드 이름 변경

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: findFirst 대신 findAny 사용

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: Presentation Enum에서 메서드 명 변경

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: MemberPageResponse 기본 생성자의 접근 제어자 변경

Co-authored-by: hamcheeseburger <[email protected]>

* test: 적합한 테스트 메소드명으로 변경

Co-authored-by: hamcheeseburger <[email protected]>

* test: 적절한 변수명 사용

Co-authored-by: hamcheeseburger <[email protected]>

* test: containsOnly 적용

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: 불필요한 개행 제거

Co-authored-by: hamcheeseburger <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>

* refactor: conflict 해결

Co-authored-by: hamcheeseburger <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>

* [BugFix] Spring REST Docs가 생기지 않는 버그 수정완료 (#284)

chore: Spring REST Docs gradle 설정 변경

* [Feature/FE] 검색 기능에 필요한 UI 컴포넌트를 구현 (#288)

* [FE] 검색바 컴포넌트 구현 (#254)

feat: 검색바 컴포넌트 UI 구현

* [FE] 검색 필터 컴포넌트 구현  (#259)

* feat: ChipFilter 컴포넌트 구현

* feat: SearchFilter 컴포넌트 구현

* [FE] 유저 프로필 카드 컴포넌트를 구현 (#287)

* refactor: Chip 컴포넌트를 재사용가능하도록 수정

* feat: ProfileCard UI 구현

* style: ProfileCard css 수정

* style: ProfileCard 크기 조정

* feat: ProfileCard Carousel 구현

* refactor: 불필요한 console.log를 제거한다.

* refactor: ProfileCard의 padding을 조정한다.

* refactor: 프로필 사진 영역에 box-shadow를 추가한다.

* refactor: InventoryItem에 좌우 padding을 추가

* refactor: Carousel에서 사용하는 좌표 차이 값을 상수로 표현

* [Bugfix] jar 파일 생성 시 RESTDocs가 포함되지 않는 오류 수정 (#289)

* chore: build.gralde task 순서 변경

* chore: build.gradle copy task 변경

* chore: copySubmodule 순서 변경

* chore: copySubmodule 실행 강제

* chore: copyDocument 위치를 변경

* chore: copyDocument 파일 위치 오류 수정

* chore: build.gradle에서 불필요한 named task 제거

* [Feature/FE] 사용자 통계 컴포넌트 UI 구현 (#295)

* [FE] 유저 통계 컴포넌트 구현 (#294)

feat: BarGraph 컴포넌트 UI 구현

* fix: 파일 경로 오류 수정

* [Feature/FE] API Loading 및 Error 처리 방식 통일, UI 구현 (#302)

* [FE] API 요청의 Loading 상태 방식을 통일, Loading UI 구현 (#290)

* refactor: useGetOne 훅에서 로딩 방식 통일 및 리팩토링

inventory context 제거 후 프로필 페이지 컴포넌트 구성 자체를 변경

* refactor: useGetMany 훅에서 로딩 방식 통일 및 리팩토링

* feat: 로딩 UI 라이브러리 설치 및 UI 컴포넌트 적용

* [FE] API 요청의 Error 처리 통일, Error UI 구현 (#299)

* feat: useGetMany에 대한 오류 처리 구현

* feat: useGetOne에 대한 오류 처리 구현

* feat: 나머지 API 훅에 대한 오류 처리 구현

* [FE] Loading 및 Error UI 스타일 수정 (#301)

* style: 로딩으로 인해서 발생하는 layout shift 최소화 및 로딩 중앙 배치

* fix: 무한 스크롤에서 오류 이미지 표시 관련 로직 수정

* refactor: 불필요한 fragment 제거

* fix: 리뷰 추가 로딩 시 로딩 바 위치 수정

* feat: 404 페이지 구현

* [Feature/BE] 특정 제품에 대한 사용자 통계 기능 구현 (#293)

* [BE] fake github api를 리팩토링 (#281)

test: GitHubProfileFixtures 생성 및 FakeGitHubApiController 리팩토링

Co-authored-by: hamcheeseburger <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>

Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 제품에 대한 사용자 통계 기능을 구현 (#292)

* [BugFix] Spring REST Docs가 생기지 않는 버그 수정완료 (#284)

chore: Spring REST Docs gradle 설정 변경

* feat: 특정 제품의 사용자 연차의 총개수를 반환하는 Repository 메서드 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* feat: 특정 제품의 사용자 직군의 총개수를 반환하는 Repository 메서드 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: 특정 제품의 사용자 연차와 직군의 총개수를 반환하는 Repository 패키지 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: KeyboardNotFoundException 이름 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* feat: 제품 사용자 통계 조회 service 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* feat: 제품 사용자 통계 조회 API 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* docs: 제품 사용자 통계 조회 API 문서화

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: 특정 제품 사용자 통계 서비스 로직 리팩토링

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* docs: 특정 제품 사용자 통계 서비스 API 응답 값 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [Feature/FE] 검색 기능에 필요한 UI 컴포넌트를 구현 (#288)

* [FE] 검색바 컴포넌트 구현 (#254)

feat: 검색바 컴포넌트 UI 구현

* [FE] 검색 필터 컴포넌트 구현  (#259)

* feat: ChipFilter 컴포넌트 구현

* feat: SearchFilter 컴포넌트 구현

* [FE] 유저 프로필 카드 컴포넌트를 구현 (#287)

* refactor: Chip 컴포넌트를 재사용가능하도록 수정

* feat: ProfileCard UI 구현

* style: ProfileCard css 수정

* style: ProfileCard 크기 조정

* feat: ProfileCard Carousel 구현

* refactor: 불필요한 console.log를 제거한다.

* refactor: ProfileCard의 padding을 조정한다.

* refactor: 프로필 사진 영역에 box-shadow를 추가한다.

* refactor: InventoryItem에 좌우 padding을 추가

* refactor: Carousel에서 사용하는 좌표 차이 값을 상수로 표현

* [Bugfix] jar 파일 생성 시 RESTDocs가 포함되지 않는 오류 수정 (#289)

* chore: build.gralde task 순서 변경

* chore: build.gradle copy task 변경

* chore: copySubmodule 순서 변경

* chore: copySubmodule 실행 강제

* chore: copyDocument 위치를 변경

* chore: copyDocument 파일 위치 오류 수정

* chore: build.gradle에서 불필요한 named task 제거

* [BE] 사용자 통계 기능 피드백을 반영 (#313)

* refactor: MemberRepositoryCustomImpl 알맞은 메
서드 사용

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: Enum Raw 타입 interface 타입으로 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: ProductService 메서드 순서 변경 및 불필요한 개행 제거

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: querydsl 구현 repository에서 Q-class static import 적용 및 메서드 체이닝 적용

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: controller status ok일 때 반환 값을 지정하는 방식 통일화

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: Youngmin Hong <[email protected]>
Co-authored-by: Jihoon Oh <[email protected]>

* [�Feature/BE] 예외 상황시 예외 코드를 반환 (#298)

* [BE] 예외 상황시 예외 코드를 반환 (#297)

* refactor: 예외 응답값에 예외 코드 추가

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: 예외 클래스 명 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [Feature/FE] 사용자 통계 컴포넌트 UI 구현 (#295)

* [FE] 유저 통계 컴포넌트 구현 (#294)

feat: BarGraph 컴포넌트 UI 구현

* fix: 파일 경로 오류 수정

* [Feature/FE] API Loading 및 Error 처리 방식 통일, UI 구현 (#302)

* [FE] API 요청의 Loading 상태 방식을 통일, Loading UI 구현 (#290)

* refactor: useGetOne 훅에서 로딩 방식 통일 및 리팩토링

inventory context 제거 후 프로필 페이지 컴포넌트 구성 자체를 변경

* refactor: useGetMany 훅에서 로딩 방식 통일 및 리팩토링

* feat: 로딩 UI 라이브러리 설치 및 UI 컴포넌트 적용

* [FE] API 요청의 Error 처리 통일, Error UI 구현 (#299)

* feat: useGetMany에 대한 오류 처리 구현

* feat: useGetOne에 대한 오류 처리 구현

* feat: 나머지 API 훅에 대한 오류 처리 구현

* [FE] Loading 및 Error UI 스타일 수정 (#301)

* style: 로딩으로 인해서 발생하는 layout shift 최소화 및 로딩 중앙 배치

* fix: 무한 스크롤에서 오류 이미지 표시 관련 로직 수정

* refactor: 불필요한 fragment 제거

* fix: 리뷰 추가 로딩 시 로딩 바 위치 수정

* feat: 404 페이지 구현

* [Feature/BE] 특정 제품에 대한 사용자 통계 기능 구현 (#293)

* [BE] fake github api를 리팩토링 (#281)

test: GitHubProfileFixtures 생성 및 FakeGitHubApiController 리팩토링

Co-authored-by: hamcheeseburger <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>

Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 제품에 대한 사용자 통계 기능을 구현 (#292)

* [BugFix] Spring REST Docs가 생기지 않는 버그 수정완료 (#284)

chore: Spring REST Docs gradle 설정 변경

* feat: 특정 제품의 사용자 연차의 총개수를 반환하는 Repository 메서드 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* feat: 특정 제품의 사용자 직군의 총개수를 반환하는 Repository 메서드 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: 특정 제품의 사용자 연차와 직군의 총개수를 반환하는 Repository 패키지 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: KeyboardNotFoundException 이름 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* feat: 제품 사용자 통계 조회 service 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* feat: 제품 사용자 통계 조회 API 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* docs: 제품 사용자 통계 조회 API 문서화

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: 특정 제품 사용자 통계 서비스 로직 리팩토링

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* docs: 특정 제품 사용자 통계 서비스 API 응답 값 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [Feature/FE] 검색 기능에 필요한 UI 컴포넌트를 구현 (#288)

* [FE] 검색바 컴포넌트 구현 (#254)

feat: 검색바 컴포넌트 UI 구현

* [FE] 검색 필터 컴포넌트 구현  (#259)

* feat: ChipFilter 컴포넌트 구현

* feat: SearchFilter 컴포넌트 구현

* [FE] 유저 프로필 카드 컴포넌트를 구현 (#287)

* refactor: Chip 컴포넌트를 재사용가능하도록 수정

* feat: ProfileCard UI 구현

* style: ProfileCard css 수정

* style: ProfileCard 크기 조정

* feat: ProfileCard Carousel 구현

* refactor: 불필요한 console.log를 제거한다.

* refactor: ProfileCard의 padding을 조정한다.

* refactor: 프로필 사진 영역에 box-shadow를 추가한다.

* refactor: InventoryItem에 좌우 padding을 추가

* refactor: Carousel에서 사용하는 좌표 차이 값을 상수로 표현

* [Bugfix] jar 파일 생성 시 RESTDocs가 포함되지 않는 오류 수정 (#289)

* chore: build.gralde task 순서 변경

* chore: build.gradle copy task 변경

* chore: copySubmodule 순서 변경

* chore: copySubmodule 실행 강제

* chore: copyDocument 위치를 변경

* chore: copyDocument 파일 위치 오류 수정

* chore: build.gradle에서 불필요한 named task 제거

* [BE] 사용자 통계 기능 피드백을 반영 (#313)

* refactor: MemberRepositoryCustomImpl 알맞은 메
서드 사용

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: Enum Raw 타입 interface 타입으로 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: ProductService 메서드 순서 변경 및 불필요한 개행 제거

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: querydsl 구현 repository에서 Q-class static import 적용 및 메서드 체이닝 적용

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: controller status ok일 때 반환 값을 지정하는 방식 통일화

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: Youngmin Hong <[email protected]>
Co-authored-by: Jihoon Oh <[email protected]>

* [BE] 예외 상황시 예외 코드 반환 피드백 반영 (#315)

* refactor: CustomException 생성자 매개변수 순서 수정 및 getter 어노테이션 사용, ErrorCode 잘못된 코드 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* refactor: JobTypeConstant, CareerLevelConstant 패키지 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: Youngmin Hong <[email protected]>
Co-authored-by: Yo Wook Kim <[email protected]>
Co-authored-by: Jihoon Oh <[email protected]>

* [Feature/FE] 사용자 통계 기능 구현 (#310)

[FE] 사용자 통계 기능 구현 (#309)

* feat: 사용자 통계 기능 구현

* fix: BarGraph storybook 에러 수정

* [Feature/FE] 사용자 검색 기능 구현 (#321)

[FE] 사용자 검색 기능 구현 (#320)

* feat: 프로필 검색 페이지 UI 구현

* feat: 프로필 검색 기능 구현

* [Feature/FE] 모달 컴포넌트 구현 및 alert, confirm에 적용 (#308)

* [FE] 모달 UI 구현 (#305)

feat: 모달 UI 구현 및 스토리 작성

* [FE] 모달로 window.alert 및 window.confirm 대체 (#307)

* feat: modal 렌더링 컨텍스트 구현

* feat: 모달 스타일 수정

* chore: 이벤트 핸들러에서 promise 사용할 수 있도록 lint 설정 변경

* feat: useModal 훅 구현 및 적용

* [BugFix/BE] 페이지 조회 시 중복되는 아이템 조회되는 이슈 해결 (#318)

* refactor: 기본 정렬 기준 적용

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 페이지 조회 시 중복되는 아이템 조회되는 이슈 피드백 반영완료 (#332)

test: 제품을 조회할 때, 정렬 조건으로 id에 대한 역순을 적용하더라도, 정렬이 되는지 확인하는 test 추가

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [Feature/BE] GitHub Actions workflow에 테스트 리포트 추가 (#334)

* [BE] GitHub Actions workflow에 테스트 리포트 추가 (#333)

chore: GitHub Actions workflow에 테스트 리포트 추가

* [BE] backend workflow 파일 내부 경로 설정 통일 (#336)

chore: backend workflow 파일 내부 경로 설정 통일

* [Bugfix/BE] 테스트 리포트 파일 경로 수정 (#338)

chore: 테스트 리포트 파일 경로 수정

* [Feature/BE] 서브모듈 적용 방식을 프로필 include에서 import로 변경 (#346)

[BE] 서브모듈 적용 방식을 프로필 include에서 import로 변경 (#345)

chore: 서브모듈 적용 방식을 프로필 include에서 import로 변경

* [Bugfix/FE] 프론트엔드 버그 이슈 해결 (#347)

* fix: 대표장비 선택창 토글 수정 및 요청 처리 케이스 수정 (#197, #199)

* fix: API 명세에 맞게 추가정보 입력 키워드 수정

* fix: API 명세에 맞게 useInventory 훅의 응답 처리 키 값 수정(#273)

* fix: 토큰 오류 응답이 발생하는 경우 자동으로 로그아웃 하도록 수정 (#286)

* fix: 데이터 없는 경우 무한 로딩 수정 및 데이터 없음 컴포넌트 추가

* [Feature/FE] 테스트 전략을 수립하고 자동화 테스트 코드를 추가  (#349)

* chore: cypress 테스트 환경설정

Co-authored-by: Yo Wook Kim <[email protected]>

* chore: github action yml 파일 작성

* fix: 스토리북 에러 수정

* chore: chromatic 설치

* chore: cypress test 파일 생성

* chore: cypress 설정 마무리

* fix: 불필요한 jpg 파일 제거 및 코드 반영

* refactor: 테스트와 접근성을 위해서 태그 변경 및 속성 추가

* chore: cypress 환경에서는 msw가 실행되지 않도록 설정

* test: 홈 페이지에 대한 E2E 테스트 작성

* chore: 프론트엔드 CI 트리거 설정

* fix: 프론트 CI 파일 문법 오류 수정

* fix: cypress 타입 오류 해결

* test: 홈 페이지 테스트 리팩토링

* fix: 테스트에서 only 제거

* test: 카테고리, 상품 상세 페이지 E2E 테스트코드 작성

Co-authored-by: HyeonJi Yoo <[email protected]>
Co-authored-by: Dongjue Yang <[email protected]>

* fix: e2e 테스트 코드 에러 수정

* fix: 실패하는 테스트 코드를 수정

Co-authored-by: Yo Wook Kim <[email protected]>
Co-authored-by: HyeonJi Yoo <[email protected]>
Co-authored-by: Dongjue Yang <[email protected]>

* [Feature/BE] 같은 카테고리에 대해서는 대표장비를 1개만 등록할 수 있는 기능 수정 (#328)

* [BE] 같은 카테고리에 대해서는 대표장비를 1개만 등록할 수 있는 기능 수정 (#327)

* refactor: 대표장비 업데이트 로직 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* feat: 같은 카테고리에 대해서는 대표장비를 1개만 등록할 수 있는 service 기능 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* test: 같은 카테고리에 대해서는 대표장비를 1개만 등록할 수 있는 기능 test 추가

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* test: 소프트웨어 카테고리에 대해서는 대표장비를 등록할 수 없도록 하는 service 기능 구현

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 같은 카테고리에 대해서는 대표장비를 1개만 등록할 수 있는 기능 피드백 반영 (#355)

* refactor: 소프트웨어 카테고리 미포함 검증 메소드명 변경

* refactor: 대표장비에 대한 카테고리 중복 예외 클래스명 변경

* refactor: 대표장비로 등록할 수 없는 카테고리에 대한 예외 클래스명 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: HyeonJi Yoo <[email protected]>

* [Feature/BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#330)

* refactor: 대표장비 업데이트 로직 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#329)

refactor: 회원 검색 시 대표 장비와 함께 조회되도록 수정

* [BE] 회원 검색 시 대표장비만 조회되도록 수정 코드 리뷰 피드백 반영 (#356)

refactor: 코드 리뷰 피드백 반영

Co-authored-by: yh20studio(tiki) <[email protected]>
Co-authored-by: hamcheeseburger <[email protected]>

* [BugFix/BE] 대표장비 업데이트 로직 수정 (#326)

* refactor: 대표장비 업데이트 로직 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#329)

refactor: 회원 검색 시 대표 장비와 함께 조회되도록 수정

* [BE] 대표장비 업데이트 로직 수정 피드백을 반영 (#359)

* refactor: InventoryProductRepository 벌크 업데이트 하는 메서드 시그니처 변경

* test: InventoryProductRepository id 값을 지정하지않고 저장하도록 변경

* refactor: exception 메서드 시그니처 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: Dongjue Yang <[email protected]>

* [Feature/BE] 로깅 구현 (#351)

[BE] 로깅 구현 (#350)

* chore: log4j2 관련 의존성 추가

* feat: 프로필 별 log4j2 환경 설정 구현

* feat: 예외에 대한 로그 추가

* feat: API 요청 응답에 대한 로그 구현

* refactor: 프로필 별 yaml 파일 submodule import

* [BE] main, release, local 환경에 따라 다른 github oauth app과 데이터베이스에 연결하도록 설정 (#362)

[BE] main, release, local 환경에 따라 다른 github oauth app과 데이터베이스에 연결하도록 설정 (#361)

chore: main, release, local 환경에 따라 다른 github oauth app과 데이터베이스에 연결하도록 설정

* [Bugfix/BE] mysql 드라이버 설정 (#365)

[BE] mysql 드라이버 설정 (#364)

fix: mysql-connector-java 의존성 추가

* [Feature/FE] 통계 그래프 토글 버튼 수정 요청을 반영 (#358)

* [FE] 통계 그래프 토글 버튼 수정 요청을 반영 (#357)

style: BarGraph에 제목을 추가한다.

* [Feature/BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#330)

* refactor: 대표장비 업데이트 로직 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#329)

refactor: 회원 검색 시 대표 장비와 함께 조회되도록 수정

* [BE] 회원 검색 시 대표장비만 조회되도록 수정 코드 리뷰 피드백 반영 (#356)

refactor: 코드 리뷰 피드백 반영

Co-authored-by: yh20studio(tiki) <[email protected]>
Co-authored-by: hamcheeseburger <[email protected]>

* [BugFix/BE] 대표장비 업데이트 로직 수정 (#326)

* refactor: 대표장비 업데이트 로직 수정

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>

* [BE] 회원을 검색할 때 대표장비가 아닌 다른 제품들도 나오는 오류 수정 (#329)

refactor: 회원 검색 시 대표 장비와 함께 조회되도록 수정

* [BE] 대표장비 업데이트 로직 수정 피드백을 반영 (#359)

* refactor: InventoryProductRepository 벌크 업데이트 하는 메서드 시그니처 변경

* test: InventoryProductRepository id 값을 지정하지않고 저장하도록 변경

* refactor: exception 메서드 시그니처 변경

Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: Dongjue Yang <[email protected]>

* [Feature/BE] 로깅 구현 (#351)

[BE] 로깅 구현 (#350)

* chore: log4j2 관련 의존성 추가

* feat: 프로필 별 log4j2 환경 설정 구현

* feat: 예외에 대한 로그 추가

* feat: API 요청 응답에 대한 로그 구현

* refactor: 프로필 별 yaml 파일 submodule import

* fix: 통계 UI 관련 테스트 수정 및 무한 스크롤 테스트 수정

Co-authored-by: Dongjue Yang <[email protected]>
Co-authored-by: yh20studio(tiki) <[email protected]>
Co-authored-by: hamcheeseburger <[email protected]>
Co-authored-by: tiki <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: Yo Wook Kim <[email protected]>

* chore: 빌드 시 필수 패키지만 설치할 수 있도록 패키지 설정 변경 (#367)

* [Feature/FE] 프로필 검색 기능 보완 (#373)

[FE] 프로필 검색 기능 보완 (#372)

feat: 프로필 검색 기능 보완

* [Feature/FE] 프로필 기능을 보완 (#376)

* [FE] 프로필 기능을 보완 (#375)

* fix: 프로필 페이지에서 chip이 보이도록 수정

* feat: 프로필 페이지 구현

Co-authored-by: Yo Wook Kim <[email protected]>

* feat: MSW 실행

Co-authored-by: Yo Wook Kim <[email protected]>

* fix: 스토리북 오류 수정

Co-authored-by: Yo Wook Kim <[email protected]>

* [Feature/FE] 다른 사람의 프로필 페이지 보기 기능 (#377)

feat: 다른 사람의 프로필 페이지 보기 기능

Co-authored-by: Yo Wook Kim <[email protected]>

Co-authored-by: Yo Wook Kim <[email protected]>

* [Feature/FE] 통계 그래프 색상 수정 (#378)

style: 통계 그래프 색상 수정

* [Feature/FE] package.json 정보 수정 (#379)

chore: package.json 정보 수정

* [BugFix/BE] 회원 정보를 조회할 때 id에 대한 역순으로 정렬이 안되는 오류 수정 (#369)

* [BE] 회원 정보를 조회할 때 id에 대한 역순으로 정렬이 안되는 오류 수정 (#368)

* fix: 회원정보 조회 시 기본 정렬 기준이 적용되도록 수정

* refactor: 접근제어자 수정

* refactor: 불필요한 개행 제거

* [Chore/FE] 빌드 환경별로 소셜 로그인 링크 분기 설정 (#380)

chore: 빌드 환경별로 소셜 로그인 링크 분기 설정

* [Bugfix/FE] 리뷰 작성 최대 길이 검증 수정 (#382)

fix: 리뷰 작성 최대 길이 검증 수정

* [Bugfix/FE] 사용자 통계 그래프 버그 수정 (#384)

fix: 통계 수치 반올림 처리

* [Bugfix/FE] 프로필 페이지에 섹션 제목 및 설명 추가 (#385)

style: 프로필 페이지에 섹션 제목 및 설명 추가

* [Bugfix] 원격 레포지토리의 submodule 버전이 최신화되지 않는 오류 수정 (#387)

chore: submodule gitignore 제거

Co-authored-by: Yo Wook Kim <[email protected]>
Co-authored-by: Youngmin Hong <[email protected]>
Co-authored-by: Youngmin Hong <[email protected]>
Co-authored-by: Youngyoon-1 <[email protected]>
Co-authored-by: Jihoon Oh <[email protected]>
Co-authored-by: Dongjue Yang <[email protected]>
Co-authored-by: tiki <[email protected]>
Co-authored-by: yangdongjue5510 <[email protected]>
Co-authored-by: HyeonJi Yoo <[email protected]>
Co-authored-by: Dongjue Yang <[email protected]>
Co-authored-by: yh20studio(tiki) <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💼 inventory 등록된 장비와 대표 장비 🖥️ backend 백엔드 🔧 fix_issue 버그 수정
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BE] 대표장비 업데이트 로직을 수정한다
5 participants