Skip to content

Commit

Permalink
[refactor] 패키지 이동 (#458)
Browse files Browse the repository at this point in the history
* style: 패키지 이동

- co.fineants.api 구조로 변경

* style: 코드 정리

* feat: 사용하지 않는 코드 제거

* fix: 갱신 주기 오타 수정

* Release 0.0.6 (#453)

* feat: 종목 및 배당 일정 최신화 기능 cron 표현식 수정 (#428)

릴리즈 서버는 7시에 수행, 프로덕션은 8시에 수행

* [refactor] 종목 및 배당일정 초기화 코드 개선 (#429)

* feat: 접근 제한자 private 변경 및 트랜잭션 애노테이션 제거

* feat: usd 환율 생성 로직 추가

* style: 코드 정리

* style: 메서드 순서 정리

* feat: 관리자 및 매니저 정보 프로퍼티화

* feat: 관리자 및 매니저 프로퍼티 추가

* refactor: createMemberIfNotFound 메서드 코드 수정

* refactor: 알림 환경설정 초기화 메서드 분리

* refactor: createRoleIfNotFound 메서드명 변경

db에 저장하는 것이기 때문에 save가 더 적절하다고 생각함

* refactor: findOrCreateRole 메서드로 분리

* style: 코드 정리

* rename: SetUpDataLoader 클래스명 변경

* feat: SetupDataLoader 클래스로 분리

* refactor: supplierNotFoundRoleExpceiton 메서드로 분리

* refactor: createExchangeRateIfNotFount 메서드명 변경

* refactor: 스트림 형식으로 변경

* feat: 시크릿 정보 수정

- 역할 정보 추가

* feat: RoleProperties 추가

* feat: 역할별 getter 추가

* refactor: Role 리소스 생성 로직 스트림으로 변경

* refactor: getter 제거 및 클래스명 RoleProperty로 변경

* style: 코드 정리

* test: setupResources 테스트 추가

* test: setupResources 테스트에 멤버 검증문 추가

* test: Authentication 검증문 추가

* test: 검증문 추가

* style: 주석 추가

* test: 환율 검증문 추가

* teset: kisService 객체 모킹

* test: 종목 검증문 추가 및 종목 초기화 로직 추가

* feat: readDividendCsv 메서드 구현

* rename: stocks.csv, dividends.csv 파일을 test/resources로 이동

* feat: 배당금 초기화 추가

* feat: UserProperties 추가

* rename: properties 파일 이동

* feat: 시크릿 정보 변경

- 샘플 유저 추가

* docs: mysql script 제거

* feat: Stock.parse 정적 팩토리 메서드에 예외 캐치 추가

* feat: stocks.csv -> stocks.txt로 변경

* test: 테스트 문제 해결

* feat: parseCsvLine 구현

- Ltd가 포함된 종목은 쉼표를 포함하고 있기 때문에 원할한 쉼표 분할을 위해서 별도의 패턴을 구현함

* feat: Pattern 변경

* test: 테스트 실패 해결

* feat: 시크릿 정보 변경

- csv 파일로 변경

* [refactor] kisClient 리팩토링 (#432)

* feat: 예외 발생시 로깅

* feat: 예외 처리

* refatcotr: 불필요한 샘플 종목 생성 코드 제거

* feat: AbstractContainerBaseTest 추상화

* feat: AstractContainerBaseTest 추상 클래스로 변경

* feat: CheckedKisAccessToken 애노테이션 추가

- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.

* test: fetchDividend 테스트 추가

* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현

* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가

* test: 테스트 문제 해결

* refactor: fetchDividend 기존 aop 제거

* feat: 메서드 바꿔치기

* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정

* test: kisAccessToken tearDown 처리

* test: zzFetchCurrentPrice 테스트 추가

해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정

* refactor: fetchCurrentPrice 시그니처 변경

* test: 테스트명 fetchCurrentPrice로 변경

* refactor: 모의 도메인 webClient 제거

* refactor: 모의 도메인 webClient 스프링 빈 제거

* refactor: fetchClosingPrice 시그니처 변경

* test: fetchClosingPrice 테스트 추가

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

* test: fetchDividendAll 테스트 추가

* refactor: fetchDividendAll 메서드 Mono<List<KisDividend>> 반환하도록 변경

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

* feat: basicIso 메서드 추출

* feat: basicIso 매개변수명 변경

* feat: fetchSearchStockInfo 메서드 시그니처 변경

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

* feat: KisProperties로 클래스명 변경

* feat: tokenUrl 시크릿 정보 변경

* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경

* refactor: KisAccessTokenRequest 클래스 생성

* feat: 액세스 토큰 전달 방식 변경

- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경

* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘

* refactor: KisHeader enum 클래스 추가 및 헤더를 교체

* feat: KisHeaderBuilder 구현

* feat: fetchDividend header 변경

* refactor: header 변경

* feat: KisTrIdProperties 클래스 추가

해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디

* refactor: 생성자 변경

* refactor: kisTrIdProperties 객체를 이용하여 변경

* test: kisService에서 액세스 토큰 실패 테스트 제거

* feat: KisQueryParamBuilder 클래스 구현

* refactor: 쿼리파라미터 enum으로 변경

* feat: kis 시크릿 정보 변경

- tr-id 추가

* refactor: fetchDividend 쿼리파라미터 빌더로 변경

* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경

* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경

* style: 코드 정리

* feat: KisCodeValue 인터페이스 정의 및 구현체 구현

* rename: 패키지 이동

* feat: FidPeriodDivCode enum 클래스 구현

* feat: FidOrgAdjPrc enum 클래스 구현

* feat: 배당금 종류인 GB1 enum 클래스 구현

* feat: 상품유형 코드 enum 클래스 구현

* feat: CustomerType enum 클래스 구현

* style: 코드 정리

* [refactor] kisClient 리팩토링 (#433)

* feat: 예외 발생시 로깅

* feat: 예외 처리

* refatcotr: 불필요한 샘플 종목 생성 코드 제거

* feat: AbstractContainerBaseTest 추상화

* feat: AstractContainerBaseTest 추상 클래스로 변경

* feat: CheckedKisAccessToken 애노테이션 추가

- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.

* test: fetchDividend 테스트 추가

* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현

* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가

* test: 테스트 문제 해결

* refactor: fetchDividend 기존 aop 제거

* feat: 메서드 바꿔치기

* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정

* test: kisAccessToken tearDown 처리

* test: zzFetchCurrentPrice 테스트 추가

해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정

* refactor: fetchCurrentPrice 시그니처 변경

* test: 테스트명 fetchCurrentPrice로 변경

* refactor: 모의 도메인 webClient 제거

* refactor: 모의 도메인 webClient 스프링 빈 제거

* refactor: fetchClosingPrice 시그니처 변경

* test: fetchClosingPrice 테스트 추가

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

* test: fetchDividendAll 테스트 추가

* refactor: fetchDividendAll 메서드 Mono<List<KisDividend>> 반환하도록 변경

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

* feat: basicIso 메서드 추출

* feat: basicIso 매개변수명 변경

* feat: fetchSearchStockInfo 메서드 시그니처 변경

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

* feat: KisProperties로 클래스명 변경

* feat: tokenUrl 시크릿 정보 변경

* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경

* refactor: KisAccessTokenRequest 클래스 생성

* feat: 액세스 토큰 전달 방식 변경

- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경

* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘

* refactor: KisHeader enum 클래스 추가 및 헤더를 교체

* feat: KisHeaderBuilder 구현

* feat: fetchDividend header 변경

* refactor: header 변경

* feat: KisTrIdProperties 클래스 추가

해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디

* refactor: 생성자 변경

* refactor: kisTrIdProperties 객체를 이용하여 변경

* test: kisService에서 액세스 토큰 실패 테스트 제거

* feat: KisQueryParamBuilder 클래스 구현

* refactor: 쿼리파라미터 enum으로 변경

* feat: kis 시크릿 정보 변경

- tr-id 추가

* refactor: fetchDividend 쿼리파라미터 빌더로 변경

* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경

* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경

* style: 코드 정리

* feat: KisCodeValue 인터페이스 정의 및 구현체 구현

* rename: 패키지 이동

* feat: FidPeriodDivCode enum 클래스 구현

* feat: FidOrgAdjPrc enum 클래스 구현

* feat: 배당금 종류인 GB1 enum 클래스 구현

* feat: 상품유형 코드 enum 클래스 구현

* feat: CustomerType enum 클래스 구현

* style: 코드 정리

* test: 테스트 실해 해결

currentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐

* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거

- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거

* fix: 액세스 토큰 발급 문제 해결

* [refactor] currentPriceRepository 개선 (#435)

* rename: 메서드명을 fetchCurrentPrice로 변경

* refactor: 현재가 조회 모듈 리팩토링

* refactor: redis key, value 메서드 추가

* rename: currentPriceRepository 클래스명 변경

* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경

* [fix] 매입 이력 알람 리스너 문제 해결 (#438)

* refactor: 현재가 갱신 단순 스트림 방식으로 변경

* refactor: 불필요한 메서드 제거

* refactor: toArray 메서드로 분리

* feat: Flux 방식으로 변경

* fix: Mono.error 모킹 해결

* feat: 현재가 조회 부분을 반복문에서 람다로 변경

* refactor: Flux 형태로 현잭가 조회 개선

* style: 코드 정리

* style: 코드 정리

* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경

PortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김

* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환

* fix: todo 제거

* feat: 불변 컬렉션 반환으로 인한 코드 제거

* style: 코드 정리

* style: 로깅 제거

* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경

* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가

* feat: @eventlistener를 @TransactionalEventListener로 변경

* feat: github action 워크플로우에 설정 추가

* feat: clear문 추가

* test: beforeEach에 clear 추가

* fix: 현재가 조회에 retry 연산 추가 (#442)

* hotfix: onErrorResume 연산 제거

- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측

* [fix] 액세스 토큰 Aspect 수정 (#445)

* feat: retry연산에서 재시도 시간을 1분으로 변경

* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가

* feat: @CheckKisAccessToken 추가

* feat: accessToken 필드 null 처리

* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가

* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리

* [fix] 액세스 토큰 재발급 문제 해결  (#446)

* test: 액세스 토큰 만료시 예외케이스 추가

* fix: Flux 방식에서 단순 반복문으로 변경

- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화

* test: 테스트 수정

* test: todo 주석 추가

* feat: kisException 객체로 매핑하여 반환하도록 변경

* test: 테스트 실패 해결

* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가

* feat: returnCode, messageCode 필드 추가

* feat: KisException의 서브 클래스 추가

* feat: onErrorResume 및 retryWhen 연산 수정

- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환
- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함

* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정

- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환

* feat: 한국투자증권 서버의 에러 응답 객체 구

* rename: 클래스명 변경

* refactor: toException 메서드 변경

- switch 문으로 개선

* test: Exception 생성 부분을 정적 팩토리 호출로 변경

* refactor: null 체크 조건문 삭제

* feat: 재시도 연산이 실패했을시 onErrorResume 추가

* test: 재시도 연산이 실패시 예외 테스트 추가

* test: kisClient 모킹 처리

* test: 다수 종목 갱신 테스트 추가

* refactor: Flux 방식으로 변경

* refactor: onErrorResume 연산 수정

* test: 테스트 코드 수정

* feat: 액세스 토큰 관련 예외 추가

* feat: accessToken 널 체크 추가

* feat: doOnSuccess 연산 추가

* feat: CredeintailsTypeException 조건 추가

* fix: @CheckKisAccessToken 애노테이션 제거

- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함

* feat: deleteAccessToken api 추가

* feat: kisService에 액세스 토큰 체크 애노테이션 추가

* test: 레디스 클리너 추가

* fix: 메서드명 변경

* refactor: fetchDividend 반환 타입 변경

* rename: 메서드명 변경

* rename: 메서드명 변경

* refactor: delayManager로 변경

* test: delayManager 추가하여 테스트 실패 해결

* test: delayManager를 @SpyBean으로 변경

* test: holidayManager 필드 제거

* feat: 액세스 토큰 재발급 관련 수정

* fix: 테스트 실패 해결

* fix: currentPrice 조회에 에러 폴백 연산 추가

* fix: checkAccessToken 애노테이션 추가

* [fix] 액세스 토큰 갱신 구조 변경 (#449)

* feat: TIMEOUT 필드 이름 변경

* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경

* test: 테스트 실패 해결

* test: 상장 종목 조회의 예외 케이스 추가

* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경

* test: 테스트 실패 해결

* test: todo 추가 및 새로운 테스트 추가

- 도중에 blocking되지 않아야함

* fix: fetchDividend 메서드 반환타입을 Flux로 변경

* test: 테스트 추가

* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가

* fix: checkAccessToken 애노테이션으로 변경

* fix: onErrorResume 연산 추가

* feat: 로깅 추가

* test: 테스트 제거

* feat: 액세스 토큰을 재발급하는 스케줄러 구현

* test: 액세스 토큰 재발급하는 테스트 추가

* feat: 스케줄러 주기 변경

* fix: aop 제거 및 애노테이션 제거

* refactor: 종가 저장소 개선

* feat: 애노테이션 제거

* rename: 패키지 이동

* style: 코드 정리

* [feat] �배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)

* feat: Portfolio의 LocalDate 모킹

* feat: StockDividend 필드에 isDeleted 컬럼 추가

* [style] 코드 정리 (#452)

* feat: Portfolio의 LocalDate 모킹

* feat: StockDividend 필드에 isDeleted 컬럼 추가

* feat: DividendDates 임베디드 클래스 추가

* feat: StockDividendParser 추가

* feat: 생성자 압축

* refactor: 객체지향적으로 변경

* refactor: Stock 필드에 LocalDateTimeService 추가

* refactor: StockParser 추가 및 분리

* style: 코드 정리

* fix: HashTable 변경

* style: equals 재정의

* refactor: 불필요한 메서드 인수 제거

* Refactor: file.delete 개선

* style: 코드 정리

* style: sonarLint에 따른 코드 정리

* fix: 테스트 실패 해결

* style:: 코드 정리

* test: 테스트 해결

* style: 코드 정리

* [feat] �배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)

* feat: Portfolio의 LocalDate 모킹

* feat: StockDividend 필드에 isDeleted 컬럼 추가

* test: 테스트 실패 해결

* [refactor] kisClient 리팩토링 (#433)

* feat: 예외 발생시 로깅

* feat: 예외 처리

* refatcotr: 불필요한 샘플 종목 생성 코드 제거

* feat: AbstractContainerBaseTest 추상화

* feat: AstractContainerBaseTest 추상 클래스로 변경

* feat: CheckedKisAccessToken 애노테이션 추가

- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.

* test: fetchDividend 테스트 추가

* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현

* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가

* test: 테스트 문제 해결

* refactor: fetchDividend 기존 aop 제거

* feat: 메서드 바꿔치기

* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정

* test: kisAccessToken tearDown 처리

* test: zzFetchCurrentPrice 테스트 추가

해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정

* refactor: fetchCurrentPrice 시그니처 변경

* test: 테스트명 fetchCurrentPrice로 변경

* refactor: 모의 도메인 webClient 제거

* refactor: 모의 도메인 webClient 스프링 빈 제거

* refactor: fetchClosingPrice 시그니처 변경

* test: fetchClosingPrice 테스트 추가

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

* test: fetchDividendAll 테스트 추가

* refactor: fetchDividendAll 메서드 Mono<List<KisDividend>> 반환하도록 변경

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

* feat: basicIso 메서드 추출

* feat: basicIso 매개변수명 변경

* feat: fetchSearchStockInfo 메서드 시그니처 변경

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

* feat: KisProperties로 클래스명 변경

* feat: tokenUrl 시크릿 정보 변경

* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경

* refactor: KisAccessTokenRequest 클래스 생성

* feat: 액세스 토큰 전달 방식 변경

- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경

* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘

* refactor: KisHeader enum 클래스 추가 및 헤더를 교체

* feat: KisHeaderBuilder 구현

* feat: fetchDividend header 변경

* refactor: header 변경

* feat: KisTrIdProperties 클래스 추가

해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디

* refactor: 생성자 변경

* refactor: kisTrIdProperties 객체를 이용하여 변경

* test: kisService에서 액세스 토큰 실패 테스트 제거

* feat: KisQueryParamBuilder 클래스 구현

* refactor: 쿼리파라미터 enum으로 변경

* feat: kis 시크릿 정보 변경

- tr-id 추가

* refactor: fetchDividend 쿼리파라미터 빌더로 변경

* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경

* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경

* style: 코드 정리

* feat: KisCodeValue 인터페이스 정의 및 구현체 구현

* rename: 패키지 이동

* feat: FidPeriodDivCode enum 클래스 구현

* feat: FidOrgAdjPrc enum 클래스 구현

* feat: 배당금 종류인 GB1 enum 클래스 구현

* feat: 상품유형 코드 enum 클래스 구현

* feat: CustomerType enum 클래스 구현

* style: 코드 정리

* [refactor] kisClient 리팩토링 (#432)

* feat: 예외 발생시 로깅

* feat: 예외 처리

* refatcotr: 불필요한 샘플 종목 생성 코드 제거

* feat: AbstractContainerBaseTest 추상화

* feat: AstractContainerBaseTest 추상 클래스로 변경

* feat: CheckedKisAccessToken 애노테이션 추가

- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.

* test: fetchDividend 테스트 추가

* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현

* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가

* test: 테스트 문제 해결

* refactor: fetchDividend 기존 aop 제거

* feat: 메서드 바꿔치기

* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정

* test: kisAccessToken tearDown 처리

* test: zzFetchCurrentPrice 테스트 추가

해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정

* refactor: fetchCurrentPrice 시그니처 변경

* test: 테스트명 fetchCurrentPrice로 변경

* refactor: 모의 도메인 webClient 제거

* refactor: 모의 도메인 webClient 스프링 빈 제거

* refactor: fetchClosingPrice 시그니처 변경

* test: fetchClosingPrice 테스트 추가

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

* test: fetchDividendAll 테스트 추가

* refactor: fetchDividendAll 메서드 Mono<List<KisDividend>> 반환하도록 변경

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

* feat: basicIso 메서드 추출

* feat: basicIso 매개변수명 변경

* feat: fetchSearchStockInfo 메서드 시그니처 변경

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

* feat: KisProperties로 클래스명 변경

* feat: tokenUrl 시크릿 정보 변경

* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경

* refactor: KisAccessTokenRequest 클래스 생성

* feat: 액세스 토큰 전달 방식 변경

- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경

* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘

* refactor: KisHeader enum 클래스 추가 및 헤더를 교체

* feat: KisHeaderBuilder 구현

* feat: fetchDividend header 변경

* refactor: header 변경

* feat: KisTrIdProperties 클래스 추가

해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디

* refactor: 생성자 변경

* refactor: kisTrIdProperties 객체를 이용하여 변경

* test: kisService에서 액세스 토큰 실패 테스트 제거

* feat: KisQueryParamBuilder 클래스 구현

* refactor: 쿼리파라미터 enum으로 변경

* feat: kis 시크릿 정보 변경

- tr-id 추가

* refactor: fetchDividend 쿼리파라미터 빌더로 변경

* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경

* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경

* style: 코드 정리

* feat: KisCodeValue 인터페이스 정의 및 구현체 구현

* rename: 패키지 이동

* feat: FidPeriodDivCode enum 클래스 구현

* feat: FidOrgAdjPrc enum 클래스 구현

* feat: 배당금 종류인 GB1 enum 클래스 구현

* feat: 상품유형 코드 enum 클래스 구현

* feat: CustomerType enum 클래스 구현

* style: 코드 정리

* [refactor] kisClient 리팩토링 (#433)

* feat: 예외 발생시 로깅

* feat: 예외 처리

* refatcotr: 불필요한 샘플 종목 생성 코드 제거

* feat: AbstractContainerBaseTest 추상화

* feat: AstractContainerBaseTest 추상 클래스로 변경

* feat: CheckedKisAccessToken 애노테이션 추가

- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.

* test: fetchDividend 테스트 추가

* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현

* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가

* test: 테스트 문제 해결

* refactor: fetchDividend 기존 aop 제거

* feat: 메서드 바꿔치기

* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정

* test: kisAccessToken tearDown 처리

* test: zzFetchCurrentPrice 테스트 추가

해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정

* refactor: fetchCurrentPrice 시그니처 변경

* test: 테스트명 fetchCurrentPrice로 변경

* refactor: 모의 도메인 webClient 제거

* refactor: 모의 도메인 webClient 스프링 빈 제거

* refactor: fetchClosingPrice 시그니처 변경

* test: fetchClosingPrice 테스트 추가

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

* test: fetchDividendAll 테스트 추가

* refactor: fetchDividendAll 메서드 Mono<List<KisDividend>> 반환하도록 변경

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

* feat: basicIso 메서드 추출

* feat: basicIso 매개변수명 변경

* feat: fetchSearchStockInfo 메서드 시그니처 변경

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

* feat: KisProperties로 클래스명 변경

* feat: tokenUrl 시크릿 정보 변경

* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경

* refactor: KisAccessTokenRequest 클래스 생성

* feat: 액세스 토큰 전달 방식 변경

- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경

* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘

* refactor: KisHeader enum 클래스 추가 및 헤더를 교체

* feat: KisHeaderBuilder 구현

* feat: fetchDividend header 변경

* refactor: header 변경

* feat: KisTrIdProperties 클래스 추가

해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디

* refactor: 생성자 변경

* refactor: kisTrIdProperties 객체를 이용하여 변경

* test: kisService에서 액세스 토큰 실패 테스트 제거

* feat: KisQueryParamBuilder 클래스 구현

* refactor: 쿼리파라미터 enum으로 변경

* feat: kis 시크릿 정보 변경

- tr-id 추가

* refactor: fetchDividend 쿼리파라미터 빌더로 변경

* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경

* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경

* style: 코드 정리

* feat: KisCodeValue 인터페이스 정의 및 구현체 구현

* rename: 패키지 이동

* feat: FidPeriodDivCode enum 클래스 구현

* feat: FidOrgAdjPrc enum 클래스 구현

* feat: 배당금 종류인 GB1 enum 클래스 구현

* feat: 상품유형 코드 enum 클래스 구현

* feat: CustomerType enum 클래스 구현

* style: 코드 정리

* test: 테스트 실해 해결

currentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐

* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거

- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거

* fix: 액세스 토큰 발급 문제 해결

* [refactor] currentPriceRepository 개선 (#435)

* rename: 메서드명을 fetchCurrentPrice로 변경

* refactor: 현재가 조회 모듈 리팩토링

* refactor: redis key, value 메서드 추가

* rename: currentPriceRepository 클래스명 변경

* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경

* [fix] 매입 이력 알람 리스너 문제 해결 (#438)

* refactor: 현재가 갱신 단순 스트림 방식으로 변경

* refactor: 불필요한 메서드 제거

* refactor: toArray 메서드로 분리

* feat: Flux 방식으로 변경

* fix: Mono.error 모킹 해결

* feat: 현재가 조회 부분을 반복문에서 람다로 변경

* refactor: Flux 형태로 현잭가 조회 개선

* style: 코드 정리

* style: 코드 정리

* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경

PortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김

* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환

* fix: todo 제거

* feat: 불변 컬렉션 반환으로 인한 코드 제거

* style: 코드 정리

* style: 로깅 제거

* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경

* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가

* feat: @eventlistener를 @TransactionalEventListener로 변경

* feat: github action 워크플로우에 설정 추가

* feat: clear문 추가

* test: beforeEach에 clear 추가

* fix: 현재가 조회에 retry 연산 추가 (#442)

* hotfix: onErrorResume 연산 제거

- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측

* [fix] 액세스 토큰 Aspect 수정 (#445)

* feat: retry연산에서 재시도 시간을 1분으로 변경

* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가

* feat: @CheckKisAccessToken 추가

* feat: accessToken 필드 null 처리

* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가

* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리

* [fix] 액세스 토큰 재발급 문제 해결  (#446)

* test: 액세스 토큰 만료시 예외케이스 추가

* fix: Flux 방식에서 단순 반복문으로 변경

- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화

* test: 테스트 수정

* test: todo 주석 추가

* feat: kisException 객체로 매핑하여 반환하도록 변경

* test: 테스트 실패 해결

* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가

* feat: returnCode, messageCode 필드 추가

* feat: KisException의 서브 클래스 추가

* feat: onErrorResume 및 retryWhen 연산 수정

- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환
- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함

* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정

- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환

* feat: 한국투자증권 서버의 에러 응답 객체 구

* rename: 클래스명 변경

* refactor: toException 메서드 변경

- switch 문으로 개선

* test: Exception 생성 부분을 정적 팩토리 호출로 변경

* refactor: null 체크 조건문 삭제

* feat: 재시도 연산이 실패했을시 onErrorResume 추가

* test: 재시도 연산이 실패시 예외 테스트 추가

* test: kisClient 모킹 처리

* test: 다수 종목 갱신 테스트 추가

* refactor: Flux 방식으로 변경

* refactor: onErrorResume 연산 수정

* test: 테스트 코드 수정

* feat: 액세스 토큰 관련 예외 추가

* feat: accessToken 널 체크 추가

* feat: doOnSuccess 연산 추가

* feat: CredeintailsTypeException 조건 추가

* fix: @CheckKisAccessToken 애노테이션 제거

- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함

* feat: deleteAccessToken api 추가

* feat: kisService에 액세스 토큰 체크 애노테이션 추가

* test: 레디스 클리너 추가

* fix: 메서드명 변경

* refactor: fetchDividend 반환 타입 변경

* rename: 메서드명 변경

* rename: 메서드명 변경

* refactor: delayManager로 변경

* test: delayManager 추가하여 테스트 실패 해결

* test: delayManager를 @SpyBean으로 변경

* test: holidayManager 필드 제거

* feat: 액세스 토큰 재발급 관련 수정

* fix: 테스트 실패 해결

* fix: currentPrice 조회에 에러 폴백 연산 추가

* fix: checkAccessToken 애노테이션 추가

* [fix] 액세스 토큰 갱신 구조 변경 (#449)

* feat: TIMEOUT 필드 이름 변경

* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경

* test: 테스트 실패 해결

* test: 상장 종목 조회의 예외 케이스 추가

* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경

* test: 테스트 실패 해결

* test: todo 추가 및 새로운 테스트 추가

- 도중에 blocking되지 않아야함

* fix: fetchDividend 메서드 반환타입을 Flux로 변경

* test: 테스트 추가

* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가

* fix: checkAccessToken 애노테이션으로 변경

* fix: onErrorResume 연산 추가

* feat: 로깅 추가

* test: 테스트 제거

* feat: 액세스 토큰을 재발급하는 스케줄러 구현

* test: 액세스 토큰 재발급하는 테스트 추가

* feat: 스케줄러 주기 변경

* fix: aop 제거 및 애노테이션 제거

* refactor: 종가 저장소 개선

* feat: 애노테이션 제거

* rename: 패키지 이동

* style: 코드 정리

* [feat] �배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)

* feat: Portfolio의 LocalDate 모킹

* feat: StockDividend 필드에 isDeleted 컬럼 추가

* [style] 코드 정리 (#452)

* feat: Portfolio의 LocalDate 모킹

* feat: StockDividend 필드에 isDeleted 컬럼 추가

* feat: DividendDates 임베디드 클래스 추가

* feat: StockDividendParser 추가

* feat: 생성자 압축

* refactor: 객체지향적으로 변경

* refactor: Stock 필드에 LocalDateTimeService 추가

* refactor: StockParser 추가 및 분리

* style: 코드 정리

* fix: HashTable 변경

* style: equals 재정의

* refactor: 불필요한 메서드 인수 제거

* Refactor: file.delete 개선

* style: 코드 정리

* style: sonarLint에 따른 코드 정리

* fix: 테스트 실패 해결

* style:: 코드 정리

* test: 테스트 해결

* style: 코드 정리

* [feat] �배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)

* feat: Portfolio의 LocalDate 모킹

* feat: StockDividend 필드에 isDeleted 컬럼 추가

* test: 테스트 실패 해결

* [refactor] kisClient 리팩토링 (#433)

* feat: 예외 발생시 로깅

* feat: 예외 처리

* refatcotr: 불필요한 샘플 종목 생성 코드 제거

* feat: AbstractContainerBaseTest 추상화

* feat: AstractContainerBaseTest 추상 클래스로 변경

* feat: CheckedKisAccessToken 애노테이션 추가

- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.

* test: fetchDividend 테스트 추가

* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현

* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가

* test: 테스트 문제 해결

* refactor: fetchDividend 기존 aop 제거

* feat: 메서드 바꿔치기

* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정

* test: kisAccessToken tearDown 처리

* test: zzFetchCurrentPrice 테스트 추가

해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정

* refactor: fetchCurrentPrice 시그니처 변경

* test: 테스트명 fetchCurrentPrice로 변경

* refactor: 모의 도메인 webClient 제거

* refactor: 모의 도메인 webClient 스프링 빈 제거

* refactor: fetchClosingPrice 시그니처 변경

* test: fetchClosingPrice 테스트 추가

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

* test: fetchDividendAll 테스트 추가

* refactor: fetchDividendAll 메서드 Mono<List<KisDividend>> 반환하도록 변경

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

* feat: basicIso 메서드 추출

* feat: basicIso 매개변수명 변경

* feat: fetchSearchStockInfo 메서드 시그니처 변경

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

* feat: KisProperties로 클래스명 변경

* feat: tokenUrl 시크릿 정보 변경

* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경

* refactor: KisAccessTokenRequest 클래스 생성

* feat: 액세스 토큰 전달 방식 변경

- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경

* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘

* refactor: KisHeader enum 클래스 추가 및 헤더를 교체

* feat: KisHeaderBuilder 구현

* feat: fetchDividend header 변경

* refactor: header 변경

* feat: KisTrIdProperties 클래스 추가

해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디

* refactor: 생성자 변경

* refactor: kisTrIdProperties 객체를 이용하여 변경

* test: kisService에서 액세스 토큰 실패 테스트 제거

* feat: KisQueryParamBuilder 클래스 구현

* refactor: 쿼리파라미터 enum으로 변경

* feat: kis 시크릿 정보 변경

- tr-id 추가

* refactor: fetchDividend 쿼리파라미터 빌더로 변경

* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경

* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경

* style: 코드 정리

* feat: KisCodeValue 인터페이스 정의 및 구현체 구현

* rename: 패키지 이동

* feat: FidPeriodDivCode enum 클래스 구현

* feat: FidOrgAdjPrc enum 클래스 구현

* feat: 배당금 종류인 GB1 enum 클래스 구현

* feat: 상품유형 코드 enum 클래스 구현

* feat: CustomerType enum 클래스 구현

* style: 코드 정리

* style: 패키지 이동

- co.fineants.api 구조로 변경
  • Loading branch information
yonghwankim-dev authored Sep 1, 2024
1 parent 8e13ec5 commit 3a7f9b5
Show file tree
Hide file tree
Showing 580 changed files with 3,055 additions and 5,906 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants;
package co.fineants.api;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain;
package co.fineants.api.domain;

import java.time.LocalDateTime;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package codesquad.fineants.domain.common.count;
package co.fineants.api.domain.common.count;

import java.math.BigInteger;
import java.util.Objects;

import codesquad.fineants.domain.common.money.Expression;
import codesquad.fineants.domain.common.money.Money;
import co.fineants.api.domain.common.money.Expression;
import co.fineants.api.domain.common.money.Money;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.count;
package co.fineants.api.domain.common.count;

import java.math.BigInteger;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.count.valiator;
package co.fineants.api.domain.common.count.valiator;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package codesquad.fineants.domain.common.count.valiator;
package co.fineants.api.domain.common.count.valiator;

import java.math.BigInteger;

import codesquad.fineants.domain.common.count.Count;
import co.fineants.api.domain.common.count.Count;
import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import static codesquad.fineants.domain.common.money.Currency.*;
import static co.fineants.api.domain.common.money.Currency.*;

import org.jetbrains.annotations.NotNull;

import codesquad.fineants.domain.common.count.Count;
import co.fineants.api.domain.common.count.Count;

public class AverageDivision implements Expression {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import lombok.Getter;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import codesquad.fineants.domain.common.count.Count;
import co.fineants.api.domain.common.count.Count;

public interface Expression extends Comparable<Expression> {
Money reduce(Bank bank, Currency to);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import static codesquad.fineants.domain.common.money.Currency.*;
import static co.fineants.api.domain.common.money.Currency.*;

import java.math.BigDecimal;
import java.math.BigInteger;
Expand All @@ -10,7 +10,7 @@

import org.jetbrains.annotations.NotNull;

import codesquad.fineants.domain.common.count.Count;
import co.fineants.api.domain.common.count.Count;

public class Money implements Expression {
private static final DecimalFormat DECIMAL_FORMAT = new DecimalFormat("#,###");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import java.math.BigDecimal;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import java.util.Objects;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import java.io.IOException;
import java.math.BigDecimal;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import jakarta.persistence.AttributeConverter;
import jakarta.persistence.Converter;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Objects;

import org.jetbrains.annotations.NotNull;

import codesquad.fineants.domain.common.count.Count;
import co.fineants.api.domain.common.count.Count;

public class RateDivision implements Expression {

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import java.math.BigDecimal;

import org.jetbrains.annotations.NotNull;

import codesquad.fineants.domain.common.count.Count;
import co.fineants.api.domain.common.count.Count;

public class Subtraction implements Expression {
private final Expression augend;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package codesquad.fineants.domain.common.money;
package co.fineants.api.domain.common.money;

import java.math.BigDecimal;

import org.jetbrains.annotations.NotNull;

import codesquad.fineants.domain.common.count.Count;
import co.fineants.api.domain.common.count.Count;

public class Sum implements Expression {
private final Expression augend;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.money.valiator;
package co.fineants.api.domain.common.money.valiator;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.common.money.valiator;
package co.fineants.api.domain.common.money.valiator;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package codesquad.fineants.domain.common.money.valiator;
package co.fineants.api.domain.common.money.valiator;

import codesquad.fineants.domain.common.money.Money;
import co.fineants.api.domain.common.money.Money;
import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package codesquad.fineants.domain.common.money.valiator;
package co.fineants.api.domain.common.money.valiator;

import codesquad.fineants.domain.common.money.Money;
import co.fineants.api.domain.common.money.Money;
import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package codesquad.fineants.domain.common.notification;
package co.fineants.api.domain.common.notification;

import codesquad.fineants.domain.notification.domain.dto.response.NotifyMessage;
import codesquad.fineants.domain.notificationpreference.domain.entity.NotificationPreference;
import co.fineants.api.domain.notification.domain.dto.response.NotifyMessage;
import co.fineants.api.domain.notificationpreference.domain.entity.NotificationPreference;

public interface Notifiable {
Long fetchMemberId();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
package codesquad.fineants.domain.dividend.controller;
package co.fineants.api.domain.dividend.controller;

import org.springframework.security.access.annotation.Secured;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import codesquad.fineants.domain.dividend.service.StockDividendService;
import codesquad.fineants.global.api.ApiResponse;
import codesquad.fineants.global.success.StockDividendSuccessCode;
import codesquad.fineants.infra.s3.service.AmazonS3DividendService;
import co.fineants.api.domain.dividend.service.StockDividendService;
import co.fineants.api.global.api.ApiResponse;
import co.fineants.api.global.success.StockDividendSuccessCode;
import co.fineants.api.infra.s3.service.AmazonS3DividendService;
import lombok.RequiredArgsConstructor;

@RestController
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package codesquad.fineants.domain.dividend.domain.calculator;
package co.fineants.api.domain.dividend.domain.calculator;

import java.time.DayOfWeek;
import java.time.LocalDate;

import codesquad.fineants.domain.kis.repository.HolidayRepository;
import co.fineants.api.domain.kis.repository.HolidayRepository;
import lombok.RequiredArgsConstructor;

@RequiredArgsConstructor
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.dividend.domain.dto.response;
package co.fineants.api.domain.dividend.domain.dto.response;

import java.time.LocalDate;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.dividend.domain.dto.response;
package co.fineants.api.domain.dividend.domain.dto.response;

import java.time.LocalDate;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
package codesquad.fineants.domain.dividend.domain.entity;
package co.fineants.api.domain.dividend.domain.entity;

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

import org.apache.logging.log4j.util.Strings;

import codesquad.fineants.domain.dividend.domain.calculator.ExDividendDateCalculator;
import codesquad.fineants.domain.dividend.domain.reader.HolidayFileReader;
import codesquad.fineants.domain.kis.repository.HolidayRepository;
import codesquad.fineants.domain.purchasehistory.domain.entity.PurchaseHistory;
import co.fineants.api.domain.dividend.domain.calculator.ExDividendDateCalculator;
import co.fineants.api.domain.dividend.domain.reader.HolidayFileReader;
import co.fineants.api.domain.kis.repository.HolidayRepository;
import co.fineants.api.domain.purchasehistory.domain.entity.PurchaseHistory;
import jakarta.persistence.Column;
import jakarta.persistence.Embeddable;
import lombok.AccessLevel;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package codesquad.fineants.domain.dividend.domain.entity;
package co.fineants.api.domain.dividend.domain.entity;

import java.time.LocalDate;
import java.util.List;

import codesquad.fineants.domain.BaseEntity;
import codesquad.fineants.domain.common.count.Count;
import codesquad.fineants.domain.common.money.Expression;
import codesquad.fineants.domain.common.money.Money;
import codesquad.fineants.domain.common.money.MoneyConverter;
import codesquad.fineants.domain.purchasehistory.domain.entity.PurchaseHistory;
import codesquad.fineants.domain.stock.domain.entity.Stock;
import co.fineants.api.domain.BaseEntity;
import co.fineants.api.domain.common.count.Count;
import co.fineants.api.domain.common.money.Expression;
import co.fineants.api.domain.common.money.Money;
import co.fineants.api.domain.common.money.MoneyConverter;
import co.fineants.api.domain.purchasehistory.domain.entity.PurchaseHistory;
import co.fineants.api.domain.stock.domain.entity.Stock;
import jakarta.persistence.Column;
import jakarta.persistence.Convert;
import jakarta.persistence.Embedded;
Expand Down Expand Up @@ -49,7 +49,7 @@ public class StockDividend extends BaseEntity {

@Column(name = "is_deleted", nullable = false)
private boolean isDeleted;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ticker_symbol")
private Stock stock;
Expand Down Expand Up @@ -152,7 +152,7 @@ public boolean isPaymentInCurrentYear(LocalDate localDate) {
public boolean hasInRangeForRecordDate(LocalDate from, LocalDate to) {
return dividendDates.hasInRangeForRecordDate(from, to);
}

public boolean equalPaymentDate(LocalDate paymentDate) {
return dividendDates.equalPaymentDate(paymentDate);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.dividend.domain.parser;
package co.fineants.api.domain.dividend.domain.parser;

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
Expand All @@ -7,9 +7,9 @@
import org.apache.logging.log4j.util.Strings;
import org.springframework.stereotype.Component;

import codesquad.fineants.domain.common.money.Money;
import codesquad.fineants.domain.dividend.domain.entity.StockDividend;
import codesquad.fineants.domain.stock.domain.entity.Stock;
import co.fineants.api.domain.common.money.Money;
import co.fineants.api.domain.dividend.domain.entity.StockDividend;
import co.fineants.api.domain.stock.domain.entity.Stock;

@Component
public class StockDividendParser {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.dividend.domain.reader;
package co.fineants.api.domain.dividend.domain.reader;

import java.io.BufferedReader;
import java.io.IOException;
Expand All @@ -13,7 +13,7 @@
import org.springframework.core.io.Resource;
import org.springframework.stereotype.Component;

import codesquad.fineants.domain.dividend.domain.dto.response.DividendDto;
import co.fineants.api.domain.dividend.domain.dto.response.DividendDto;

@Component
public class DividendFileReader {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.dividend.domain.reader;
package co.fineants.api.domain.dividend.domain.reader;

import java.io.BufferedReader;
import java.io.IOException;
Expand All @@ -13,7 +13,7 @@
import org.springframework.core.io.Resource;
import org.springframework.stereotype.Component;

import codesquad.fineants.domain.dividend.domain.dto.response.HolidayDto;
import co.fineants.api.domain.dividend.domain.dto.response.HolidayDto;

@Component
public class HolidayFileReader {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package codesquad.fineants.domain.dividend.repository;
package co.fineants.api.domain.dividend.repository;

import java.time.LocalDate;
import java.util.List;
Expand All @@ -10,7 +10,7 @@
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;

import codesquad.fineants.domain.dividend.domain.entity.StockDividend;
import co.fineants.api.domain.dividend.domain.entity.StockDividend;

public interface StockDividendRepository extends JpaRepository<StockDividend, Long> {

Expand Down
Loading

0 comments on commit 3a7f9b5

Please sign in to comment.