Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* fix: 카페 등록 API 수정 (#115) * [BE] fix: Sample Coupon API max-stamp-count 파라미터 RequestParam으로 변경 (#154) * style: Coupon Status USING -> ACCUMULATING으로 변경 (#156) * [BE] refactor: 임시 고객 생성, 전화번호로 고객 구현 API 리뷰 반영 및 리팩터링 (#124) * refactor : 코드 리뷰 반영 후 리팩토링 - Service -> Controller 간 Dto 생성 - 임시 고객 전화번호 중복 가입 시 예외 처리 메서드 분리 - CustomerBadRequestException 객체 생성 - CustomerDataInitializer 추가 - Customer API 확인용 .http 파일 추가 * feat : CustomerServiceTest 추가 * feat: 불필요한 클래스 삭제 * feat: 리뷰 반영 * [FE] refactor: enter로직 구현, 뒤로가기 추가 (#157) * refactor: enter로직 구현, 뒤로가기 추가 * refactor: phoneNumber 객체 수정 * [BE] refactor: 카페 별 고객 목록 조회, 현재 카페의 스탬프 모으고 있는 고객 쿠폰 조회 리팩터링 (#126) * refactor: 메서드, 변수 네이밍 수정 * refactor: 생성자 어노테이션 활용 * refactor: given when then 주석 추가 * refactor: dto네이밍 수정 * feat: application dto, api dto 분리 * feat: 고객의 쿠폰이 예전 정책의 쿠폰인지 확인한다 * refactor: 불필요한 @JsonFormat제거 * refactor: 메서드 네이밍 수정 --------- Co-authored-by: JunDonghyuk <[email protected]> * [FE] feat: 내 고객 목록 페이지 구현 (#147) * refactor: Form submit 시 새로고침 안되도록 수정 * refactor: SelectBox 외부에서 Key를 쓸수있도록 수정, width 고정 * chore: 정렬 기능 테스트를 위한 mockData 수정 * feat: 내 고객 목록 페이지 정렬, 검색기능 구현 * refactor: SelectBox 수정에 따라 이를 사용하고 있는 ModifyCouponPage 수정 * chore: 불필요한 공백제거 * [FE] feat: 리워드 사용 기능을 구현한다. (#158) * fix: api 명세에 맞게 핸들러 수정 * fix: 라우터 구조 수정 * feat: 리워드 사용 api 로직 구현 * refactor: 스타일 변경 * refactor: return문 축약 * refactor: 구조분해 할당 문법으로 변경 * [FE] feat: 쿠폰 제작 및 변경페이지(템플릿)에서 api 요청 로직을 구현한다. (#160) * feat: 등록 값 유효성 검사 * feat: 이미지 업로드 기능을 props로 결정할 수 있도록 컴포넌트 props 추가 * feat: 템플릿 이미지와 함께 좌표값 이벤트 핸들러에 추가 * feat: 쿠폰 디자인 및 정책 수정 요청 구현 * fix: 타입에러 수정 * [FE] refactor: 스탬프 추가 적립 페이지를 구현한다. (#161) * refactor: 스탬프 적립 페이지 라우팅 * refactor: 모달 -> 페이지 방식으로 변경 * refactor: 라우팅 변경에 따른 사이드바 value 변경 * feat: 쿠폰 선택 페이지 구현 Co-authored-by: 2yunseong <[email protected]> * feat: 스탬프 적립 페이지 구현 * test: mock, handler 수정 * refactor: useEffect 제거 및 해당 로직 useQuery 내부로 이동 * design: SelectCoupon 페이지 레이아웃 변경 * design: EarnStamp 페이지 레이아웃 변경 * feat: 유효기간 날짜 포맷 변경 메서드 추가 * style: console.log 제거 --------- Co-authored-by: 2yunseong <[email protected]> Co-authored-by: 2yunseong <[email protected]> * [BE] feat: backend api uri api prefix 추가 (#153) * fix: 테스트 코드에 /api prefix 추가 (#170) * [BE] feat: 쿠폰 신규 발급 및 스탬프 적립 기능을 구현한다 (#137) * feat: entity생성자 및 copy()작성 * refactor: 오탈자 수정 * feat: coupon신규 발급, 스탬프 적립 서비스 구현 * feat: coupon신규 발급, 스탬프 적립 컨트롤러 구현 * [FE] feat: 2차 데모데이 api 명세를 기반으로 api 모킹 (#138) * feat: 2차 데모데이 api 명세를 기반으로 api 모킹 Co-authored-by: 박정규 <[email protected]> Co-authored-by: 강영민 <[email protected]> * fix: url 오탈자 정정 --------- Co-authored-by: 박정규 <[email protected]> Co-authored-by: 강영민 <[email protected]> * [FE] feat: react-query 보일러 플레이팅 (#140) * chore: react-query 설치 * feat: react-query 보일러 플레이팅 * feat: test CI (Initializer Profile dev로 변경) (#143) * [BE] style: 더미데이터 상수 변경 (#144) * [BE] feat: application-dev 설정 변경 (#145) * style: 더미데이터 상수 변경 * feat: application-dev 설정 변경 * [BE] feat: 더미데이터를 추가한다 (#148) * feat: 카페 추가, 조회 api 수정 * feat: Dummy data 추가 * feat: max-stamp-count 쿼리 파라미터 바인딩 설정 (#149) * [BE] fix: SampleCouponFindRequest 생성자 에러 수정 (#150) * [BE] test: Cafe Coupon Setting 수정 API에 대한 테스트 코드를 작성한다 (#127) * help: Soft Delete가 동작하지 않는 문제 발생 * test: 카페 쿠폰 세팅 변경 API 테스트 코드 작성 * [BE] test: 샘플 쿠폰 조회 API 테스트 코드 작성 (#123) * style: 개행 변경 * style: 클래스 이름 변경 - SampleDataInitializer -> SampleCouponInitializer * refactor: 생성자 변경 * test: SampleCouponFixture 작성 * test: 샘플 쿠폰 조회 API 테스트 코드 작성 * fix: SampleStampCoordinate 저장 로직 순서 변경 * fix: 카페 등록 API 수정 (#115) * [BE] fix: Sample Coupon API max-stamp-count 파라미터 RequestParam으로 변경 (#154) * style: Coupon Status USING -> ACCUMULATING으로 변경 (#156) * [BE] refactor: 임시 고객 생성, 전화번호로 고객 구현 API 리뷰 반영 및 리팩터링 (#124) * refactor : 코드 리뷰 반영 후 리팩토링 - Service -> Controller 간 Dto 생성 - 임시 고객 전화번호 중복 가입 시 예외 처리 메서드 분리 - CustomerBadRequestException 객체 생성 - CustomerDataInitializer 추가 - Customer API 확인용 .http 파일 추가 * feat : CustomerServiceTest 추가 * feat: 불필요한 클래스 삭제 * feat: 리뷰 반영 * [FE] refactor: enter로직 구현, 뒤로가기 추가 (#157) * refactor: enter로직 구현, 뒤로가기 추가 * refactor: phoneNumber 객체 수정 * [BE] refactor: 카페 별 고객 목록 조회, 현재 카페의 스탬프 모으고 있는 고객 쿠폰 조회 리팩터링 (#126) * refactor: 메서드, 변수 네이밍 수정 * refactor: 생성자 어노테이션 활용 * refactor: given when then 주석 추가 * refactor: dto네이밍 수정 * feat: application dto, api dto 분리 * feat: 고객의 쿠폰이 예전 정책의 쿠폰인지 확인한다 * refactor: 불필요한 @JsonFormat제거 * refactor: 메서드 네이밍 수정 --------- Co-authored-by: JunDonghyuk <[email protected]> * [FE] feat: 내 고객 목록 페이지 구현 (#147) * refactor: Form submit 시 새로고침 안되도록 수정 * refactor: SelectBox 외부에서 Key를 쓸수있도록 수정, width 고정 * chore: 정렬 기능 테스트를 위한 mockData 수정 * feat: 내 고객 목록 페이지 정렬, 검색기능 구현 * refactor: SelectBox 수정에 따라 이를 사용하고 있는 ModifyCouponPage 수정 * chore: 불필요한 공백제거 * [FE] feat: 리워드 사용 기능을 구현한다. (#158) * fix: api 명세에 맞게 핸들러 수정 * fix: 라우터 구조 수정 * feat: 리워드 사용 api 로직 구현 * refactor: 스타일 변경 * refactor: return문 축약 * refactor: 구조분해 할당 문법으로 변경 * [FE] feat: 쿠폰 제작 및 변경페이지(템플릿)에서 api 요청 로직을 구현한다. (#160) * feat: 등록 값 유효성 검사 * feat: 이미지 업로드 기능을 props로 결정할 수 있도록 컴포넌트 props 추가 * feat: 템플릿 이미지와 함께 좌표값 이벤트 핸들러에 추가 * feat: 쿠폰 디자인 및 정책 수정 요청 구현 * fix: 타입에러 수정 * [FE] refactor: 스탬프 추가 적립 페이지를 구현한다. (#161) * refactor: 스탬프 적립 페이지 라우팅 * refactor: 모달 -> 페이지 방식으로 변경 * refactor: 라우팅 변경에 따른 사이드바 value 변경 * feat: 쿠폰 선택 페이지 구현 Co-authored-by: 2yunseong <[email protected]> * feat: 스탬프 적립 페이지 구현 * test: mock, handler 수정 * refactor: useEffect 제거 및 해당 로직 useQuery 내부로 이동 * design: SelectCoupon 페이지 레이아웃 변경 * design: EarnStamp 페이지 레이아웃 변경 * feat: 유효기간 날짜 포맷 변경 메서드 추가 * style: console.log 제거 --------- Co-authored-by: 2yunseong <[email protected]> Co-authored-by: 2yunseong <[email protected]> * [BE] feat: backend api uri api prefix 추가 (#153) * fix: 테스트 코드에 /api prefix 추가 (#170) * feat: entity생성자 및 copy()작성 * refactor: 오탈자 수정 * feat: coupon신규 발급, 스탬프 적립 서비스 구현 * feat: coupon신규 발급, 스탬프 적립 컨트롤러 구현 * fix: Merge Conflict 해결 --------- Co-authored-by: 2yunseong <[email protected]> Co-authored-by: 박정규 <[email protected]> Co-authored-by: 강영민 <[email protected]> Co-authored-by: 깃짱 <[email protected]> Co-authored-by: yenawee <[email protected]> Co-authored-by: youngh0 <[email protected]> Co-authored-by: 2yunseong <[email protected]> Co-authored-by: gitchan <[email protected]> * refactor: 공통 URI @RequestMapping으로 분리 * style: 개행 수정 * refactor: Soft Delete 적용 * refactor: Request DTO record로 분리 * [BE] test: CI/CD 파이프라인에 테스트 stage를 테스트하는 Push (#175) Co-authored-by: gitchan <[email protected]> * fix: 더미데이터 변경 및 api수정 (#176) * feat: 고객 목록 조회, 고객 쿠폰 조회 시 maxStampCount더미 데이터 추가 (#178) * fix: 더미데이터 변경 (#180) * [FE] refactor: 스탬프 적립 api 명세 변경에 따라 리팩터링한다. (#179) * refactor: api 수정에 따른 요청 코드 변경 * test: api 수정에 따른 msw 코드 변경 * feat: 고객 방문횟수 계산 로직 수정 (#181) Co-authored-by: JunDonghyuk <[email protected]> * [FE] feat: 카페 등록 페이지의 api 요청 로직 구현 (#168) * feat: 카페 등록 페이지 api 요청 기능 구현 * refactor: 불분명한 네이밍 수정 * [BE] feat: boolean타입 dto변수 네이밍 이상한거 수정 (#182) * [BE] feat: 2차 데모 시연을 위한 샘플 쿠폰에 이미지 추가 (#183) * [BE] feat: api date포맷 변경 (#184) * [BE] feat: CORS 설정 (#167) * [BE] feat: 모든 IP 대역에서 응답받을 수 있도록 CORS 설정 변경 (#186) * fix: cors 전체 허용으로 바꿨는데 이슈 발생으로 원복 (#187) * [BE] fix : cors 설정 안되있던 기존 상태로 원상 복구 (#188) * [BE] refactor: 2차 데모데이까지의 코드를 리팩터링한다. (#190) * refactor: CafeNotFoundException 패키지 변경 * refactor: 커스텀 예외를 사용하도록 변경 * test: Customer Fixture 사용 * test: Coupon Design, Policy Fixture 사용 * refactor: CafeService 메서드 분리 * refactor: CustomerService 메서드 분리 * fix: DTO 기본값 제거 * refactor: CouponService 코드 리팩터링 * refactor: CustomerCouponStatistics 분리 * refactor: CustomerNotFoundException 커스텀 예외 생성 * refactor: fixture static import 추가 * [BE] feat: 카페 별 고객 목록 조회 시 maxStampCount데이터 추가 (#192) * refactor: CafeNotFoundException 패키지 변경 * refactor: 커스텀 예외를 사용하도록 변경 * test: Customer Fixture 사용 * test: Coupon Design, Policy Fixture 사용 * refactor: CafeService 메서드 분리 * refactor: CustomerService 메서드 분리 * fix: DTO 기본값 제거 * refactor: CouponService 코드 리팩터링 * refactor: CustomerCouponStatistics 분리 * refactor: CustomerNotFoundException 커스텀 예외 생성 * refactor: fixture static import 추가 * refactor: Coupon메서드 네이밍 isUsing -> isAccmulating으로 변경 * refactor: 기본 생성자 어노테이션으로 변경 * feat: 요구사항에 맞게 고객 리스트 조회 시 maxStampCount반환 * test: 현재 적립중인 쿠폰 데이터에 maxStampCount 검증 --------- Co-authored-by: gitchan <[email protected]> Co-authored-by: 깃짱 <[email protected]> * [feat: 현재 적립중인 쿠폰 데이터에 maxStampCount를 추가한다 (#193) Co-authored-by: 깃짱 <[email protected]> * [BE] fix: merge conflict 해결 (#195) * [BE] feat: Github Action을 통해 CI 설정 (#196) * [BE] refactor : 2차 데모데이 기능 구현한 코드를 리팩터링한다 (#200) * refactor: 정적팩토리메서드 from -> of 로 변경 * refactor: 고객의 통계 계산하는 책임을 일급컬렉션 Coupons 로 넘김 * refactor: 임시 고객 닉네임 TemporaryCustomer 객체가 생성 하도록 수정 * refactor: TemporaryCustomer 정적 펙터리 메서드 추가 * [FE] refactor: 2차 데모데이 코드를 리팩터링한다. (#201) * chore: dotenv 설정 Co-authored-by: 강영민 <[email protected]> * feat: fetch 메서드 추상화 * feat: get, post, patch 디렉터리로 분리 * refactor: 분리한 통신 메서드 적용 * refacotr: getCouponSamples 메서드 추가 및 적용 * refactor: 고객목록 리스트 get하는 메서드 분리 * refactor: 도로명 주소 API인 `useFindAddress` 훅 분리 * refactor: 코드 전반 리팩터링 Text 컴포넌트 통일, util 및 상수 분리, Spacing 태그 톻일 * ROUTER_PATH 상수화 * refactor: style 파일명 컨벤션으로 수정 * refactor: 안쓰는 폴더 삭제, DialPad 폴더 위치 이동, fragment 삭제 * refactor: `ROUTER_PATH` 수정 및 스타일 변경 Co-authored-by: 박정규 <[email protected]> * refactor: .env 삭제 * refactor: gitignore에 .env 추가 * refactor: index에 msw worker 제거 --------- Co-authored-by: 강영민 <[email protected]> * [BE] feat: Request DTO Validation 추가 (#215) * [BE] feat: 전역 예외 처리 (#214) * feat: 전역 예외 처리 * fix: 통과하지 않는 테스트 코드 수정 * [BE] feat: github action ci 트리거 조건에서 push 조건 삭제 (#216) * fix: Api Controller의 Request에 Valid 어노테이션 추가 (#217) * chore: custom.d.ts 에 svg도 추가 * feat: swagger 사용해서 API 자동화 추가 (#226) * [BE] feat: 인수 테스트 격리 템플릿을 작성한다 (#219) * test: 테스트 격리 템플릿 작성 * help: 테스트 격리 ㅠㅠ * fix: 테스트 환경 설정 변경 * feat: 테스트 템플릿에 DataClearExtension 추가 * test: 테스트 격리 템플릿 작성 * help: 테스트 격리 ㅠㅠ * fix: 테스트 환경 설정 변경 * feat: 테스트 템플릿에 DataClearExtension 추가 * refactor: 불필요한 개행 삭제 * feat: 인수 테스트가 AcceptanceTest 상속받게 변경 * feat: RepositoryTest 깨지는 것 수정 * fix: CafeServiceTest 에러 수정 * refactor: 사용하지 않는 클래스 삭제 * refactor: 사용하지 않는 필드 삭제 * fix: 데이터 초기화 시점 BeforeEach에서 AfterEach로 변경 * refactor: 사용하지 않는 어노테이션 제거 * refactor: 공통 메서드 BeforeEach로 분리 * refactor: 스트림 세부구현 변경 * refactor: 사용하지 않는 어노테이션 삭제 * feat: application-test.yml H2 Dialect 사용하게 수정 (@DataJpaTest 실패 관련) --------- Co-authored-by: gitchan <[email protected]> * [BE] refactor: Sample Coupon Default Image 순회 로직에서 하드코딩으로 변경 (#240) * refactor: Sample Coupon Default Image 순회 로직에서 하드코딩으로 변경 * refactor: 개행 추가 * refactor: 고객모드에 Template 제거 * feat: CouponList 컴포넌트 구현 * feat: Coupon 컴포넌트 구현 * feat: swap keyframe 선언 * refactor: 쿠폰리스트 초기 페이지로 수정 * chore: 고객 쿠폰 리스트 msw 구현 * feat: 쿠폰 리스트 컴포넌트 구현, 현재의 카페 index 설정 * refactor: 단축구문으로 변경 * [FE] feat: 2차 데모데이 api를 백엔드와 연동한다. (#223) * feat: 2차 데모데이 API 연동 * fix: 잘못된 메서드 사용 변경 * refactor: 불필요한 import 문 제거 윤생! 머지할게용~ * [BE] feat: 2차 구현기능 API 에 /admin prefix 를 적용한다(사장모드) (#232) * [BE] fix: Coupon 엔티티 deleted 기본값 Boolean.TRUE 삭제 (#246) * feat: `regularPark`이 구현한 ProgressBar component Co-authored-by: 박정규 <[email protected]> * chore: SearchBar stories 추가 * refactor: selectBox 너비를 외부에서 받도록 수정 * chore: mockData 업데이트 * feat: 고객 쿠폰 리스트 헤더 부분 구현 * feat: coupon의 MainColor에 따라 배경색과 progress색이 달라지도록 구현 * fix: 조금 노출된 쿠폰을 클릭했을 때, currentIndex가 바뀌던 문제 수정 * chore: 안쓰는 interface 삭제 * refactor: RouterPath 변경 * refactor: path 상수 변경에 따른 사용처 코드 수정 * feat: Alert Component 구현 * feat: 고객 리스트에서 즐겨찾기 Alert 일부 구현 * [FE] feat: 스탬프 커스텀 기능을 구현한다. (#224) * refactor: `Modal` 컴포넌트 ref로 변경 * refactor: 커스텀 쿠폰 디자인 라우팅 설정 * feat: `StampCustomModal` 컴포넌트 구현 * feat: 커스텀/템플릿 분기 설정 * feat: 모달 적용 및 stampPos 상태 작성 * refactor: 테스트 위한 mockData 수정 및 셀렉트 박스 옵션 수정 * design: 스탬프 커스텀 모달 스타일 수정 * feat: `parseExpireDate` 메서드 추가 * feat: `StampCustomModal`에 props 추가 및 스탬프 제거 로직 추가 * design: 레이아웃 수정 * fix: maxStampCount보다 스탬프가 더 찍히는 오류 해결 * fix: 태블릿 환경에서 모달의 height가 무너지는 현상 해결 * refactor: 쿠폰 뒷면 이미지, 스탬프 이미지가 없을 경우 커스텀 불가하도록 변경 * 'refactor: `removeLastStamp` 내부 코드 리팩토링 * refactor: 코드 컨벤션 준수 * refactor: `event` => `e`로 변경 * feat: msw 핸들러 및 api 메소드 구현 (#254) Co-authored-by: 박정규 <[email protected]> * test: Alert Storybook 작성 * test: Alert max-width 설정 * [FE] feat: 카페관리 페이지를 구현한다. (#251) * feat: `TimeRangePicker` 컴포넌트 생성 * design: 관련 css 속성 변경 * feat: `ManageCafe` 페이지 레이아웃 생성 * feat: 카페 관리 통신 코드 작성 * fix: 소개글이 div 밖으로 나가는 오류 해결 * feat: `getCafe()` 메서드 추가 * feat: 전화번호에 `-`을 적절히 삽입하는 유틸 메서드 작성 * refactor: 통신 및 미리보기 내부 정보 동기화 코드 작성 * feat: MSW 및 통신 메서드 작성 * refactor: `event` -> `e`로 변경 * design: 사이드바 css 디자인 변경 * feat: data가 빈 값인지 확인하는 유틸 함수 생성 * refactor: 카페 관리 페이지 피드백 반영 리팩토링 * fix: 충돌 해결 * refactor: 조건문 리팩터링 * [BE] feat: 카페 정보 수정 API를 구현한다. (#243) * feat: 카페 정보 수정 service작성 * feat: 카페 정보 수정 api작성 * refactor: 변수명 수정 * test: 테스트 케이스 추가 * refactor: dto Final추가 * refactor: dto validation어노테이션 수정 * refactor: api dto to serviceDto생성 * refactor: 메서드 네이밍 수정 * [BE] feat: 쿠폰 리스트(고객 모드)를 조회한다. (#250) * feat: `regularPark`이 구현한 ProgressBar component Co-authored-by: 박정규 <[email protected]> * chore: SearchBar stories 추가 * feat: 고객 쿠폰 리스트 조회 Response DTO 생성 * chore: Response DTO 패키지 이동 * feat: CustomerCouponFindAcceptanceTest 인수 테스트 작성 * feat: 쿠폰을 고객과 상태에 따라 필터링 * refactor: selectBox 너비를 외부에서 받도록 수정 * chore: mockData 업데이트 * feat: 고객 쿠폰 리스트 헤더 부분 구현 * test: 쿠폰이 참조하는 카페를 조회 테스트 코드 작성 * feat: coupon의 MainColor에 따라 배경색과 progress색이 달라지도록 구현 * fix: 조금 노출된 쿠폰을 클릭했을 때, currentIndex가 바뀌던 문제 수정 * chore: 안쓰는 interface 삭제 * test: 쿠폰 객체 테스트 코드 작성 * refactor: CafeCouponDesignRepositoryTest 테스트 코드 리팩터링 * test: 쿠폰 디자인에서 읽기 전용인 좌표 필드는 조회 불가 * refactor: 메서드 순서 변경 * refactor: RouterPath 변경 * refactor: path 상수 변경에 따른 사용처 코드 수정 * refactor: 메서드 순서 변경 * fix: 오타 제거 * feat: CustomerCouponFindService의 반환 DTO 생성 * feat: 고객의 쿠폰 조회 Response DTO 수정 * feat: 변경된 API URI 반영 * refactor: Request 상수 분리 * test: 고객의 쿠폰 조회 인수테스트 추가 * feat: 컨트롤러 반환값 변경 * feat: Alert Component 구현 * feat: 고객 리스트에서 즐겨찾기 Alert 일부 구현 * [FE] feat: 스탬프 커스텀 기능을 구현한다. (#224) * refactor: `Modal` 컴포넌트 ref로 변경 * refactor: 커스텀 쿠폰 디자인 라우팅 설정 * feat: `StampCustomModal` 컴포넌트 구현 * feat: 커스텀/템플릿 분기 설정 * feat: 모달 적용 및 stampPos 상태 작성 * refactor: 테스트 위한 mockData 수정 및 셀렉트 박스 옵션 수정 * design: 스탬프 커스텀 모달 스타일 수정 * feat: `parseExpireDate` 메서드 추가 * feat: `StampCustomModal`에 props 추가 및 스탬프 제거 로직 추가 * design: 레이아웃 수정 * fix: maxStampCount보다 스탬프가 더 찍히는 오류 해결 * fix: 태블릿 환경에서 모달의 height가 무너지는 현상 해결 * refactor: 쿠폰 뒷면 이미지, 스탬프 이미지가 없을 경우 커스텀 불가하도록 변경 * 'refactor: `removeLastStamp` 내부 코드 리팩토링 * refactor: 코드 컨벤션 준수 * refactor: `event` => `e`로 변경 * feat: msw 핸들러 및 api 메소드 구현 (#254) Co-authored-by: 박정규 <[email protected]> * fix: 샘플 이미지에 좌표가 조회되도록 수정 * test: API 테스트 코드 추가 * test: Alert Storybook 작성 * test: Alert max-width 설정 * feat: 고객 쿠폰 리스트 조회 Response DTO 생성 * chore: Response DTO 패키지 이동 * feat: CustomerCouponFindAcceptanceTest 인수 테스트 작성 * feat: 쿠폰을 고객과 상태에 따라 필터링 * test: 쿠폰이 참조하는 카페를 조회 테스트 코드 작성 * test: 쿠폰 객체 테스트 코드 작성 * refactor: CafeCouponDesignRepositoryTest 테스트 코드 리팩터링 * test: 쿠폰 디자인에서 읽기 전용인 좌표 필드는 조회 불가 * refactor: 메서드 순서 변경 * fix: 오타 제거 * feat: CustomerCouponFindService의 반환 DTO 생성 * feat: 고객의 쿠폰 조회 Response DTO 수정 * feat: 변경된 API URI 반영 * refactor: Request 상수 분리 * test: 고객의 쿠폰 조회 인수테스트 추가 * feat: 컨트롤러 반환값 변경 * fix: 샘플 이미지에 좌표가 조회되도록 수정 * test: API 테스트 코드 추가 * refactor: 정적 팩토리 메서드 이름 from으로 변경 * refactor: 테스트 코드 메서드 이름 변경 * refactor: Service 코드에 @Transactional 어노테이션 추가 --------- Co-authored-by: kangyeongmin <[email protected]> Co-authored-by: 박정규 <[email protected]> * [BE] feat: 고객 모드에서 카페 정보를 조회하는 API 를 구현한다 (#255) * feat: 고객모드에서 카페 정보 조회하는 API 구현 * feat: 고객모드에서 카페 정보 조회하는 API 통합테스트 구현 * refactor: 변수 상수화 * refactor: Customer, TemporaryCustomer 생성자 접근제어자 수정 * fix: 머지 중 발생한 컴파일 에러 해결 --------- Co-authored-by: youngh0 <[email protected]> Co-authored-by: gitchan <[email protected]> * [BE] refactor: PersistenceConfig 추가하고 JpaAuditing 어노테이션 이동 (#261) * refactor: PersistenceConfig 추가 * refactor: PersistenceConfig에 proxyBeanMethods = false 추가 * [BE] refactor: 스탬프 발급 코드 리팩터링 (#263) * refactor: 스탬프 적립 코드 수정 * feat: 보상까지 남은 스탬프 개수 계산 기능 구현 * refactor: 메서드 분리 * test: 스탬프 추가 적립 시 보상개수보다 적은지 확인하는 테스트 작성 * test: 스탬프 추가 적립 시 보상개수와 같은지 확인하는 테스트 * refactor: 메서드 분리 * refactor: 주석 제거 * refactor: 메서드 분리 * test: 스탬프 총합에 따라 발급되어야 하는 보상 수 계산 테스트 작성 * refactor: 메서드 분리 * test: 기존 쿠폰에 적립된 스탬프가 있을 때 스탬프 추가적립 테스트 추가 * [BE] feat: 카페 즐겨찾기 등록 및 해제 기능을 구현한다. (#264) * feat: Favorites 엔티티 설계 * feat: Favorites 레포지토리 설계 * feat: FavoritesService 즐겨찾기 기능 구현 및 테스트 * feat: FavoritesController 구현 및 DTO 설계 * feat: FavoritesController 즐겨찾기 요청 반환타입 변경 * [FE] feat: 즐겨찾기 변경 기능 구현 (#269) * fix: 이미지 클릭시 보이는 파란 박스 없애기 * refactor: 자잘한 디자인 수정 * chore: Alert 줄바꿈 css * chore: mockData 구글드라이브 이미지 호스팅 주소로 변경 * refactor: 즐겨찾기 등록 url 수정 * feat: 즐겨찾기 변경 api 연결 * feat: 낙관적업데이트 적용 * refactor: getCurrentCoupon() 변수로 변경 * refactor: any 타입 제거 * refactor: data에 이름 부여 * [FE] feat: 쿠폰 상세 모달 컴포넌트를 구현한다. (#265) * feat: $isDetail 추가 * feat: 카페, 쿠폰 정보 props 전달 * feat: 상세 페이지 레이아웃 * fix: couponDetail이 보이던 문제 해결 * design: css 수정 * feat: 쿠폰 뒤집는 css * design: mockData 변경 및 디자인 수정 * test: mockData 변경 * feat: 좌표에 따라 스탬프가 화면에 나타남 * refactor: 재사용하는 type 모아둔 types 생성 * test: mockData 변경 * fix: 인덱스가 한 개씩 밀리던 문제 해결 및 type 분리, 메서드 세분화 * refactor: 가독성 향상 위한 변수 정의 * fix: isFlipped 상태를 false로 초기화하여 오류 해결 * style: 불필요한 코드 제거 * fix: 스탬프가 쿠폰 뒷면과는 독립적으로 렌더링 되던 문제 해결 * feat: 쿠폰 뒷면 확인 도움말 추가 * design: 쿠폰 상세 열렸을 때 상세보기 버튼 사라지도록 수정 * fix: 모바일 화면에서 상세모달 버튼이 쿠폰에 가려지던 문제 해결 * refactor: CafeType과 CafeRes 분리 및 적용 * refactor: 모호한 상태명 수정 * refactor: 상세 보기 시 자동으로 쿠폰 뒤집기 --------- Co-authored-by: 강영민 <[email protected]> * [FE] fix: api 명세 변경에 따른 api 관련 코드 리팩터링을 한다. (#271) * fix: 카페 상세정보 변경 엔드포인트 변경 * fix: 카페 등록 ownerId 삭제 * fix: 스탬프 개수별로 기본 샘플조회 api 수정 * fix: 쿠폰 디자인 및 정책 수정 api 명세에 맞게 수정 * fix: 전화번호로 고객 조회 api 명세에 맞게 수정 * fix: 임시 가입 고객 생성 api 명세에 맞게 수정 * fix: 고객 쿠폰 조회 api 명세에 맞게 수정 * fix: 고객 리워드 조회 api 명세에 맞게 수정 * fix: 쿠폰 신규 발급 api 명세에 맞게 수정 * fix: 스탬프 적립 api 명세에 맞게 수정 * fix: 고객 목록 조회 api 명세에 맞게 수정 * refactor: webpack.common.js의 중복되는 코드를 dev로 이동 (#267) * [BE] feat: 2차 데모데이 구현 코드에서 Basic 인증을 추가한다 (#249) * feat: AuthenticationException 정의 * feat: OwnerArgumentResolver 정의 * feat: 사장님 인증이 필요한 API Controller 메서드에 파라미터로 Owner 추가 * feat: 인수 테스트 코드에 header 추가 * chore: 불필요한 출력문 제거 * feat: CustomerArgumentResolver 구현 * feat: 인증 실패 시 AuthenticationException -> UnAuthorizationException 발생으로 수정 * feat: CustomerArgumentResolver supportsParameter 에 파라미터 조건 잘못되어 있던 것 수정 * refactor: 필요없는 파일 삭제 * refactor: owner fixture 추가 * refactor: 예외메세지 수정 * refactor: 헤더 확인 로직 Interceptor 로 구현 * refactor: OwnerAuth, CustomerAuth 구현 * fix: accumulate 파라미터 추가 * feat: 헤더 인증 추가로 실패하는 인수 테스트에 basic header 인증 추가 * feat: OwnerArgumentResolve 테스트 추가 * feat: CustomerArgumentResolver 테스트 추가 * refactor: given() 정적 메서드 제거 --------- Co-authored-by: 깃짱 <[email protected]> Co-authored-by: gitchan <[email protected]> * [BE] chore: 패키지를 분리한다. (#273) * refactor: production code package 변경 * refactor: config 내부 package 분리 * refactor: cafe service 패키지 분리 * refactor: 불필요한 클래스 삭제 * refactor: coupon service 패키지 분리 * refactor: favorites service 패키지 분리 * refactor: ManagerCafeApi 명령 조회 분리 * refactor: ManagerCafeCouponSettingApi 명령 조회 분리 * refactor: ManagerCouponApiController 명령 조회 분리 * refactor: ManagerCustomerApiController 명령 조회 분리 * refactor: ManagerRewardApiController 명령 조회 분리 * refactor: ManagerSampleCouponApiController 명령 조회 분리 * refactor: CafeController 명령 조회 분리 및 네이밍 수정 * refactor: CustomerCouponFindController 네이밍 수정 * refactor: FavoritesController 네이밍 수정 * refactor: ManagerCafeCouponSettingService 명령 조회 분리 * refactor: ManagerCafeService 명령 조회 분리 * refactor: ManagerCouponService 명령 조회 분리 * refactor: ManagerCustomerService 명령 조회 분리 * refactor: RewardService 명령 조회 분리 * refactor: SampleCouponService 명령 조회 분리 * refactor: visitorService 전체 명령 조회 분리 * refactor: SampleCouponImage 패키지 이동 * refactor: 개행 변경 --------- Co-authored-by: JunDonghyuk <[email protected]> Co-authored-by: Youngho <[email protected]> * [FE] refactor: type 폴더를 만들고 관련 네이밍과 위치를 리팩토링한다 (#276) * fix: Router Path 오류 수정 * "refactor: react/props-type 관련 eslint 설정 수정" Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * refactor: progressBar Props 리팩토링 * refactor: 수정된 Props 컨벤션에 맞게 SelectBox 수정 * refactor: children의 타입을 더 좁히도록 수정 및 공통 interface 통합 Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * refactor: hooks 리팩토링 * refactor: choiceTemplate types 리팩토링 * chore: 네이밍 수정 * refactor: CustomCouponDesign types 리팩토링 * refactor: admin Pages type 수정 * refactor: Pages types 리팩토링 Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * refactor: pages types 리팩토링 최종 Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> --------- Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * fix: 가로 및 세로 스크롤이 가능하지 않도록 모달이 열리는 방식 수정 (#277) * [BE] setting: dev 설정 파일 업데이트 (#283) * [FE] refactor: 고객 모드의 화면을 PC환경에서도 모바일뷰로 렌더링한다. (#279) * feat: `CustomerTemplate` 컴포넌트 생성 * refactor: 관련된 부분 수정 * feat: 뷰포트에 따른 반응형 페이지 구현 * refactor: css 수정 --------- Co-authored-by: 강영민 <[email protected]> * fix: 구글드라이브 호스팅 이미지 url color-thief cors에러 해결 (#281) * [BE] setting: application-dev.yml ddl-auto validate로 수정 (#284) * setting: application dev 설정 파일 수정 * refactor: data initializer 취소 * [BE] fix: API에 맞도록 Auth 관련 수정 (#287) Co-authored-by: gitchan <[email protected]> * feat: api header 하드코딩 (#289) * [BE] fix: Customer Coupon Find API 인수테스트 버그 수정 (#293) * [BE] fix: 수정된 API에 맞게 Controller 수정 (#292) * refactor: 불필요한 주석 제거 * refactor: OwnerAuth에 Getter 추가 * fix: create cafe api 수정 * fix: update cafe api 수정 * fix: manager cafe find api 수정 * refactor: manager coupon command api 수정 * refactor: manager coupon find api 수정 * refactor: createStamp API 수정 * refactor: 고객의 쿠폰 조회 API PathVariable, RequestPararm 명시적으로 표시 --------- Co-authored-by: yenawee <[email protected]> * [BE] feat: cafe entity 에 introduction 필드 추가 (#290) * feat: cafe entity 에 introduction 필드 추가 * refactor: introduction에 @Lob 어노테이션 추가 --------- Co-authored-by: gitchan <[email protected]> * fix: api change (#296) * [BE] refactor: ddl-auto none으로 수정 (#297) * [BE] style: sample coupon image url 수정 (시연용) (#299) * style: sample coupon image url 수정 (시연용) * style: 샘플 쿠폰 좌표 더미데이터 저장 * fix: json-format-change (#300) * [BE} fix:json format (#301) * fix: json-format-change * fix: json-format-change --------- Co-authored-by: youngh0 <[email protected]> * refactor: getter 수동으로 작성 (#302) * [FE] fix: api base url 수정 (#305) * [FE] bug: 배포 중 발견한 오류를 해결한다. (#304) * refactor: 카페 관리 화면에서 `parsePhoneNumber` 적용 * design: `GlobalStyle` 버튼에 포인터 적용 * fix: api 명세에 맞게 코드 변경 * fix: 스탬프를 `stampCount`만큼 그려주지 않는 문제 해결 * style: 쿠폰 미보유 문구 변경 * feat: CafeFindResponse에 introduction 추가 (#307) * [BE] fix: 고객 쿠폰 조회에서 isFavorites를 상수가 아닌 데이터베이스 값으로 변경한다 (#311) * style: 클래스 이름 변경 * feat: isFavorites를 데이터베이스 값으로 변경 * [FE] fix: 잘못된 api 엔드포인트 수정 (#313) * feat: 시연용 쿠폰 사진 추가 (#314) * fix: SampleCouponFindResponse api에 맞도록 변경 (#318) * feat: Stamp Coordinates 커스텀으로 변경 (#319) * fix: sql 테이블명 대문자를 소문자로 변경 (#320) * [FE] feat: 웹접근성 및 스타일 수정 (#321) * feat: 웹 접근성 코드 작성 Co-authored-by: 강영민 <[email protected]> * fix: 스탬프 위치, 카페이미지 수정 * refactor: role: alert -> dialog --------- Co-authored-by: 강영민 <[email protected]> * [FE] fix: 배포 오류 해결 (#323) * [FE] fix: api 명세 따른 변경 (#324) * [FE] bug: react-query refetch 관련 문제 수정 (#327) * refactor: 사이드바 컬러 수정 * fix: 라우팅 에러 수정 * refactor: 고객리스트 정렬 문제 수정 * chore: 자잘한 디자인 수정 * fix: refetch 관련 오류 수정 * [BE] fix: SampleCouponsFindResultDto에서 entity를 반환하던 문제 해결 (#326) * [BE] fix: Cafe Coupon Setting Update Request에서 coordinate을 받아오지 못하던 문제 해결 (#328) * refactor: 사용하지 않는 클래스 삭제 * fix: 카페 생성 요청 uri 변경 * feat: 카페 쿠폰 정책 변경 step 추가 * fix: Request에서 xCoordinate, yCoordinate이 들어오지 않는 문제 해결 * fix: ExceptionHandler 전역 핸들러 복구 (주석 처리 했었습니다. 죄송합니다.) * [FE] fix: 하드코딩 부분 및 웹접근성 수정 (#330) * [FE] fix: 3차데모 이후 발견한 버그 수정 및 리팩토링 (#345) * fix: 홈에서 마이페이지로 갔다가 돌아왔을 때 쿠폰이 넘어가지 않던 문제 수정 * refactor: 자잘한 디자인 수정 * refactor: refetch 함수 이름 지정 * refactor: refetchonMount false 제거 * refactor: 부정연산자 제거 * feat: 버그 리포트 이슈 템플릿 추가 (#352) * feat: 버그 리포트 템플릿 추가 * [BE] refactor: API 변경사항에 맞도록 CustomerCouponFindResponse 수정 (#372) * refactor: 메서드 분리 * fix: CustomerCouponFindResponse API 변경사항에 맞게 수정 * [BE] test: Controller 테스트 코드 작성 (slice test) (#331) * refactor: ResponseEntity를 반환하도록 수정 * test: 샘플_쿠폰_조회_요청_시_인증_헤더_정보가_없으면_401코드를_반환한다 * test: 샘플_쿠폰_조회_요청_시_인증_헤더_정보가_없으면_401코드를_반환한다 * test: 테스트 코드 임시 commit * refactor: 개행 수정 * fix: MockBean RegisterCustomerRepository 의존성 추가 * test: 샘플_쿠폰_조회_요청_시_인증이_안되면_401코드를_반환한다 * test: 샘플_쿠폰_조회_요청_시_인증이_안되면_401코드를_반환한다 * help: 샘플_쿠폰_조회_요청_시_인증이_되면_200_상태코드와_응답을_반환한다 테스트 에러 발생해서 disabled 처리 * fix: NPE 해결 * test: 응답 반환 여부 확인 추가 * test: 고객의 쿠폰 조회 Controller Slice Test 작성 * test: ManagerCafeCouponSettingCommandApiController slice test 작성 * fix: ExceptionHandler 주석 해제 * style: 개행 * feat: 개행 수정 * refactor: static 제거 * refactor: 개행 수정 * style: 기본 카페 정책 리워드 No -> 아메리카노 1잔 수정 * [BE] refactor: AuthHelper로 인증 관련 코드 분리 (#374) * refactor: AuthHelper로 인증 관련 코드 분리 * style: 개행 추가 * style: 개행 추가 * refactor: 메서드 분리 * refactor: ManagerCustomerFindService 에서 불필요하게 일급컬렉션으로 묶어서 반환하는 DTO 제거 (#339) * [BE] refactor: Fixture 클래스 final 제어자, private 생성자 추가 (#375) * refactor: AuthHelper로 인증 관련 코드 분리 * style: 개행 추가 * style: 개행 추가 * refactor: 메서드 분리 * refactor: Fixture class에 final 제어자 추가 * refactor: Fixture class에 private 생성자 추가 * style: 변수 이름 변경 * style: 개행 추가 * refactor: 메서드 분리 * refactor: Fixture class에 final 제어자 추가 * refactor: Fixture class에 private 생성자 추가 * style: 변수 이름 변경 * [BE] feat: swagger ui 인터셉터 설정 및 url 설정 변경 (#377) * feat: swagger ui 인터셉터 설정 및 url 설정 변경 * feat: swagger ui 인터셉터 설정 및 url 설정 변경 * [BE] test: Service 테스트 코드 작성 (slice test) (#347) * test: ManagerCafeCouponSettingCommandService 테스트 코드 작성 * test: ManagerSampleCouponFindService 테스트 코드 작성 * test: VisitorCouponFindService 테스트 코드 작성 * test: CouponFixture 분리 * style: 불필요한 개행 제거 * feat: usingRecursiveComparison() 제시 * style: 주석 제거 * refactor: 테스트 코드에서 usingRecursiveComparison()을 사용하도록 변경 * refactor: 개행 제거 * fix: merge conflict 해결 --------- Co-authored-by: yenawee <[email protected]> * [BE] refactor: 테스트 코드 리팩터링 (#384) * feat: ManagerCustomerCommandServiceTest 모킹테스트로 변경 * feat: ManagerCustomerFindServiceTest 모킹테스트로 변경 * feat: VisitorCafeFindServiceTest 작성 * feat: TemporaryCustomerTest 작성 * feat: CustomerRepositoryTest 작성 * feat: RegisterCustomerRepositoryTest 작성 * [BE] feat: 로깅 기능 추가 (#389) * feat: 로깅 기능 추가 * refactor: 불필요한 코드 제거 * feat: logging 설정 변경 * [BE] feature: log-format 로깅 문자열 추가 (#402) * feat: logging format 작성 * refactor: 불필요한 어노테이션 삭제 --------- Co-authored-by: gitchan <[email protected]> * [FE] bug: 쿠폰 상세 페이지에서 발생한 버그를 수정한다. (#379) * fix: 범위를 넘어서는 `Introduction` `scroll` 속성 부여 * refactor: `parsePhoneNumber` 로직 변경 정규식 사용 * fix: 전화번호 숫자만 입력 가능하도록 변경 및 스타일 수정 * fix: 범위를 넘어가는 텍스트 `hidden` or `scroll` * fix: 쿠폰과 쿠폰 상세의 인덱스가 꼬이는 문제 해결 * fix: 쿼리의 키를 주어 쿼리 키가 바뀔때 마다 동작하도록 변경 * refactor: 피드백 반영 * [BE] refactor: 리워드 조회와 사용에 관한 테스트 추가 작성 (#338) * test: 리워드 조회와 사용 컨트롤러 단위 테스트 * test: 리워드 조회와 사용 인수 테스트 * [BE] refactor: coupon관련 service테스트 수정 (#368) * feat: id를 가지는 생성자 생성 * feat: 스탬프 적립 service레이어 mocking테스트로 대체 * fix: 스탬프 초과 적립 시 리워드 발급 이후 남은 스탬프 적립 로직 버그 수정 적립할 스탬프 중 리워드 발급이후 추가 적립할 스탬프가 0개 남으면 쿠폰 발급 안하도록 수정 기존에는 couponPolicy의 maxStamp가 10개고, 적립하려는 스탬프가 20개면 리워드 2개 발급이후 또 쿠폰을 생성했음 * test: 기존 쿠폰에 스탬프 없을 때 스탬프 적립 테스트 작성 * test: 기존 쿠폰에 스탬프 있을 때 스탬프 적립 테스트 작성 * test: 쿠폰 발급 테스트 작성 * test: 쿠폰 발급 예외 테스트 작성 * test: 사장이 현재 쿠폰 적립중인 고객 리스트 조회 테스트 작성 * test: 현재 카페 정책이 최신인지 확인하는 테스트 작성 * test: 적립중인 쿠폰이 최신 정책의 쿠폰인지 검증하는 테스트 작성 * refactor: service테스트 모킹으로 수정 * [BE] refactor: 즐겨찾기 등록 및 해제 기능 테스트 작성 (#378) * test: 즐겨찾기 등록 인수 테스트 작성 * test: 즐겨찾기 컨트롤러 단위 테스트 작성 * [FE] refactor: 고객의 쿠폰 조회 response 변경 (#387) * chore: 변경된 response에 따라 mockData 수정 * feat: 변경된 response에 따라 사용처 수정 * [BE] feature: RestDocs + Swagger UI 로 API 문서를 생성한다 (#410) * feat: build.gradle 설정 추가 * feat: .gitignore 설정 추가 * feat: yml 에 swagger-ui 설정 추가 * refactor: controller test 패키지 변경 * feat: ControllerTest 작성 * feat: ManagerCafeFindApiControllerTest, VisitorCafeFindApiControllerTest 에 문서화를 위한 테스트코드 추가 * feat: SwaggerConfig.java 삭제 * feat: WebMvcConfig interceptor 적용 패턴에서 swagger api 패턴 제외 * feat: API 문서 생성 코드 형식 수정 * feat: 전화번호로 고객 조회 API 문서화 * feat: 임시 고객 생성 API 문서화 * feat: document 만들어지는 위치 수정 * feat: API 문서화를 위한 ControllerTest 는 docs 패키지로 분리 * feat: swagger ui 설정파일 변경 * feat: ManagerCustomerFindApiDocsControllerTest 수정 * [BE] refactor: @KorNamingConverter 어노테이션 적용 (#412) * feat: @KorNamingConverter 생성 * feat: Custom annotation에 Target, Retention 추가 * refactor: AcceptanceTest에 커스텀 어노테이션 추가 * refactor: ControllerTest에 커스텀 어노테이션 추가 * refactor: ServiceTest에 커스텀 어노테이션 추 * refactor: EntityTest에 커스텀 어노테이션 추 * feat: @KorNamingConverter 생성 * feat: Custom annotation에 Target, Retention 추가 * refactor: AcceptanceTest에 커스텀 어노테이션 추가 * refactor: ControllerTest에 커스텀 어노테이션 추가 * refactor: ServiceTest에 커스텀 어노테이션 추 * refactor: EntityTest에 커스텀 어노테이션 추 * [FE] feat: 쿠폰 상세 페이지의 쿠폰 삭제 기능을 구현한다. (#411) * feat: delete 통신 로직 추가 * feat: msw 코드 작성 * feat: `Alert`를 이용한 쿠폰 삭제 로직 구현 * [FE] fix: ModifyCouponPolicy 페이지에 등록된 버그들을 해결한다. (#385) * chore: PageTitle과 맞지 않던 부분 수정 * refactor: Createdtype 분리 * refactor: Created type 선언 * refactor: MaxStampCount 분리 * refactor: RewardName 분리 * refactor: ExpiredPeriod 분리 * refactor: 입력을 4번의 step으로 나누어 받도록 수정 * refactor: expirePeriod 백엔드와 변수명 컴포넌트명 통일을 위한 수정 * refactor: width 디자인 수정 * refactor: width 디자인 수정 * refactor: 템플릿, 커스텀 선택지에 아이콘 추가 * refactor: React 제거 * refactor: step number 상수화 * [FE] feat: 마이페이지 및 리워드 보유 내역 페이지 구현 (#401) * feat: 마이페이지 구현 * feat: 고객모드 리워드 조회 msw 및 api 메소드 구현 * feat: 고객모드에서 자주 쓰이는 SubHeader 구현 * chore: 안쓰는 라이브러리 삭제 * fix: 오타 수정 * feat: Reward 응답 type 선언 * feat: RewardList 페이지 구현 * chore: 콘솔로그 삭제 * refactor: RouterPath 타입 추가 및 null 유니온 타입 추가 * fix: myPage 이동 아이콘 태그 수정 및 잘못된 header 라우팅 수정 * fix: useEffect import 추가 (#418) * [BE] refactor: coupon service테스트 관련 리뷰 적용했습니다. (#413) * refactor: 생성자 위치 수정 * refactor: 카페 못 찾을 경우 커스텀 예외 던지도록 수정 * refactor: 오타 수정 * refactor: assertJ import 수정 * refactor: assert구문 usingElement로 비교 * refactor: equals재정의 제거 * refactor: 존재하지 않는 회원일 경우 커스텀 예외 반환하도록 수정 * refactor: 카페, 회원 조회 로직 메서드 추출 * refactor: private 메서드 인라인으로 변경 --------- Co-authored-by: gitchan <[email protected]> * [BE] feat: visit_history엔티티 생성 (#419) * [BE] feat: 개발환경에서 swagger 페이지가 접근되지 않아서 설정파일 수정 (#421) * [BE] feat: 로그에 스프링부트와 동일한 색상 적용 (#424) * [BE] refactor: 쿠폰 발급, 스탬프 적립, 쿠폰 적립하는 고객 조회에 대한 api 테스트 작성 (#367) * test: 쿠폰 발급, 스탬프 적립 api단위테스트 작성 * test: 쿠폰 정보 조회 테스트 작성 * feature: 기본 생성자 추가 * test: 인수 테스트 작성 * refactor: 테스트 코드 수정 * refactor: 쿠폰 만료기간 DateTimeFormatter를 통해 반환 형식 맞추도록 수정 * test: 쿠폰 생성, 스탬프 적립 인수 테스트 작성 * test: 쿠폰 생성 시 인증 예외 테스트 작성 * refactor: localDateTime String으로 저장하도록 수정 * test: 특정 카페에 방문한 고객 정보 조회 인수 테스트 작성 * refactor: ToString 제거 * test: 인증정보 예외 테스트 작성 * test: 사장의 고객 정보 조회, 고객의 적립중인 쿠폰 정보 조회 인수테스트 작성 * test: given when then 주석 작성 * [BE] chore: .gitignore 에 log 디렉토리 추가 (#429) * [BE] chore: 패키지 이동 (#430) * [BE] feat: 스탬프 적립 시 VisitHistory데이터를 추가한다. (#426) * feat: 스탬프 적립 시 VisitHistory에 데이터 추가 * test: 스탬프 적립 시 visitHistory.save() 호출 여부 테스트 작성 --------- Co-authored-by: yenawee <[email protected]> * [BE] refactor: 테스트 코드의 step, Fixture 공통 부분 분리 및 테스트 효율성 향상 (#432) * refactor: CafeCouponSettingIntegrationTest에서 Fixture 사용 * refactor: 카페 생성 메서드 추가 * refactor: CafeCouponSettingIntegrationTest 중복 코드 제거 * refactor: Fixture 분리 * refactor: REGISTER_CUSTOMER_JENA 상수 분리 * refactor: VisitorCafeFindAcceptanceTest 블랙박스 테스트로 변경 * refactor: 사용하지 않는 상수 삭제 * style: Acceptance 테스트 클래스 이름 변경 * refactor: DocsControllerTest에 한글 네이밍 어노테이션 추가 * refactor: ManagerCouponCommandAcceptanceTest을 블랙박스 테스트로 변경 * refactor: ManagerCouponCommandAcceptanceTest에서 기존의 step을 사용하도록 변경 * refactor: 고객 쿠폰 조회 요청 분리 * style: 테스트 클래스 이름 변경 * fix: 에러 나는 테스트 원상복구 * [FE] fix: 쿠폰 커스텀 페이지의 버그를 해결한다. (#396) * fix: mock data 백엔드와 똑같이 수정 * fix: 선택한 템플릿 이미지의 border를 부각시키는 스타일 삽입 * fix: imageUrl 반영이 안되는 이슈 해결 * feat: 쿠폰 디자인 미리보기 기능 추가 * chore: 쿠폰 스탬프 좌표 구체화 * refactor: 빈 컴포넌트 html 태그 사용 * feat: 라우트 변경 * refactor: 디렉토리 구조 변경 * chore: 필요없는 파일 삭제 * refactor: 쿠폰 템플릿/커스텀 페이지 분리 * feat: location 타입 지정 * refactor: 컴포넌트 외부로 mutation 코드 분리 * feat: 타입 구체화 및 유효성 로직 추가 * refactor: 공통된 훅 재사용 * refactor: 디렉토리 경로 수정 * feat: 쿠폰 미리보기 사진 미 선택 시 보여지는 기본 이미지 삽입 * feat: 커서 포인터 설정 * feat: 쿠폰 미리보기 이미지 추가 * feat: 쿠폰, 스탬프 초기 이미지 삽입 * fix: 명세에 맞는 변수명 사용 * refactor: 불필요한 console.log 제거 * refactor: 네이밍 일관성있게 변경 * fix: 템플릭 선택 마다 하이라이팅이 늦게되는 현상 해결 * fix: 메인 색상 변경 및 단축 평가 사용 * [FE] refactor: 카페 등록 페이지의 사이드바를 렌더링하지 않는다. (#433) * refactor: 카페 등록 페이지의 사이드바를 렌더링하지 않는다. * refactor:사이드바 early return으로 변경 * [FE] feat: 마이페이지의 리워드 사용내역 페이지를 구현한다. (#437) * feat: 리워드 사용 기록 관련 라우트 추가 * fix: 잘못된 msw 목데이터 수정 * feat: 데이터를 컴포넌트 뷰에 맞게 변환하는 로직 * feat: 리워드 페이지 마크업 구현 * refactor: 자료구조 변경 * refactor: 코드 축약 * refactor: 유틸 함수 이동 * feat: 네이밍 및 변수 인라인 * feat: 날짜 파싱 유틸 함수 추가 * fix: 타입 오류 수정 * refactor: 변수명 변경 * fix: api 명세에 맞게 mockData 수정 * refactor: 타입 선언 정정 * refactor: 네이밍 수정 * refactor: 시맨틱 태그 적용 * chore:TODO 주석 추가 * fix: 중복 import 제거 * [BE] feat: 3차 데모데이까지의 API 명세 자동화를 위한 테스트 코드를 작성한다 (#428) * feat: VisitorCouponFindApiDocsControllerTest 작성 * feat: VisitorFavoritesCommandApiDocsControllerTest 작성 * feat: ManagerCafeCommandApiDocsControllerTest 작성 * feat: ManagerCafeCommandApiDocsControllerTest 작성 * feat: ManagerCafeCouponSettingCommandApiDocsControllerTest 작성 * feat: ManagerSampleCouponFindApiDocsControllerTest 작성 * feat: 3차 데모데이까지 API 명세 테스트 구현 * feat: 현재 develop 브랜치와 환경설정 동일하게 설정 * refactor: 중복 로직 제거 * [FE] refactor: 작성되지 않은 Request/Response의 타입을 작성한다. (#435) * refactor: 통신 타입 지정 * refactor: 타입 추가 및 적용 * refactor: `RewardPage`에서 발생한 통신 코드의 타 입 지정 및 적용 * test: msw 코드 수정 * refactor: `EarnStamp`페이지의 리액트 쿼리 타입 수정 * refactor: `SelectCoupon` 페이지의 관련 리액트 쿼리 페이지 타입 수정 * refactor: api 메서드의 타입을 지정한다. body와 param을 제네릭으로 Co-authored-by: 2yunseong <[email protected]> Co-authored-by: 강영민 <[email protected]> * refactor: 1차 Rebase * fix: api에 맞게 수정 --------- Co-authored-by: 2yunseong <[email protected]> Co-authored-by: 강영민 <[email protected]> * [BE] feat: 스탬프 적립 내역을 조회하는 API (#434) * feat: 방문이력을 통해 고객 별 스탬프 적립 내역 조회 repository구현 * feat: getter추가 * feat: 고객 별 스탬프 적립 내역 조회 service작성 * feat: 고객 별 스탬프 적립 내역 조회 controller작성 * test: 고객 별 스탬프 적립 내역 조회 controller slice test작성 * [BE] feat: 고객 모드 리워드 상세내역 조회 (#420) * feat: VisitorRewardFindController 생성 * feat: VisitorRewardsFindResponse 생성 * style: 클래스 이름 변경 * feat: VisitorRewardFindController 생성 * feat: VisitorRewardsFindResponse 생성 * style: 클래스 이름 변경 * feat: 리워드를 보유 고객과 사용 여부로 필터링해 조회 * feat: Reward Entity에 id를 가지는 생성자 추가 * feat: RewardFixture 생성 * feat: Reward의 생성자에서 BaseDate를 받도록 수정 * feat: RewardFixture에서 시간 필드를 입력하도록 수정 * feat: VisitorRewardsFindResultDto에 정적 팩터리 메서드 추가 * feat: VisitorRewardsFindResponse에 정적 팩터리 메서드 추가 * style: RewardFixture 패키지 이동 * feat: 리워드 조회 서비스 구현 * feat: 리워드 조회 controller 구현 * feat: 사용 가능한 리워드는 updatedAt null 반환 * style: 불필요한 테스트 코드 삭제 * refactor: 날짜 변환 로직 response 객체로 이동 * refactor: @KorNamingConverter 어노테이션 추가 * [BE] feat: 개발환경에서 swagger 페이지가 접근되지 않아서 설정파일 수정 (#421) * [BE] feat: 로그에 스프링부트와 동일한 색상 적용 (#424) * [BE] refactor: 쿠폰 발급, 스탬프 적립, 쿠폰 적립하는 고객 조회에 대한 api 테스트 작성 (#367) * test: 쿠폰 발급, 스탬프 적립 api단위테스트 작성 * test: 쿠폰 정보 조회 테스트 작성 * feature: 기본 생성자 추가 * test: 인수 테스트 작성 * refactor: 테스트 코드 수정 * refactor: 쿠폰 만료기간 DateTimeFormatter를 통해 반환 형식 맞추도록 수정 * test: 쿠폰 생성, 스탬프 적립 인수 테스트 작성 * test: 쿠폰 생성 시 인증 예외 테스트 작성 * refactor: localDateTime String으로 저장하도록 수정 * test: 특정 카페에 방문한 고객 정보 조회 인수 테스트 작성 * refactor: ToString 제거 * test: 인증정보 예외 테스트 작성 * test: 사장의 고객 정보 조회, 고객의 적립중인 쿠폰 정보 조회 인수테스트 작성 * test: given when then 주석 작성 * [BE] chore: .gitignore 에 log 디렉토리 추가 (#429) * [BE] chore: 패키지 이동 (#430) * [BE] feat: 스탬프 적립 시 VisitHistory데이터를 추가한다. (#426) * feat: 스탬프 적립 시 VisitHistory에 데이터 추가 * test: 스탬프 적립 시 visitHistory.save() 호출 여부 테스트 작성 --------- Co-authored-by: yenawee <[email protected]> * [BE] refactor: 테스트 코드의 step, Fixture 공통 부분 분리 및 테스트 효율성 향상 (#432) * refactor: CafeCouponSettingIntegrationTest에서 Fixture 사용 * refactor: 카페 생성 메서드 추가 * refactor: CafeCouponSettingIntegrationTest 중복 코드 제거 * refactor: Fixture 분리 * refactor: REGISTER_CUSTOMER_JENA 상수 분리 * refactor: VisitorCafeFindAcceptanceTest 블랙박스 테스트로 변경 * refactor: 사용하지 않는 상수 삭제 * style: Acceptance 테스트 클래스 이름 변경 * refactor: DocsControllerTest에 한글 네이밍 어노테이션 추가 * refactor: ManagerCouponCommandAcceptanceTest을 블랙박스 테스트로 변경 * refactor: ManagerCouponCommandAcceptanceTest에서 기존의 step을 사용하도록 변경 * refactor: 고객 쿠폰 조회 요청 분리 * style: 테스트 클래스 이름 변경 * fix: 에러 나는 테스트 원상복구 * [FE] fix: 쿠폰 커스텀 페이지의 버그를 해결한다. (#396) * fix: mock data 백엔드와 똑같이 수정 * fix: 선택한 템플릿 이미지의 border를 부각시키는 스타일 삽입 * fix: imageUrl 반영이 안되는 이슈 해결 * feat: 쿠폰 디자인 미리보기 기능 추가 * chore: 쿠폰 스탬프 좌표 구체화 * refactor: 빈 컴포넌트 html 태그 사용 * feat: 라우트 변경 * refactor: 디렉토리 구조 변경 * chore: 필요없는 파일 삭제 * refactor: 쿠폰 템플릿/커스텀 페이지 분리 * feat: location 타입 지정 * refactor: 컴포넌트 외부로 mutation 코드 분리 * feat: 타입 구체화 및 유효성 로직 추가 * refactor: 공통된 훅 재사용 * refactor: 디렉토리 경로 수정 * feat: 쿠폰 미리보기 사진 미 선택 시 보여지는 기본 이미지 삽입 * feat: 커서 포인터 설정 * feat: 쿠폰 미리보기 이미지 추가 * feat: 쿠폰, 스탬프 초기 이미지 삽입 * fix: 명세에 맞는 변수명 사용 * refactor: 불필요한 console.log 제거 * refactor: 네이밍 일관성있게 변경 * fix: 템플릭 선택 마다 하이라이팅이 늦게되는 현상 해결 * fix: 메인 색상 변경 및 단축 평가 사용 * [FE] refactor: 카페 등록 페이지의 사이드바를 렌더링하지 않는다. (#433) * refactor: 카페 등록 페이지의 사이드바를 렌더링하지 않는다. * refactor:사이드바 early return으로 변경 * [FE] feat: 마이페이지의 리워드 사용내역 페이지를 구현한다. (#437) * feat: 리워드 사용 기록 관련 라우트 추가 * fix: 잘못된 msw 목데이터 수정 * feat: 데이터를 컴포넌트 뷰에 맞게 변환하는 로직 * feat: 리워드 페이지 마크업 구현 * refactor: 자료구조 변경 * refactor: 코드 축약 * refactor: 유틸 함수 이동 * feat: 네이밍 및 변수 인라인 * feat: 날짜 파싱 유틸 함수 추가 * fix: 타입 오류 수정 * refactor: 변수명 변경 * fix: api 명세에 맞게 mockData 수정 * refactor: 타입 선언 정정 * refactor: 네이밍 수정 * refactor: 시맨틱 태그 적용 * chore:TODO 주석 추가 * fix: 중복 import 제거 * fix: 사용 가능한 리워드는 usedAt, createdAt으로 같은 값을 반환하도록 변경 * test: 사용 가능한, 사용 완료한 리워드 조회 테스트 분리 (영호의 제안) * [BE] feat: 3차 데모데이까지의 API 명세 자동화를 위한 테스트 코드를 작성한다 (#428) * feat: VisitorCouponFindApiDocsControllerTest 작성 * feat: VisitorFavoritesCommandApiDocsControllerTest 작성 * feat: ManagerCafeCommandApiDocsControllerTest 작성 * feat: ManagerCafeCommandApiDocsControllerTest 작성 * feat: ManagerCafeCouponSettingCommandApiDocsControllerTest 작성 * feat: ManagerSampleCouponFindApiDocsControllerTest 작성 * feat: 3차 데모데이까지 API 명세 테스트 구현 * feat: 현재 develop 브랜치와 환경설정 동일하게 설정 * refactor: 중복 로직 제거 * feat: VisitorRewardFindController 생성 * feat: VisitorRewardsFindResponse 생성 * style: 클래스 이름 변경 * feat: 리워드를 보유 고객과 사용 여부로 필터링해 조회 * feat: Reward Entity에 id를 가지는 생성자 추가 * feat: RewardFixture 생성 * feat: Reward의 생성자에서 BaseDate를 받도록 수정 * feat: RewardFixture에서 시간 필드를 입력하도록 수정 * feat: VisitorRewardsFindResultDto에 정적 팩터리 메서드 추가 * feat: VisitorRewardsFindResponse에 정적 팩터리 메서드 추가 * style: RewardFixture 패키지 이동 * feat: 리워드 조회 서비스 구현 * feat: 리워드 조회 controller 구현 * feat: VisitorRewardFindController 생성 * style: 클래스 이름 변경 * feat: 사용 가능한 리워드는 updatedAt null 반환 * style: 불필요한 테스트 코드 삭제 * refactor: 날짜 변환 로직 response 객체로 이동 * refactor: @KorNamingConverter 어노테이션 추가 * fix: 사용 가능한 리워드는 usedAt, createdAt으로 같은 값을 반환하도록 변경 * test: 사용 가능한, 사용 완료한 리워드 조회 테스트 분리 (영호의 제안) * test: VisitorRewardsFindControllerTest 결과 내용까지 테스트 * test: given, when, then 주석 추가 * refactor: RewardFixture에 private 생성자 추가 --------- Co-authored-by: yenawee <[email protected]> Co-authored-by: youngh0 <[email protected]> Co-authored-by: 2yunseong <[email protected]> Co-authored-by: 박정규 <[email protected]> * [FE] refactor: 템플릿 및 사이드바 디자인 개편 (#441) * refactor: 템플릿 및 사이드바 디자인 개편 Co-authored-by: 박정규 <[email protected]> * refactor: 커스텀 템플릿 페이지 라우팅 변경 * design: 스타일 변경 --------- Co-authored-by: 박정규 <[email protected]> * [BE] feat: 쿠폰 삭제 기능을 구현한다 (#440) * feat: findByIdAndCustomerId 기능 구현 및 테스트 작성 * feat: coupon 삭제 기능 구현 및 테스트 * feat: deleteCoupon 기능 구현 및 테스트 * feat: deleteCoupon Api 구현 및 테스트 * refactor: soft delete 적용 * refactor: soft delete 조회 @Where 추가 * test (#446) * [ALL] chore: Jenkins CI test (#448) * [ALL] fix: change WebHook Content-Type (#449) * [BE] test: 테스트 코드 효율성 향상 (#447) * refactor: ControllerTest 생성 * refactor: ControllerTest 생성 * refactor: ControllerTest를 상속받도록 테스트코드 변경 * refactor: ServiceSliceTest 어노테이션 생성 * refactor: ServiceSliceTest 어노테이션을 사용하도록 변경 * style: 테스트클래스 이름 변경 * style: 테스트클래스 이름 변경 * style: 사용하지 않는 import 삭제 * style: 개행 공백 제거 * [BE] feat: OAuth 최초 요청에 대해서 Resource Server에 접근할 Redirect URI 응답 (#462) * feat: Interceptor에서 login URI 제외 * feat: state 생성용 util 클래스 생성 * feat: 최초 oauth 요청에 대해 redirect uri 응답 * [BE] feat: /api/owners/oauth/naver에 대해서 인증 제외 (#463) * feat: /api/owners/oauth/naver에 대해서 인증 제외 * feat: API Post로 변경 * feat: oAuth 테스트를 위한 배포 (#464) Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * [BE] feat: Login API Get 으로 변경 (#465) * refactor: ManagerAuthService 패키지 이동 * feat: ManagerAuthController GET으로 변경 --------- Co-authored-by: gitchan <[email protected]> * [FE] refactor: href로 링크 이동 (#466) * feat: oAuth 테스트를 위한 배포 Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * refactor: href로 수정 --------- Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * hotfix: 라이브러리 삭제 (#467) * refactor: 카카오로 테스트 (#468) * [BE] feat: 카카오 로그인 요청 API 생성 (#469) * [BE] refactor: 고객의 방문횟수 계산하는 로직을 수정한다 (#472) * refactor: coupons 에서 방문횟수와 첫 방문일 구하는 로직 삭제 * feat: VisitHistories 일급컬렉션 생성 * refactor: VisitHistory 생성자 추가 * refactor: CustomerCouponStatistics 에서 visitCount 와 firstVisitDate 삭제 * refactor: ManagerCouponFindService 에서 방문횟수 구하는 로직 수정 * refactor: 방문횟수 구하는 로직 리팩터링으로 깨지는 테스트 수정 * test: ManagerCouponFindServiceTest 작성 * test: 카페의 고객 목록 조회 인수테스트 작성 * test: local 에선 테스트 성공하는데 깃허브 액션 시 테스트 실패해서 @EqualsAndHashCode 적용 * test: @EqualsAndHashcode 제거 * test: 다시 @EqualsAndHashcode 적용 * test: assert 방식 수정 * refactor: CafeCustomerFindResponse 필드에 final 추가 * refactor: 메서드 이름 변경 * refactor: Comparator.comparing으로 변경 * refactor: 사용하지 않는 필드 삭제 * refactor: OwnerFixture를 사용하도록 수정 * refactor: sout 삭제 * test: fixture 적용으로 테스트 깨졌던 것 수정 * fix: OwnerFixture에 id 추가 * refactor: CafeCustomerFindResultDto 정팩메 -> 생성자로 생성되게 수정 * refactor: test 반환값 네이밍 수정 * refactor: test 상수값 변수로 추출 * test: VisitHistoryRepositoryTest 작성 * refactor: 고객의 카페 방문 이력을 찾을 수 없을때 예외처리 --------- Co-authored-by: gitchan <[email protected]> * [BE] feat: 서브모듈 설정 (#473) * feat: 기존 설정파일 삭제 * feat: 서브모듈 설정 * fix: test 설정파일 sub module에서 제외 * [BE] feat: OAuth 최초 로그인 버튼 클릭 redirect URI 반환 API 생성 (#474) * feat: 불필요한 코드 제거 * feat: 카카오 로그인 최초 요청 매핑 * refactor: 로그 출력용 코드 제거 * fix: OAuth 관련 컴포넌트 test에서 제외 * [FE] feat: 로딩, 에러 컴포넌트를 구현한다. (#455) * feat: 로딩 컴포넌트 생성 및 적용 * feat: Suspense 적용 * refactor: Suspense 제거 * feat: NotFound 페이지 생성 * [FE] fix: 고객 목록의 스탬프 개수 등 고객 목록 최신화 안되는 오류 (#459) * fix: 고객 목록의 스탬프 개수 등 고객 목록 최신화 안되는 오류 * refactor: orderCustomer 메서드에 타입지정 * [BE] feat: 4차 데모데이 기능구현한 API 명세 테스트를 작성한다 (#457) * test: 고객 쿠폰 삭제 API 문서화 테스트 * test: 고객 리워드 조회 API 문서화 테스트 * test: 고객 스탬프 적립내역 조회 API 문서화 테스트 * [BE] refactor: auth 관련 pattern 수정 (#478) * feat: 테스트용 로그 작성 (#479) * [BE] feat: cloud watch log test (#480) * feat: 테스트용 로그 작성 * feat: 테스트용 로그 작성 --------- Co-authored-by: JunDonghyuk <[email protected]> * [BE] feat: cloud watch log test (#481) * feat: 테스트용 로그 작성 * feat: 테스트용 로그 작성 * feat: 테스트용 로그 작성 * feat: sub-module생성 (#482) * [BE] feat: sub module (#483) * feat: sub-module생성 * feat: sub-module변경 * [BE] feat: Sub module설정 변경 (#484) * feat: .gitmodules수정 * feat: .gitmodules수정 * feat: yml import변경 * [BE] feat: Sub module 수정 (#485) * feat: .gitmodules수정 * feat: .gitmodules수정 * feat: yml import변경 * feat: .gitmodules변경 * [BE] refactor: 주석 제거 (#486) Co-authored-by: yenawee <[email protected]> * [FE] test: Jenkins 파이프라인 테스트용 커밋 (#487) Co-authored-by: yenawee <[email protected]> * [BE] fix: 테스트 실패 해결 (#488) Co-authored-by: yenawee <[email protected]> * [FE] refactor: 사장모드 디자인 2차 개선 (#450) * feat: 영덕폰트 적용 Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * feat: sideBar 아이콘 추가 Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * feat: footer 구현 및 SideBar 컴포넌트 리팩토링 * refactor: 고객목록에서 고객이 없을때, 많을때 스크롤되게 구현 * refactor: 카페관리 페이지 디자인 개선 * chore: font-weight 수정 * feat: index 문제 개선, 디자인 개선 * refactor: 사용하지 않는 주석 제거, 코드리뷰 반영 --------- Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> * [FE] feat: 마이페이지의 스탬프 적립내역 페이지를 구현한다. (#453) * feat: 스탬프 적립 내역 조회 라우트 설정 * feat: api 로직 작성 및 mock 데이터 추가 * chore: 불필요한 파일 삭제 * fix: 라우터 경로 키 값 수정 * feat: 함수 추상화로 재사용성 증진 * feat: msw 스탬프 적립내역 조회 작성 * refactor: 유틸함수 분리 * fix: 중복되는 타입 수정 * refactor: 라우트 수정 * chore: mock data 변경 * refactor: 오탈자 변경 * refactor: 재사용성을 위한 코드 수정 * feat: 스탬프 적립 내역 페이지 구현 * refactor: 날짜 파싱 옵션 변수 상수화 * refactor: 콜백 메서드 분리 * refactor: 의미가 다른 네이밍 변경 * chore: 콘솔 로그 제거 * refactor: 히스토리 디렉토리 생성 * refactor: lint 경고 수정 * fix: 리뷰 반영 * [FE] feat: oAuth 연결 (#492) * feat: 토근 발급 위한 AuthPage 페이지 뼈대 구현 * feat: Token localStorge set, get 로직 구현 * feat: token 발급을 위한 get 요청에는 header auth 코드가 들어가지 않도록 * chore: msw 다시 on * chore: 사장모드에는 흰색 로고 적용 * chore: style 코드 분리 * chore: 주석제거 * refactor: 긴 글자 대응 * feat: oAuth 테스트 Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> --------- Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> Co-authored-by: 2yunseong <[email protected]> * [BE] refactor: 남은 리워드 개수 구하는 로직 수정 (#477) * fix: 잘못된 import문 수정 (#493) * fix: 주석 제거 (#496) * [BE] fix: 불필요한 클래스 (소셜 로그인 관련) 제거 (#494) Co-authored-by: yenawee <[email protected]> * [BE] feat: 카페 사장이 카페 쿠폰 세팅을 조회한다. (#495) * feat: 카페 디자인 조회 서비스 기능 구현 및 테스트 * feat: 카페 디자인 조회 api 기능 구현 및 테스트 * [FE] fix: oAuth 테스트 중 발견한 이슈 해결 (#498) * fix: 주석 제거 * fix: 테스트 중 발견한 오류 해결 * chore: 주석 제거 * [BE] refactor: 이전 정책의 쿠폰인지 확인하는 로직을 수정한다 (#454) * refactor: CafePolicy 생성자 롬복으로 변경 * refactor: 이전 정책인지 확인하는 책임을 Coupon 에게 위임 * test: 리팩터링 후 깨지는 테스트 수정 * test: 인수테스트 작성 * refactor: 인수테스트가 Step 객체의 코드 사용하도록 리팩터링 * refactor: 메서드 이름 수정 * refactor: 카페 정책이 없는 경우 예외 처리 * refactor: coupon.isPrevious() 코드 리팩터링 * refactor: isPrevious 메세지를 CouponPolicy 객체에 던지도록 수정 * fix: merge conflict 해결 Co-authored-by: yenawee <[email protected]> --------- Co-authored-by: gitchan <[email protected]> Co-authored-by: 깃짱 <[email protected]> * [BE] feat: 카카오 소셜 로그인 구현 (#501) * feat: OAuth를 위한 의존성 추가 * feat: OAuth Client를 위한 설정 추가 * feat: OAuth 종류 구분용 provider 생성 * feat: OAuth Owner 생성 * feat: OAuth 관련 코드 작성 (테스트 코드 깨짐) * fix: 테스트코드 통과하게 수정 * feat: jwt 토큰 발급까지 구현(로컬확인) * refactor: 개행 수정 * feat: URI 정리 * feat: Owner의 name 자바 변수만 nickname으로 변경 * feat: Owner를 닉네임으로 조회하는 메서드 추가 * feat: OAuth Owner 생성 * feat: jwt 토큰 발급까지 구현(로컬확인) * feat: URI 정리 * feat: Owner 객체에 OAuth로 받는 정보 추가 (Transient 필드로 일단 추가함) Co-authored-by: yenawee <[email protected]> * refactor: OAuth에서 Owner를 사용하도록 수정 Co-authored-by: yenawee <[email protected]> * feat: OAuth Owner 생성 * feat: jwt 토큰 발급까지 구현(로컬확인) * feat: URI 정리 * feat: jwt 토큰 발급까지 구현(로컬확인) * feat: URI 정리 * refactor: OAuthOwner 삭제 Co-authored-by: yenawee <[email protected]> * refactor: 패키지 정리 Co-authored-by: yenawee <[email protected]> * feat: Interceptor에서 Bearer 헤더도 처리하도록 변경 Co-authored-by: yenawee <[email protected]> * feat: OAuth id를 받아오도록 카카오 API 받아오는 로직 수정 Co-authored-by: yenawee <[email protected]> * feat: Owner를 OAuthProvider, OAuthId로 조회 Co-authored-by: yenawee <[email protected]> * fix: CouponRepositoryTest NPE 해결 Co-authored-by: yenawee <[email protected]> * help: 영호씨 확인 요망 Co-authored-by: yenawee <[email protected]> * feat: Login에서 구분 식별자 변경 (메서드 중복 추가) Co-authored-by: yenawee <[email protected]> * refactor: interceptor 인증 헤더 없이도 통과하는 URI 추가 Co-authored-by: yenawee <[email protected]> * feat: 롬복 테스트 의존성 추가 Co-authored-by: yenawee <[email protected]> * help: Bean 예외 발생 Co-authored-by: yenawee <[email protected]> * fix: test 깨지는거 수정 * fix: test 깨지는거 수정 * fix: Visitor OAuth 클래스도 구현 * fix: 깨지는 테스트 수정 * feat: Manager, Visitor의 Client 분리 Co-authored-by: yenawee <[email protected]> * feat: 테스트용 http 파일 추가 (토큰은 매번 당시 것으로 바꿔서 테스트해야함) Co-authored-by: yenawee <[email protected]> * feat: Token 요청 프론트엔드에서 오도록 수정 Co-authored-by: yenawee <[email protected]> * feat: Owner를 찾는 로직을 닉네임 기준에서 oauthProvider, oauthId로 수정 Co-authored-by: yenawee <[email protected]> * feat: Customer nickname 필드에 @Column(name = "name") 어노테이션 제거 Co-authored-by: yenawee <[email protected]> * test: OAuthProvider와 OAuthId로 고객 조회 테스트 --------- Co-authored-by: yenawee <[email protected]> * fix: 카페등록 페이지 오류 해결 (#505) * [FE] fix: token 고객 사장 바껴들어간 것 수정 (#506) * chore: 주석제거 * chore: text color 수정 * refactor: 사장모드 로그인 페이지 디자인 수정 Co-authored-by: 박정규 <[email protected]> --------- Co-authored-by: 박정규 <[email protected]> * [FE] refactor: 하드코딩된 cafeId를 api 에서 불러온 값으로 변경한다. (#507) * feat: cafeId가 존재하지 않으면 리다이렉트 되는 custom Hook 선언 * refactor: 하드코딩된 useMutateCouponPolicy 제거 * refactor: 리워드 사용 페이지에서 사용하던 하드 코딩된 cafeId 제거 * refactor: 쿠폰 선택 페이지 cafeId 체크 * chore: 불필요한 속성 제거 * feat: 카페 등록이 안됐을 경우 alert API로 사용자에게 알려주는 기능 구현 * fix: 쿠폰 조회 시 하드코딩된 cafeId 값 모두 서버 데이터 패칭으로 변경 * feat: 입력 페이지 cafeId 없을 시 리다이렉트 * refactor: hook 이름 변경 * refactor: 변경된 이름에 따른 경로 수정 * feat: 카페 등록 시 refetch 하는 로직 추가 * feat: stale time infinity 설정 * [BE] feat: 이미지 업로드 기능 구현 (#511) * feat: s3 설정 * feat: imageUploader 구현 * refactor: ImageUploader 수정 * [FE] fix: 고객 모드 오류 수정 (#516) * [BE] feat: 이미지 업로드 예외 추가 (#517) * feat: s3 설정 * feat: imageUploader 구현 * refactor: ImageUploader 수정 * refactor: custom exception 정의 * [FE] bug: 사장 모드의 내 카페 관리 탭에서 introduction 필드가 null 일 때의 상황을 처리한다 (#518) * fix: introduction에서 발생한 오류를 해결 * fix: null에 대해 대응한다 * [BE] refactor: s3 수정 (#522) * feat: s3 설정 * feat: imageUploader 구현 * refactor: ImageUploader 수정 * refactor: custom exception 정의 * test: s3 * [BE] fix: s3 수정 (#525) * feat: s3 설정 * feat: imageUploader 구현 * refactor: ImageUploader 수정 * refactor: custom exception 정의 * test: s3 * fix: aws 정보 수정 * [BE] fix: 디렉터리 별 저장 기능 구현 (#530) * fix: 디렉터리 별 저장 기능 구현 * refactor: 응답 타입 수정 * fix: testYml 수정 * [BE] feat: 고객의 전화번호 저장 API (#513) * feat: 고객의 전화번호 저장 API Controller 생성 * style: 패키지 이름 변경 * feat: Customer phoneNumber에 unique 제약조건 추가 * feat: 고객의 전화번호 저장 service 작성 * feat: 고객의 전화번호 저장 controller 작성 * fix: phone number unique 조건에 맞게 상수값 변경 * feat: RegisterCustomer loginId, password setter 작성 * test: 고객의 전화번호 등록 인수테스트 작성 * refactor: 기존 커스텀 예외를 사용하도록 변경 * [BE] fix: warning 로그 찍히도록 수정 (#531) * fix: warning 로그 찍히도록 수정 * fix: warning 로그 찍히도록 수정 * feat: couponDesign api 적용 (#504) * [FE] feat: 이미지 업로드 기능을 백엔드와 연동한다. (#534) * feat: 이미지 업로드 기능 구현 * feat: 업로드 크기 제한 설정 * fix: api 수정 요청에 의한 엔드포인트 변경 - 일단 histories로 쓰기로 하였음 * fix: 템플릿 뒷면이 안올라오는 오류 해결 * [FE] feat: 로그아웃 및 프로필 조회 기능 구현 (#537) * [FE] fix: 렌더링 오류 해결 (#536) * [BE] feat: 고객의 프로필 정보를 조회해오는 API 를 구현한다 (#540) * feat: 프로필 조회 API 기능 구현 * feat: 인수 테스트 작성 * [FE] feat: 고객의 전화번호 등록 플로우 추가에 의한 api 명세 변경에 대응한다. (#533) * feat: router, api 생성 * feat: 로그인 레이아웃 구성 및 기능 구현 * feat: 프로필 조회 및 admin 초반 라우팅 수정 Co-authored-by: 강영민 <[email protected]> --------- Co-authored-by: 강영민 <[email protected]> * fix: 오류 해결 중 (#542) * [FE] fix: 스크롤이 안되는 오류 및 하드코딩 코드 제거 (#539) * fix: 카페 id 하드코딩 값 제거 * fix: scroll이 오버되는 문제 해결 * [FE] Hotfix: 헤더 추가, 리다이렉팅, 로그아웃 오류 해결 (#543) * fix: 리다이렉팅, 로그아웃 오류 수정 * fix: 헤더 추가 * fix: 환경 변수 설정 * [FE] fix: infinite re-rendering 해결 (#544) * [FE] fix: 로컬스토리, api 명세와 불일치 오류 해결 (#545) * fix: api 명세에 따른 변경 * fix: 로컬스토리지 문제 해결 테스트 * [FE] fix: api 명세따른 변경 (#546) * [FE] fix: history api 수정 (#547) * [FE] fix: bearer null 오류 해결 (#548) * [BE] fix: 스탬프가 없는 쿠폰을 가지고 있는 고객이 존재하면 방문이력 에러 발생 없앰 (임시 방편) (#550) * [BE] fix: Phone Number 수정 Request에 기본 생성자 추가 (#549) * style: 클래스 이름 변경 * fix: Request 객체에 기본 생성자 추가 * [FE] fix: 새 쿠폰 발급이 선택 안되는 문제 (#551) * [FE] fix: coupons:[]일 때 대응 (#554) * [FE] fix: 리워드 사용 잘못된 api 요청 수정 (#553) * fix: 카멜 케이스 라우터 변경 * fix: 명세에 잘못된 값 전달 수정 * [BE] fix: Request Getter 수동 추가 (#555) * style: 클래스 이름 변경 * fix: Request 객체에 기본 생성자 추가 * test: 전화번호 등록 서비스 springboottest 추가 * fix: getter 수동 생성 * feat: 전화번호 출력 로그 추가 * test: 전화번호 등록 서비스 springboottest 추가 * fix: getter 수동 생성 * feat: 전화번호 출력 로그 추가 * [FE] fix: 기존 쿠폰이 쿠폰이 없는 경우 신규 쿠폰이 발급되지 않는 문제 (#558) * [FE] fix: 쿠폰 발급 오류 해결 (#560) * [BE] fix: PhoneNumber 바인딩 문제 해결 + 그런데, 회원가입 API까지 만들어버린... (#559) * feat: Visitor 회원가입 테스트용 API 작성 * refactor: 테스트 코드에서 builder 요소 추가 * feat: Request, Step 생성 * fix: ResponseBody 어노테이션 추가 * refactor: VisitorJoinStep 분리 * fix: 실패하는 테스트 Disabled * [BE] fix: api 명세에 맞게 반환 수정 (#561) * [FE] feat: profiles msw구현 (#557) * feat: profiles msw구현 * fix: 고객모드 href .env 값으로 수정 * fix: 디자인 수정 * fix: 전화번호 등록 라우팅 버그 수정 * [BE] fix: data formatting 수정 (#564) * [FE] fix: api 응답 속성 잘못된 영문법 수정 (#563) * fix: api 응답 속성에서 잘못된 영문법 수정 * fix: parameter 에 의존성 부여 * [BE] fix: api 명세 프론트와 통일 (#565) * [BE] refactor: Request DTO로 날짜 formatting 코드 이동 (#569) * [BE] feat: Coupon 즐겨찾기에 따라 정렬 (#571) * feat: Coupon 즐겨찾기에 따라 정렬 * fix: 즐겨찾기 해제된 쿠폰이 앞으로 정렬되도록 수정 * [FE] fix: 전화번호 등록 버그 및 디자인 수정 (#573) * fix: 쿠폰 디자인 수정 * fix: 아이패드 클릭 대응 * fix: 전화번호입력 페이지로 안가는 문제 수정 * [BE] feat: 사장이 고객의 쿠폰 조회 시 쿠폰 발급 당시 이미지 조회 (#572) * feat: 사장이 고객의 쿠폰 조회 시 쿠폰 발급 당시 이미지 조회 * refactor: wildcard import제거 * [FE] refactor: 디자인 서버 (#575) * [FE] fix: 카페사진 오류 수정 (#574) --------- Co-authored-by: JunDonghyuk <[email protected]> Co-authored-by: 깃짱 <[email protected]> Co-authored-by: 강영민 <[email protected]> Co-authored-by: youngh0 <[email protected]> Co-authored-by: 2yunseong <[email protected]> Co-authored-by: 박정규 <[email protected]> Co-authored-by: 2yunseong <[email protected]> Co-authored-by: gitchan <[email protected]> Co-authored-by: JunDonghyuk <[email protected]>
- Loading branch information