Skip to content

Commit

Permalink
feat: 스탬프크러쉬 런칭 (#576)
Browse files Browse the repository at this point in the history
* 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
10 people authored Aug 17, 2023
1 parent 922c47b commit 3a43bbb
Show file tree
Hide file tree
Showing 493 changed files with 24,438 additions and 1 deletion.
10 changes: 9 additions & 1 deletion .github/ISSUE_TEMPLATE/기능구현.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name: 기능구현
about: 새로운 기능 이슈 등록
title: "[FE/BE] feat:"
labels: 기능구현
labels: ''
assignees: ''

---
Expand All @@ -15,4 +15,12 @@ assignees: ''

<br/>

## 체크리스트

- [ ] `assignee` 설정 (선택)
- [ ] `labels` 설정
- [ ] `milestone` 설정

<br/>

## 주의사항
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/리팩터링.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,12 @@ assignees: ''

<br/>

## 체크리스트

- [ ] `assignee` 설정 (선택)
- [ ] `labels` 설정
- [ ] `milestone` 설정

<br/>

## 주의사항
17 changes: 17 additions & 0 deletions .github/ISSUE_TEMPLATE/버그-리포트.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
name: 버그 리포트
about: '스탬프크러쉬 서비스를 사용하면서 생긴 버그 리포트용 '
title: ''
labels: ''
assignees: ''

---

## 버그 기능
- 페이지 캡쳐나, 기능을 적어주세요.

## 버그 상황
- 버그 상황에 대해서 간단히 설명해 주세요.

## 기대 동작
- 기대했던 동작에 대해서 설명해 주세요.
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/버그리포트.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
## 버그 기능
- 페이지 캡쳐나, 기능을 적어주세요.

## 버그 상황
- 버그 상황에 대해서 간단히 설명해 주세요.

## 기대 동작
- 기대했던 동작에 대해서 설명해 주세요.
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/버그수정.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,12 @@ assignees: ''

<br/>

## 체크리스트

- [ ] `assignee` 설정 (선택)
- [ ] `labels` 설정
- [ ] `milestone` 설정

<br/>

## 주의사항
10 changes: 10 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
## 주요 변경사항

## 리뷰어에게...

## 관련 이슈

closes

## 체크리스트

- [ ] `reviewers` 설정
- [ ] `label` 설정
- [ ] `milestone` 설정
59 changes: 59 additions & 0 deletions .github/workflows/backend_ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: 스탬프크러쉬 백엔드 CI 테스트 자동화

on:
pull_request:
branches:
- main
- develop
paths: 'backend/**'

defaults:
run:
working-directory: backend

jobs:
build:

runs-on: ubuntu-latest

steps:
- name: 리포지토리를 가져옵니다
uses: actions/checkout@v3
# with:
# token: ${{ secrets.SUBMODULE_TOKEN }}
# submodules: recursive

- name: JDK 17을 설치합니다
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'

- name: Gradle 명령 실행을 위한 권한을 부여합니다
run: chmod +x gradlew

- name: Gradle build를 수행합니다
run: ./gradlew build

- name: 테스트 결과를 PR에 코멘트로 등록합니다
uses: EnricoMi/publish-unit-test-result-action@v1
if: always()
with:
files: '**/build/test-results/test/TEST-*.xml'

- name: 테스트 실패 시, 실패한 코드 라인에 Check 코멘트를 등록합니다
uses: mikepenz/action-junit-report@v3
if: always()
with:
report_paths: '**/build/test-results/test/TEST-*.xml'
token: ${{ github.token }}

- name: build 실패 시 Slack으로 알립니다
uses: 8398a7/action-slack@v3
with:
status: ${{ job.status }}
author_name: 백엔드 빌드 실패 알림
fields: repo, message, commit, author, action, eventName, ref, workflow, job, took
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
if: failure()
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "backend/src/main/resources/security"]
path = backend/src/main/resources/security
url = https://github.com/woowacourse-teams/2023-stamp-crush-submodule.git
8 changes: 8 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

44 changes: 44 additions & 0 deletions backend/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
HELP.md
.gradle
build/
!gradle/wrapper/gradle-wrapper.jar
!**/src/main/**/build/
!**/src/test/**/build/

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
bin/
!**/src/main/**/bin/
!**/src/test/**/bin/

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
out/
!**/src/main/**/out/
!**/src/test/**/out/

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/

### VS Code ###
.vscode/

http-requests-log.http

/src/main/resources/static/docs

logs/
was-logs/
91 changes: 91 additions & 0 deletions backend/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
buildscript {
ext {
restdocsApiSpecVersion = '0.18.2'
}
}

plugins {
id 'java'
id 'org.springframework.boot' version '3.1.1'
id 'io.spring.dependency-management' version '1.1.0'

id 'com.epages.restdocs-api-spec' version "${restdocsApiSpecVersion}"
id 'org.hidetake.swagger.generator' version '2.18.2'
}

group = 'com.stampcrush'
version = '0.0.1-SNAPSHOT'

java {
sourceCompatibility = '17'
}

configurations {
compileOnly {
extendsFrom annotationProcessor
}
}

repositories {
mavenCentral()
}

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-validation'
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.4'

implementation 'org.springframework.cloud:spring-cloud-starter-aws:2.2.6.RELEASE'

compileOnly 'org.projectlombok:lombok'
runtimeOnly 'com.h2database:h2'
runtimeOnly 'com.mysql:mysql-connector-j'

annotationProcessor 'org.projectlombok:lombok'

testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'io.rest-assured:rest-assured:5.3.1'
testImplementation 'org.springframework.restdocs:spring-restdocs-mockmvc'
testImplementation 'org.projectlombok:lombok'
testImplementation "com.epages:restdocs-api-spec-mockmvc:${restdocsApiSpecVersion}"

implementation 'io.jsonwebtoken:jjwt-api:0.11.5'
implementation 'io.jsonwebtoken:jjwt-impl:0.11.5'
implementation 'io.jsonwebtoken:jjwt-jackson:0.11.5'
}

tasks.named('test') {
useJUnitPlatform()
}

openapi3 {
setServer("http://localhost:8080")
title = "스탬프크러쉬 API Docs"
description = "스탬프크러쉬 API 명세서"
version = "0.0.1"
format = "json"

outputDirectory = 'build/resources/main/static/docs'
}

task createOutputDirectory {
doFirst {
file(openapi3.outputDirectory).mkdirs()
}
}

tasks.withType(GenerateSwaggerUI) {
dependsOn 'openapi3'

delete file('src/main/resources/static/docs/')
copy {
from "build/resources/main/static/docs"
into "src/main/resources/static/docs/"

}
}

bootJar {
dependsOn 'createOutputDirectory', ':openapi3'
}
Binary file added backend/gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
6 changes: 6 additions & 0 deletions backend/gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Loading

0 comments on commit 3a43bbb

Please sign in to comment.