{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":714919141,"defaultBranch":"release","name":"FineAnts-was","ownerLogin":"fine-ants","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-11-06T05:39:33.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/147464557?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1725341949.0","currentOid":""},"activityList":{"items":[{"before":"63010ebcb4c6cbae01060ed2ce7e29f316064630","after":"334a4e18da39f4bbe265cdc05be4e3c73dc9d926","ref":"refs/heads/main","pushedAt":"2024-09-03T05:38:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Release 0.0.8 (#461)\n\n* feat: 종목 및 배당 일정 최신화 기능 cron 표현식 수정 (#428)\r\n\r\n릴리즈 서버는 7시에 수행, 프로덕션은 8시에 수행\r\n\r\n* [refactor] 종목 및 배당일정 초기화 코드 개선 (#429)\r\n\r\n* feat: 접근 제한자 private 변경 및 트랜잭션 애노테이션 제거\r\n\r\n* feat: usd 환율 생성 로직 추가\r\n\r\n* style: 코드 정리\r\n\r\n* style: 메서드 순서 정리\r\n\r\n* feat: 관리자 및 매니저 정보 프로퍼티화\r\n\r\n* feat: 관리자 및 매니저 프로퍼티 추가\r\n\r\n* refactor: createMemberIfNotFound 메서드 코드 수정\r\n\r\n* refactor: 알림 환경설정 초기화 메서드 분리\r\n\r\n* refactor: createRoleIfNotFound 메서드명 변경\r\n\r\ndb에 저장하는 것이기 때문에 save가 더 적절하다고 생각함\r\n\r\n* refactor: findOrCreateRole 메서드로 분리\r\n\r\n* style: 코드 정리\r\n\r\n* rename: SetUpDataLoader 클래스명 변경\r\n\r\n* feat: SetupDataLoader 클래스로 분리\r\n\r\n* refactor: supplierNotFoundRoleExpceiton 메서드로 분리\r\n\r\n* refactor: createExchangeRateIfNotFount 메서드명 변경\r\n\r\n* refactor: 스트림 형식으로 변경\r\n\r\n* feat: 시크릿 정보 수정\r\n\r\n- 역할 정보 추가\r\n\r\n* feat: RoleProperties 추가\r\n\r\n* feat: 역할별 getter 추가\r\n\r\n* refactor: Role 리소스 생성 로직 스트림으로 변경\r\n\r\n* refactor: getter 제거 및 클래스명 RoleProperty로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* test: setupResources 테스트 추가\r\n\r\n* test: setupResources 테스트에 멤버 검증문 추가\r\n\r\n* test: Authentication 검증문 추가\r\n\r\n* test: 검증문 추가\r\n\r\n* style: 주석 추가\r\n\r\n* test: 환율 검증문 추가\r\n\r\n* teset: kisService 객체 모킹\r\n\r\n* test: 종목 검증문 추가 및 종목 초기화 로직 추가\r\n\r\n* feat: readDividendCsv 메서드 구현\r\n\r\n* rename: stocks.csv, dividends.csv 파일을 test/resources로 이동\r\n\r\n* feat: 배당금 초기화 추가\r\n\r\n* feat: UserProperties 추가\r\n\r\n* rename: properties 파일 이동\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- 샘플 유저 추가\r\n\r\n* docs: mysql script 제거\r\n\r\n* feat: Stock.parse 정적 팩토리 메서드에 예외 캐치 추가\r\n\r\n* feat: stocks.csv -> stocks.txt로 변경\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* feat: parseCsvLine 구현\r\n\r\n- Ltd가 포함된 종목은 쉼표를 포함하고 있기 때문에 원할한 쉼표 분할을 위해서 별도의 패턴을 구현함\r\n\r\n* feat: Pattern 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- csv 파일로 변경\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* fix: 갱신 주기 오타 수정 (#456)\r\n\r\n* [refactor] 패키지 이동 (#458)\r\n\r\n* style: 패키지 이동\r\n\r\n- co.fineants.api 구조로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 사용하지 않는 코드 제거\r\n\r\n* fix: 갱신 주기 오타 수정\r\n\r\n* Release 0.0.6 (#453)\r\n\r\n* feat: 종목 및 배당 일정 최신화 기능 cron 표현식 수정 (#428)\r\n\r\n릴리즈 서버는 7시에 수행, 프로덕션은 8시에 수행\r\n\r\n* [refactor] 종목 및 배당일정 초기화 코드 개선 (#429)\r\n\r\n* feat: 접근 제한자 private 변경 및 트랜잭션 애노테이션 제거\r\n\r\n* feat: usd 환율 생성 로직 추가\r\n\r\n* style: 코드 정리\r\n\r\n* style: 메서드 순서 정리\r\n\r\n* feat: 관리자 및 매니저 정보 프로퍼티화\r\n\r\n* feat: 관리자 및 매니저 프로퍼티 추가\r\n\r\n* refactor: createMemberIfNotFound 메서드 코드 수정\r\n\r\n* refactor: 알림 환경설정 초기화 메서드 분리\r\n\r\n* refactor: createRoleIfNotFound 메서드명 변경\r\n\r\ndb에 저장하는 것이기 때문에 save가 더 적절하다고 생각함\r\n\r\n* refactor: findOrCreateRole 메서드로 분리\r\n\r\n* style: 코드 정리\r\n\r\n* rename: SetUpDataLoader 클래스명 변경\r\n\r\n* feat: SetupDataLoader 클래스로 분리\r\n\r\n* refactor: supplierNotFoundRoleExpceiton 메서드로 분리\r\n\r\n* refactor: createExchangeRateIfNotFount 메서드명 변경\r\n\r\n* refactor: 스트림 형식으로 변경\r\n\r\n* feat: 시크릿 정보 수정\r\n\r\n- 역할 정보 추가\r\n\r\n* feat: RoleProperties 추가\r\n\r\n* feat: 역할별 getter 추가\r\n\r\n* refactor: Role 리소스 생성 로직 스트림으로 변경\r\n\r\n* refactor: getter 제거 및 클래스명 RoleProperty로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* test: setupResources 테스트 추가\r\n\r\n* test: setupResources 테스트에 멤버 검증문 추가\r\n\r\n* test: Authentication 검증문 추가\r\n\r\n* test: 검증문 추가\r\n\r\n* style: 주석 추가\r\n\r\n* test: 환율 검증문 추가\r\n\r\n* teset: kisService 객체 모킹\r\n\r\n* test: 종목 검증문 추가 및 종목 초기화 로직 추가\r\n\r\n* feat: readDividendCsv 메서드 구현\r\n\r\n* rename: stocks.csv, dividends.csv 파일을 test/resources로 이동\r\n\r\n* feat: 배당금 초기화 추가\r\n\r\n* feat: UserProperties 추가\r\n\r\n* rename: properties 파일 이동\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- 샘플 유저 추가\r\n\r\n* docs: mysql script 제거\r\n\r\n* feat: Stock.parse 정적 팩토리 메서드에 예외 캐치 추가\r\n\r\n* feat: stocks.csv -> stocks.txt로 변경\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* feat: parseCsvLine 구현\r\n\r\n- Ltd가 포함된 종목은 쉼표를 포함하고 있기 때문에 원할한 쉼표 분할을 위해서 별도의 패턴을 구현함\r\n\r\n* feat: Pattern 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- csv 파일로 변경\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* style: 패키지 이동\r\n\r\n- co.fineants.api 구조로 변경\r\n\r\n* fix: sse 버그 해결 (#460)","shortMessageHtmlLink":"Release 0.0.8 (#461)"}},{"before":"5e0db8efa84b0e31f2f85708be45edf45331f36e","after":"b37e8a3ebf7aaca8c06fbbc5d96a0912fe9582e8","ref":"refs/heads/release","pushedAt":"2024-09-03T05:32:30.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Merge remote-tracking branch 'origin/release' into release","shortMessageHtmlLink":"Merge remote-tracking branch 'origin/release' into release"}},{"before":"afb71467fc57ae578e949b5cf8575cbd3fdbde8c","after":null,"ref":"refs/heads/hotfix/#459-sse","pushedAt":"2024-09-03T05:20:59.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"}},{"before":"3a7f9b5acb7145578bc632366f6e3fdb7db572c1","after":"5e0db8efa84b0e31f2f85708be45edf45331f36e","ref":"refs/heads/release","pushedAt":"2024-09-03T05:20:52.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"fix: sse 버그 해결 (#460)","shortMessageHtmlLink":"fix: sse 버그 해결 (#460)"}},{"before":"3a7f9b5acb7145578bc632366f6e3fdb7db572c1","after":"afb71467fc57ae578e949b5cf8575cbd3fdbde8c","ref":"refs/heads/hotfix/#459-sse","pushedAt":"2024-09-03T05:19:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"fix: sse 버그 해결","shortMessageHtmlLink":"fix: sse 버그 해결"}},{"before":null,"after":"3a7f9b5acb7145578bc632366f6e3fdb7db572c1","ref":"refs/heads/hotfix/#459-sse","pushedAt":"2024-09-03T05:14:42.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"[refactor] 패키지 이동 (#458)\n\n* style: 패키지 이동\r\n\r\n- co.fineants.api 구조로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 사용하지 않는 코드 제거\r\n\r\n* fix: 갱신 주기 오타 수정\r\n\r\n* Release 0.0.6 (#453)\r\n\r\n* feat: 종목 및 배당 일정 최신화 기능 cron 표현식 수정 (#428)\r\n\r\n릴리즈 서버는 7시에 수행, 프로덕션은 8시에 수행\r\n\r\n* [refactor] 종목 및 배당일정 초기화 코드 개선 (#429)\r\n\r\n* feat: 접근 제한자 private 변경 및 트랜잭션 애노테이션 제거\r\n\r\n* feat: usd 환율 생성 로직 추가\r\n\r\n* style: 코드 정리\r\n\r\n* style: 메서드 순서 정리\r\n\r\n* feat: 관리자 및 매니저 정보 프로퍼티화\r\n\r\n* feat: 관리자 및 매니저 프로퍼티 추가\r\n\r\n* refactor: createMemberIfNotFound 메서드 코드 수정\r\n\r\n* refactor: 알림 환경설정 초기화 메서드 분리\r\n\r\n* refactor: createRoleIfNotFound 메서드명 변경\r\n\r\ndb에 저장하는 것이기 때문에 save가 더 적절하다고 생각함\r\n\r\n* refactor: findOrCreateRole 메서드로 분리\r\n\r\n* style: 코드 정리\r\n\r\n* rename: SetUpDataLoader 클래스명 변경\r\n\r\n* feat: SetupDataLoader 클래스로 분리\r\n\r\n* refactor: supplierNotFoundRoleExpceiton 메서드로 분리\r\n\r\n* refactor: createExchangeRateIfNotFount 메서드명 변경\r\n\r\n* refactor: 스트림 형식으로 변경\r\n\r\n* feat: 시크릿 정보 수정\r\n\r\n- 역할 정보 추가\r\n\r\n* feat: RoleProperties 추가\r\n\r\n* feat: 역할별 getter 추가\r\n\r\n* refactor: Role 리소스 생성 로직 스트림으로 변경\r\n\r\n* refactor: getter 제거 및 클래스명 RoleProperty로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* test: setupResources 테스트 추가\r\n\r\n* test: setupResources 테스트에 멤버 검증문 추가\r\n\r\n* test: Authentication 검증문 추가\r\n\r\n* test: 검증문 추가\r\n\r\n* style: 주석 추가\r\n\r\n* test: 환율 검증문 추가\r\n\r\n* teset: kisService 객체 모킹\r\n\r\n* test: 종목 검증문 추가 및 종목 초기화 로직 추가\r\n\r\n* feat: readDividendCsv 메서드 구현\r\n\r\n* rename: stocks.csv, dividends.csv 파일을 test/resources로 이동\r\n\r\n* feat: 배당금 초기화 추가\r\n\r\n* feat: UserProperties 추가\r\n\r\n* rename: properties 파일 이동\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- 샘플 유저 추가\r\n\r\n* docs: mysql script 제거\r\n\r\n* feat: Stock.parse 정적 팩토리 메서드에 예외 캐치 추가\r\n\r\n* feat: stocks.csv -> stocks.txt로 변경\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* feat: parseCsvLine 구현\r\n\r\n- Ltd가 포함된 종목은 쉼표를 포함하고 있기 때문에 원할한 쉼표 분할을 위해서 별도의 패턴을 구현함\r\n\r\n* feat: Pattern 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- csv 파일로 변경\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* style: 패키지 이동\r\n\r\n- co.fineants.api 구조로 변경","shortMessageHtmlLink":"[refactor] 패키지 이동 (#458)"}},{"before":null,"after":"3a7f9b5acb7145578bc632366f6e3fdb7db572c1","ref":"refs/heads/feat/#436-price","pushedAt":"2024-09-01T03:23:18.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"[refactor] 패키지 이동 (#458)\n\n* style: 패키지 이동\r\n\r\n- co.fineants.api 구조로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 사용하지 않는 코드 제거\r\n\r\n* fix: 갱신 주기 오타 수정\r\n\r\n* Release 0.0.6 (#453)\r\n\r\n* feat: 종목 및 배당 일정 최신화 기능 cron 표현식 수정 (#428)\r\n\r\n릴리즈 서버는 7시에 수행, 프로덕션은 8시에 수행\r\n\r\n* [refactor] 종목 및 배당일정 초기화 코드 개선 (#429)\r\n\r\n* feat: 접근 제한자 private 변경 및 트랜잭션 애노테이션 제거\r\n\r\n* feat: usd 환율 생성 로직 추가\r\n\r\n* style: 코드 정리\r\n\r\n* style: 메서드 순서 정리\r\n\r\n* feat: 관리자 및 매니저 정보 프로퍼티화\r\n\r\n* feat: 관리자 및 매니저 프로퍼티 추가\r\n\r\n* refactor: createMemberIfNotFound 메서드 코드 수정\r\n\r\n* refactor: 알림 환경설정 초기화 메서드 분리\r\n\r\n* refactor: createRoleIfNotFound 메서드명 변경\r\n\r\ndb에 저장하는 것이기 때문에 save가 더 적절하다고 생각함\r\n\r\n* refactor: findOrCreateRole 메서드로 분리\r\n\r\n* style: 코드 정리\r\n\r\n* rename: SetUpDataLoader 클래스명 변경\r\n\r\n* feat: SetupDataLoader 클래스로 분리\r\n\r\n* refactor: supplierNotFoundRoleExpceiton 메서드로 분리\r\n\r\n* refactor: createExchangeRateIfNotFount 메서드명 변경\r\n\r\n* refactor: 스트림 형식으로 변경\r\n\r\n* feat: 시크릿 정보 수정\r\n\r\n- 역할 정보 추가\r\n\r\n* feat: RoleProperties 추가\r\n\r\n* feat: 역할별 getter 추가\r\n\r\n* refactor: Role 리소스 생성 로직 스트림으로 변경\r\n\r\n* refactor: getter 제거 및 클래스명 RoleProperty로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* test: setupResources 테스트 추가\r\n\r\n* test: setupResources 테스트에 멤버 검증문 추가\r\n\r\n* test: Authentication 검증문 추가\r\n\r\n* test: 검증문 추가\r\n\r\n* style: 주석 추가\r\n\r\n* test: 환율 검증문 추가\r\n\r\n* teset: kisService 객체 모킹\r\n\r\n* test: 종목 검증문 추가 및 종목 초기화 로직 추가\r\n\r\n* feat: readDividendCsv 메서드 구현\r\n\r\n* rename: stocks.csv, dividends.csv 파일을 test/resources로 이동\r\n\r\n* feat: 배당금 초기화 추가\r\n\r\n* feat: UserProperties 추가\r\n\r\n* rename: properties 파일 이동\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- 샘플 유저 추가\r\n\r\n* docs: mysql script 제거\r\n\r\n* feat: Stock.parse 정적 팩토리 메서드에 예외 캐치 추가\r\n\r\n* feat: stocks.csv -> stocks.txt로 변경\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* feat: parseCsvLine 구현\r\n\r\n- Ltd가 포함된 종목은 쉼표를 포함하고 있기 때문에 원할한 쉼표 분할을 위해서 별도의 패턴을 구현함\r\n\r\n* feat: Pattern 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- csv 파일로 변경\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* style: 패키지 이동\r\n\r\n- co.fineants.api 구조로 변경","shortMessageHtmlLink":"[refactor] 패키지 이동 (#458)"}},{"before":"3c11aec8c7b4031a6c359c3ad5d16a1e5c492338","after":null,"ref":"refs/heads/refactor/#454-domain","pushedAt":"2024-09-01T03:22:50.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"}},{"before":"8e13ec5b19b909c49b2775c9f165280a9b07af3f","after":"3a7f9b5acb7145578bc632366f6e3fdb7db572c1","ref":"refs/heads/release","pushedAt":"2024-09-01T03:22:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"[refactor] 패키지 이동 (#458)\n\n* style: 패키지 이동\r\n\r\n- co.fineants.api 구조로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 사용하지 않는 코드 제거\r\n\r\n* fix: 갱신 주기 오타 수정\r\n\r\n* Release 0.0.6 (#453)\r\n\r\n* feat: 종목 및 배당 일정 최신화 기능 cron 표현식 수정 (#428)\r\n\r\n릴리즈 서버는 7시에 수행, 프로덕션은 8시에 수행\r\n\r\n* [refactor] 종목 및 배당일정 초기화 코드 개선 (#429)\r\n\r\n* feat: 접근 제한자 private 변경 및 트랜잭션 애노테이션 제거\r\n\r\n* feat: usd 환율 생성 로직 추가\r\n\r\n* style: 코드 정리\r\n\r\n* style: 메서드 순서 정리\r\n\r\n* feat: 관리자 및 매니저 정보 프로퍼티화\r\n\r\n* feat: 관리자 및 매니저 프로퍼티 추가\r\n\r\n* refactor: createMemberIfNotFound 메서드 코드 수정\r\n\r\n* refactor: 알림 환경설정 초기화 메서드 분리\r\n\r\n* refactor: createRoleIfNotFound 메서드명 변경\r\n\r\ndb에 저장하는 것이기 때문에 save가 더 적절하다고 생각함\r\n\r\n* refactor: findOrCreateRole 메서드로 분리\r\n\r\n* style: 코드 정리\r\n\r\n* rename: SetUpDataLoader 클래스명 변경\r\n\r\n* feat: SetupDataLoader 클래스로 분리\r\n\r\n* refactor: supplierNotFoundRoleExpceiton 메서드로 분리\r\n\r\n* refactor: createExchangeRateIfNotFount 메서드명 변경\r\n\r\n* refactor: 스트림 형식으로 변경\r\n\r\n* feat: 시크릿 정보 수정\r\n\r\n- 역할 정보 추가\r\n\r\n* feat: RoleProperties 추가\r\n\r\n* feat: 역할별 getter 추가\r\n\r\n* refactor: Role 리소스 생성 로직 스트림으로 변경\r\n\r\n* refactor: getter 제거 및 클래스명 RoleProperty로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* test: setupResources 테스트 추가\r\n\r\n* test: setupResources 테스트에 멤버 검증문 추가\r\n\r\n* test: Authentication 검증문 추가\r\n\r\n* test: 검증문 추가\r\n\r\n* style: 주석 추가\r\n\r\n* test: 환율 검증문 추가\r\n\r\n* teset: kisService 객체 모킹\r\n\r\n* test: 종목 검증문 추가 및 종목 초기화 로직 추가\r\n\r\n* feat: readDividendCsv 메서드 구현\r\n\r\n* rename: stocks.csv, dividends.csv 파일을 test/resources로 이동\r\n\r\n* feat: 배당금 초기화 추가\r\n\r\n* feat: UserProperties 추가\r\n\r\n* rename: properties 파일 이동\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- 샘플 유저 추가\r\n\r\n* docs: mysql script 제거\r\n\r\n* feat: Stock.parse 정적 팩토리 메서드에 예외 캐치 추가\r\n\r\n* feat: stocks.csv -> stocks.txt로 변경\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* feat: parseCsvLine 구현\r\n\r\n- Ltd가 포함된 종목은 쉼표를 포함하고 있기 때문에 원할한 쉼표 분할을 위해서 별도의 패턴을 구현함\r\n\r\n* feat: Pattern 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- csv 파일로 변경\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* style: 패키지 이동\r\n\r\n- co.fineants.api 구조로 변경","shortMessageHtmlLink":"[refactor] 패키지 이동 (#458)"}},{"before":"c6fc72430158065ab431477c0fbf868c8b74c48a","after":"3c11aec8c7b4031a6c359c3ad5d16a1e5c492338","ref":"refs/heads/refactor/#454-domain","pushedAt":"2024-09-01T03:22:34.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Merge branch 'release' into refactor/#454-domain","shortMessageHtmlLink":"Merge branch 'release' into refactor/#454-domain"}},{"before":"2216f7cf5e724e06d0ff793d9041d21c7b79fa5a","after":"c6fc72430158065ab431477c0fbf868c8b74c48a","ref":"refs/heads/refactor/#454-domain","pushedAt":"2024-09-01T03:20:13.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"style: 패키지 이동\n\n- co.fineants.api 구조로 변경","shortMessageHtmlLink":"style: 패키지 이동"}},{"before":"2738c960dff3ede05b7a1ddd1f8d0d2999df4548","after":"63010ebcb4c6cbae01060ed2ce7e29f316064630","ref":"refs/heads/main","pushedAt":"2024-08-30T07:51:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Release 0.0.7 (#457)\n\n* feat: 종목 및 배당 일정 최신화 기능 cron 표현식 수정 (#428)\r\n\r\n릴리즈 서버는 7시에 수행, 프로덕션은 8시에 수행\r\n\r\n* [refactor] 종목 및 배당일정 초기화 코드 개선 (#429)\r\n\r\n* feat: 접근 제한자 private 변경 및 트랜잭션 애노테이션 제거\r\n\r\n* feat: usd 환율 생성 로직 추가\r\n\r\n* style: 코드 정리\r\n\r\n* style: 메서드 순서 정리\r\n\r\n* feat: 관리자 및 매니저 정보 프로퍼티화\r\n\r\n* feat: 관리자 및 매니저 프로퍼티 추가\r\n\r\n* refactor: createMemberIfNotFound 메서드 코드 수정\r\n\r\n* refactor: 알림 환경설정 초기화 메서드 분리\r\n\r\n* refactor: createRoleIfNotFound 메서드명 변경\r\n\r\ndb에 저장하는 것이기 때문에 save가 더 적절하다고 생각함\r\n\r\n* refactor: findOrCreateRole 메서드로 분리\r\n\r\n* style: 코드 정리\r\n\r\n* rename: SetUpDataLoader 클래스명 변경\r\n\r\n* feat: SetupDataLoader 클래스로 분리\r\n\r\n* refactor: supplierNotFoundRoleExpceiton 메서드로 분리\r\n\r\n* refactor: createExchangeRateIfNotFount 메서드명 변경\r\n\r\n* refactor: 스트림 형식으로 변경\r\n\r\n* feat: 시크릿 정보 수정\r\n\r\n- 역할 정보 추가\r\n\r\n* feat: RoleProperties 추가\r\n\r\n* feat: 역할별 getter 추가\r\n\r\n* refactor: Role 리소스 생성 로직 스트림으로 변경\r\n\r\n* refactor: getter 제거 및 클래스명 RoleProperty로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* test: setupResources 테스트 추가\r\n\r\n* test: setupResources 테스트에 멤버 검증문 추가\r\n\r\n* test: Authentication 검증문 추가\r\n\r\n* test: 검증문 추가\r\n\r\n* style: 주석 추가\r\n\r\n* test: 환율 검증문 추가\r\n\r\n* teset: kisService 객체 모킹\r\n\r\n* test: 종목 검증문 추가 및 종목 초기화 로직 추가\r\n\r\n* feat: readDividendCsv 메서드 구현\r\n\r\n* rename: stocks.csv, dividends.csv 파일을 test/resources로 이동\r\n\r\n* feat: 배당금 초기화 추가\r\n\r\n* feat: UserProperties 추가\r\n\r\n* rename: properties 파일 이동\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- 샘플 유저 추가\r\n\r\n* docs: mysql script 제거\r\n\r\n* feat: Stock.parse 정적 팩토리 메서드에 예외 캐치 추가\r\n\r\n* feat: stocks.csv -> stocks.txt로 변경\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* feat: parseCsvLine 구현\r\n\r\n- Ltd가 포함된 종목은 쉼표를 포함하고 있기 때문에 원할한 쉼표 분할을 위해서 별도의 패턴을 구현함\r\n\r\n* feat: Pattern 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- csv 파일로 변경\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* fix: 갱신 주기 오타 수정 (#456)","shortMessageHtmlLink":"Release 0.0.7 (#457)"}},{"before":"9818388662d94f5afe02bd890bbcb10e19cd1300","after":"8e13ec5b19b909c49b2775c9f165280a9b07af3f","ref":"refs/heads/release","pushedAt":"2024-08-30T07:51:14.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Merge branch 'main' into release","shortMessageHtmlLink":"Merge branch 'main' into release"}},{"before":"f664e67e381662523fd8fafbbaf4a0d779aa7560","after":"9818388662d94f5afe02bd890bbcb10e19cd1300","ref":"refs/heads/release","pushedAt":"2024-08-30T07:50:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"fix: 갱신 주기 오타 수정 (#456)","shortMessageHtmlLink":"fix: 갱신 주기 오타 수정 (#456)"}},{"before":"f664e67e381662523fd8fafbbaf4a0d779aa7560","after":"aacc66204b156d3e600201e271c74768883a211b","ref":"refs/heads/hotfix/#455-closing-price","pushedAt":"2024-08-30T07:49:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"fix: 갱신 주기 오타 수정","shortMessageHtmlLink":"fix: 갱신 주기 오타 수정"}},{"before":"f664e67e381662523fd8fafbbaf4a0d779aa7560","after":"2216f7cf5e724e06d0ff793d9041d21c7b79fa5a","ref":"refs/heads/refactor/#454-domain","pushedAt":"2024-08-30T07:46:35.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"fix: 갱신 주기 오타 수정","shortMessageHtmlLink":"fix: 갱신 주기 오타 수정"}},{"before":null,"after":"f664e67e381662523fd8fafbbaf4a0d779aa7560","ref":"refs/heads/hotfix/#455-closing-price","pushedAt":"2024-08-30T07:45:22.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Merge remote-tracking branch 'origin/release' into release","shortMessageHtmlLink":"Merge remote-tracking branch 'origin/release' into release"}},{"before":null,"after":"f664e67e381662523fd8fafbbaf4a0d779aa7560","ref":"refs/heads/refactor/#454-domain","pushedAt":"2024-08-30T06:53:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Merge remote-tracking branch 'origin/release' into release","shortMessageHtmlLink":"Merge remote-tracking branch 'origin/release' into release"}},{"before":"e4ddbdc2072519faba49419bfe17f5c3d9a6b95b","after":"2738c960dff3ede05b7a1ddd1f8d0d2999df4548","ref":"refs/heads/main","pushedAt":"2024-08-30T06:46:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Release 0.0.6 (#453)\n\n* feat: 종목 및 배당 일정 최신화 기능 cron 표현식 수정 (#428)\r\n\r\n릴리즈 서버는 7시에 수행, 프로덕션은 8시에 수행\r\n\r\n* [refactor] 종목 및 배당일정 초기화 코드 개선 (#429)\r\n\r\n* feat: 접근 제한자 private 변경 및 트랜잭션 애노테이션 제거\r\n\r\n* feat: usd 환율 생성 로직 추가\r\n\r\n* style: 코드 정리\r\n\r\n* style: 메서드 순서 정리\r\n\r\n* feat: 관리자 및 매니저 정보 프로퍼티화\r\n\r\n* feat: 관리자 및 매니저 프로퍼티 추가\r\n\r\n* refactor: createMemberIfNotFound 메서드 코드 수정\r\n\r\n* refactor: 알림 환경설정 초기화 메서드 분리\r\n\r\n* refactor: createRoleIfNotFound 메서드명 변경\r\n\r\ndb에 저장하는 것이기 때문에 save가 더 적절하다고 생각함\r\n\r\n* refactor: findOrCreateRole 메서드로 분리\r\n\r\n* style: 코드 정리\r\n\r\n* rename: SetUpDataLoader 클래스명 변경\r\n\r\n* feat: SetupDataLoader 클래스로 분리\r\n\r\n* refactor: supplierNotFoundRoleExpceiton 메서드로 분리\r\n\r\n* refactor: createExchangeRateIfNotFount 메서드명 변경\r\n\r\n* refactor: 스트림 형식으로 변경\r\n\r\n* feat: 시크릿 정보 수정\r\n\r\n- 역할 정보 추가\r\n\r\n* feat: RoleProperties 추가\r\n\r\n* feat: 역할별 getter 추가\r\n\r\n* refactor: Role 리소스 생성 로직 스트림으로 변경\r\n\r\n* refactor: getter 제거 및 클래스명 RoleProperty로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* test: setupResources 테스트 추가\r\n\r\n* test: setupResources 테스트에 멤버 검증문 추가\r\n\r\n* test: Authentication 검증문 추가\r\n\r\n* test: 검증문 추가\r\n\r\n* style: 주석 추가\r\n\r\n* test: 환율 검증문 추가\r\n\r\n* teset: kisService 객체 모킹\r\n\r\n* test: 종목 검증문 추가 및 종목 초기화 로직 추가\r\n\r\n* feat: readDividendCsv 메서드 구현\r\n\r\n* rename: stocks.csv, dividends.csv 파일을 test/resources로 이동\r\n\r\n* feat: 배당금 초기화 추가\r\n\r\n* feat: UserProperties 추가\r\n\r\n* rename: properties 파일 이동\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- 샘플 유저 추가\r\n\r\n* docs: mysql script 제거\r\n\r\n* feat: Stock.parse 정적 팩토리 메서드에 예외 캐치 추가\r\n\r\n* feat: stocks.csv -> stocks.txt로 변경\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* feat: parseCsvLine 구현\r\n\r\n- Ltd가 포함된 종목은 쉼표를 포함하고 있기 때문에 원할한 쉼표 분할을 위해서 별도의 패턴을 구현함\r\n\r\n* feat: Pattern 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* feat: 시크릿 정보 변경\r\n\r\n- csv 파일로 변경\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#432)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리\r\n\r\n* test: 테스트 실해 해결\r\n\r\ncurrentPrice 참조과정에서 액세스 토큰 발급이 실패되어 무한 루프에 빠짐\r\n\r\n* fix: addCurrentPrice 수행시 액세스 토큰 호출 제거\r\n\r\n- fetchCurrentPrice 실행전 aop에 의해서 실행되기 때문에 제거\r\n\r\n* fix: 액세스 토큰 발급 문제 해결\r\n\r\n* [refactor] currentPriceRepository 개선 (#435)\r\n\r\n* rename: 메서드명을 fetchCurrentPrice로 변경\r\n\r\n* refactor: 현재가 조회 모듈 리팩토링\r\n\r\n* refactor: redis key, value 메서드 추가\r\n\r\n* rename: currentPriceRepository 클래스명 변경\r\n\r\n* rename: CurrentPriceRedisRepository의 메소드를 인터페이스에 맞게 변경\r\n\r\n* [fix] 매입 이력 알람 리스너 문제 해결 (#438)\r\n\r\n* refactor: 현재가 갱신 단순 스트림 방식으로 변경\r\n\r\n* refactor: 불필요한 메서드 제거\r\n\r\n* refactor: toArray 메서드로 분리\r\n\r\n* feat: Flux 방식으로 변경\r\n\r\n* fix: Mono.error 모킹 해결\r\n\r\n* feat: 현재가 조회 부분을 반복문에서 람다로 변경\r\n\r\n* refactor: Flux 형태로 현잭가 조회 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: 코드 정리\r\n\r\n* feat: 컬렉션 필드를 불변 컬렉션으로 반환하도록 변경\r\n\r\nPortfolioHolding 클래스의 getPurchaseHistory 메서드 같은 경우 서비스에 문제점이 있어서 todo 남김\r\n\r\n* feat: purchaseHistory 컬렉션을 반환시 불변 컬렉션으로 반환\r\n\r\n* fix: todo 제거\r\n\r\n* feat: 불변 컬렉션 반환으로 인한 코드 제거\r\n\r\n* style: 코드 정리\r\n\r\n* style: 로깅 제거\r\n\r\n* fix: @EnableAsync 애노테이션을 추가하여 비동기 활성화 및 이벤트 리스너의 반환 타입을 CompletableFuture로 변경\r\n\r\n* test: PurchaseHistoryServiceTest에 있는 매입 이력 이벤트(추가/삭제)에 따른 알림 이벤트 테스트를 제거하고 리스너 테스트에 최대 손실 알림 테스트 추가\r\n\r\n* feat: @EventListener를 @TransactionalEventListener로 변경\r\n\r\n* feat: github action 워크플로우에 설정 추가\r\n\r\n* feat: clear문 추가\r\n\r\n* test: beforeEach에 clear 추가\r\n\r\n* fix: 현재가 조회에 retry 연산 추가 (#442)\r\n\r\n* hotfix: onErrorResume 연산 제거\r\n\r\n- 요청 건수 초과와 같은 이유로 액세스 토큰 발급이 실패하였을때 Mono.empty()를 반환하게 되어 예외가 발생하고 스케줄링 메서드에 의해서 계속 시도하게 되면서 발급 알림이 계속 가는것으로 추측\r\n\r\n* [fix] 액세스 토큰 Aspect 수정 (#445)\r\n\r\n* feat: retry연산에서 재시도 시간을 1분으로 변경\r\n\r\n* feat: 액세스 토큰 만료 1시간 전에 재발급하는 조건문 추가\r\n\r\n* feat: @CheckKisAccessToken 추가\r\n\r\n* feat: accessToken 필드 null 처리\r\n\r\n* test: 만료 1시간 이전 액세스 토큰 재발급의 테스트 추가\r\n\r\n* feat: 프로덕션 서버 스케줄링 서비스 메서드 따로 분리\r\n\r\n* [fix] 액세스 토큰 재발급 문제 해결 (#446)\r\n\r\n* test: 액세스 토큰 만료시 예외케이스 추가\r\n\r\n* fix: Flux 방식에서 단순 반복문으로 변경\r\n\r\n- 병렬 과정에서 액세스 토큰 만료시 무한 시도 문제 해결을 위해서 단순화\r\n\r\n* test: 테스트 수정\r\n\r\n* test: todo 주석 추가\r\n\r\n* feat: kisException 객체로 매핑하여 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 초당 거래 건수 초과 에러 응답하는 예외 케이스 추가\r\n\r\n* feat: returnCode, messageCode 필드 추가\r\n\r\n* feat: KisException의 서브 클래스 추가\r\n\r\n* feat: onErrorResume 및 retryWhen 연산 수정\r\n\r\n- 액세스 토큰이 만료되는 경우에는 Mono.empty() 반환\r\n- retryWhen 연산에서 요청건수 초과인 경우에만 재시도하도록 함\r\n\r\n* feat: KisClient의 에러 핸들 처리 메서드(handleError) 수정\r\n\r\n- 한국투자증권서버로부터 에러 응답을 수신 시 KisErrorResponse로 매핑한 다음에 Exception으로 변환\r\n\r\n* feat: 한국투자증권 서버의 에러 응답 객체 구\r\n\r\n* rename: 클래스명 변경\r\n\r\n* refactor: toException 메서드 변경\r\n\r\n- switch 문으로 개선\r\n\r\n* test: Exception 생성 부분을 정적 팩토리 호출로 변경\r\n\r\n* refactor: null 체크 조건문 삭제\r\n\r\n* feat: 재시도 연산이 실패했을시 onErrorResume 추가\r\n\r\n* test: 재시도 연산이 실패시 예외 테스트 추가\r\n\r\n* test: kisClient 모킹 처리\r\n\r\n* test: 다수 종목 갱신 테스트 추가\r\n\r\n* refactor: Flux 방식으로 변경\r\n\r\n* refactor: onErrorResume 연산 수정\r\n\r\n* test: 테스트 코드 수정\r\n\r\n* feat: 액세스 토큰 관련 예외 추가\r\n\r\n* feat: accessToken 널 체크 추가\r\n\r\n* feat: doOnSuccess 연산 추가\r\n\r\n* feat: CredeintailsTypeException 조건 추가\r\n\r\n* fix: @CheckKisAccessToken 애노테이션 제거\r\n\r\n- 비동기로 실행중 액세스 토큰 제거 또는 만료시 aop의 blockoptional에 의해서 에러 발생하여 kisService로 이동하고자 애노테이션을 제거함\r\n\r\n* feat: deleteAccessToken api 추가\r\n\r\n* feat: kisService에 액세스 토큰 체크 애노테이션 추가\r\n\r\n* test: 레디스 클리너 추가\r\n\r\n* fix: 메서드명 변경\r\n\r\n* refactor: fetchDividend 반환 타입 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* rename: 메서드명 변경\r\n\r\n* refactor: delayManager로 변경\r\n\r\n* test: delayManager 추가하여 테스트 실패 해결\r\n\r\n* test: delayManager를 @SpyBean으로 변경\r\n\r\n* test: holidayManager 필드 제거\r\n\r\n* feat: 액세스 토큰 재발급 관련 수정\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* fix: currentPrice 조회에 에러 폴백 연산 추가\r\n\r\n* fix: checkAccessToken 애노테이션 추가\r\n\r\n* [fix] 액세스 토큰 갱신 구조 변경 (#449)\r\n\r\n* feat: TIMEOUT 필드 이름 변경\r\n\r\n* fix: 종목 조회 및 배당 일정 조회 메서드를 Mono 타입으로 반환하도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: 상장 종목 조회의 예외 케이스 추가\r\n\r\n* fix: Flux 연산 수행중 별도의 쓰레드에서 동작시 blocking하지 않도록 변경\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* test: todo 추가 및 새로운 테스트 추가\r\n\r\n- 도중에 blocking되지 않아야함\r\n\r\n* fix: fetchDividend 메서드 반환타입을 Flux로 변경\r\n\r\n* test: 테스트 추가\r\n\r\n* test: 액세스 토큰 재발급 실패시 에외 케이스 테스트 추가\r\n\r\n* fix: checkAccessToken 애노테이션으로 변경\r\n\r\n* fix: onErrorResume 연산 추가\r\n\r\n* feat: 로깅 추가\r\n\r\n* test: 테스트 제거\r\n\r\n* feat: 액세스 토큰을 재발급하는 스케줄러 구현\r\n\r\n* test: 액세스 토큰 재발급하는 테스트 추가\r\n\r\n* feat: 스케줄러 주기 변경\r\n\r\n* fix: aop 제거 및 애노테이션 제거\r\n\r\n* refactor: 종가 저장소 개선\r\n\r\n* feat: 애노테이션 제거\r\n\r\n* rename: 패키지 이동\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* [style] 코드 정리 (#452)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* test: 테스트 실패 해결\r\n\r\n* [refactor] kisClient 리팩토링 (#433)\r\n\r\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리","shortMessageHtmlLink":"Release 0.0.6 (#453)"}},{"before":"87995129862e4c93fe165eda211eac6937690907","after":"f664e67e381662523fd8fafbbaf4a0d779aa7560","ref":"refs/heads/release","pushedAt":"2024-08-30T06:34:42.000Z","pushType":"push","commitsCount":24,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Merge remote-tracking branch 'origin/release' into release","shortMessageHtmlLink":"Merge remote-tracking branch 'origin/release' into release"}},{"before":"1d1837778245a4620c6feeeb2e9832e22d401c05","after":"87995129862e4c93fe165eda211eac6937690907","ref":"refs/heads/release","pushedAt":"2024-08-30T06:32:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"[refactor] kisClient 리팩토링 (#433)\n\n* feat: 예외 발생시 로깅\r\n\r\n* feat: 예외 처리\r\n\r\n* refatcotr: 불필요한 샘플 종목 생성 코드 제거\r\n\r\n* feat: AbstractContainerBaseTest 추상화\r\n\r\n* feat: AstractContainerBaseTest 추상 클래스로 변경\r\n\r\n* feat: CheckedKisAccessToken 애노테이션 추가\r\n\r\n- 해당 애노테이션을 통하여 한국투자증권 서버의 액세스 토큰의 만료를 확인합니다.\r\n\r\n* test: fetchDividend 테스트 추가\r\n\r\n* feat: 애노테이션 기반 AccesTokenExpiration aop 메서드 구현\r\n\r\n* test: fetchDividend 테스트에서 액세스 토큰 발급 케이스 테스트 추가\r\n\r\n* test: 테스트 문제 해결\r\n\r\n* refactor: fetchDividend 기존 aop 제거\r\n\r\n* feat: 메서드 바꿔치기\r\n\r\n* feat: kisService의 public 메서드에 액세스 토큰 체크 애노테이션 설정\r\n\r\n* test: kisAccessToken tearDown 처리\r\n\r\n* test: zzFetchCurrentPrice 테스트 추가\r\n\r\n해당 테스트는 변경하고자 하는 메서드로써 추후 기존 메서드와 바꿔치기 예정\r\n\r\n* refactor: fetchCurrentPrice 시그니처 변경\r\n\r\n* test: 테스트명 fetchCurrentPrice로 변경\r\n\r\n* refactor: 모의 도메인 webClient 제거\r\n\r\n* refactor: 모의 도메인 webClient 스프링 빈 제거\r\n\r\n* refactor: fetchClosingPrice 시그니처 변경\r\n\r\n* test: fetchClosingPrice 테스트 추가\r\n\r\n* refactor: fetchDividendThisYear 메서드 시그니처 변경\r\n\r\n* test: fetchDividendAll 테스트 추가\r\n\r\n* refactor: fetchDividendAll 메서드 Mono> 반환하도록 변경\r\n\r\n* refactor: fetchIpo 메서드의 시그니처 변경\r\n\r\n* feat: basicIso 메서드 추출\r\n\r\n* feat: basicIso 매개변수명 변경\r\n\r\n* feat: fetchSearchStockInfo 메서드 시그니처 변경\r\n\r\n* refactor: performGet 메서드 시그니처 변경\r\n\r\n* feat: KisProperties로 클래스명 변경\r\n\r\n* feat: tokenUrl 시크릿 정보 변경\r\n\r\n* refactor: KisProperty 클래스 추가 및 appKey 프로퍼티 변경\r\n\r\n* refactor: KisAccessTokenRequest 클래스 생성\r\n\r\n* feat: 액세스 토큰 전달 방식 변경\r\n\r\n- KisAccessTokenRequest 객체를 만들어 전달하는 것으로 변경\r\n\r\n* feat: KisAccessTokenRequest getter, 공백생성자 제거, final 붙힘\r\n\r\n* refactor: KisHeader enum 클래스 추가 및 헤더를 교체\r\n\r\n* feat: KisHeaderBuilder 구현\r\n\r\n* feat: fetchDividend header 변경\r\n\r\n* refactor: header 변경\r\n\r\n* feat: KisTrIdProperties 클래스 추가\r\n\r\n해당 클래스는 한국투자증권 서버의 정보 조회시 필요한 거래 아이디\r\n\r\n* refactor: 생성자 변경\r\n\r\n* refactor: kisTrIdProperties 객체를 이용하여 변경\r\n\r\n* test: kisService에서 액세스 토큰 실패 테스트 제거\r\n\r\n* feat: KisQueryParamBuilder 클래스 구현\r\n\r\n* refactor: 쿼리파라미터 enum으로 변경\r\n\r\n* feat: kis 시크릿 정보 변경\r\n\r\n- tr-id 추가\r\n\r\n* refactor: fetchDividend 쿼리파라미터 빌더로 변경\r\n\r\n* refactor: fetchDiviend 메서드의 쿼리 파라미터 변경\r\n\r\n* feat: kisClient의 메서드들의 쿼리 파라미터를 빌더로 변경\r\n\r\n* style: 코드 정리\r\n\r\n* feat: KisCodeValue 인터페이스 정의 및 구현체 구현\r\n\r\n* rename: 패키지 이동\r\n\r\n* feat: FidPeriodDivCode enum 클래스 구현\r\n\r\n* feat: FidOrgAdjPrc enum 클래스 구현\r\n\r\n* feat: 배당금 종류인 GB1 enum 클래스 구현\r\n\r\n* feat: 상품유형 코드 enum 클래스 구현\r\n\r\n* feat: CustomerType enum 클래스 구현\r\n\r\n* style: 코드 정리","shortMessageHtmlLink":"[refactor] kisClient 리팩토링 (#433)"}},{"before":"6e06a1580eafc5c59efe9ae719ea7a193d79a8aa","after":"1d1837778245a4620c6feeeb2e9832e22d401c05","ref":"refs/heads/release","pushedAt":"2024-08-30T04:34:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"test: 테스트 실패 해결","shortMessageHtmlLink":"test: 테스트 실패 해결"}},{"before":"d4afe571ae786a9f0525fe88c108de2edbc11b7d","after":null,"ref":"refs/heads/fix/#450-dividend","pushedAt":"2024-08-30T04:26:00.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"}},{"before":"4ff3f235de5f06f36cb1a2a0a4cffaa082ac7b88","after":"6e06a1580eafc5c59efe9ae719ea7a193d79a8aa","ref":"refs/heads/release","pushedAt":"2024-08-30T04:25:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"[style] 코드 정리 (#452)\n\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가\r\n\r\n* feat: DividendDates 임베디드 클래스 추가\r\n\r\n* feat: StockDividendParser 추가\r\n\r\n* feat: 생성자 압축\r\n\r\n* refactor: 객체지향적으로 변경\r\n\r\n* refactor: Stock 필드에 LocalDateTimeService 추가\r\n\r\n* refactor: StockParser 추가 및 분리\r\n\r\n* style: 코드 정리\r\n\r\n* fix: HashTable 변경\r\n\r\n* style: equals 재정의\r\n\r\n* refactor: 불필요한 메서드 인수 제거\r\n\r\n* Refactor: file.delete 개선\r\n\r\n* style: 코드 정리\r\n\r\n* style: sonarLint에 따른 코드 정리\r\n\r\n* fix: 테스트 실패 해결\r\n\r\n* style:: 코드 정리\r\n\r\n* test: 테스트 해결\r\n\r\n* style: 코드 정리\r\n\r\n* [feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\r\n\r\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가","shortMessageHtmlLink":"[style] 코드 정리 (#452)"}},{"before":"dd2c9e710c642945ee4331194ef67eee3d002d19","after":"d4afe571ae786a9f0525fe88c108de2edbc11b7d","ref":"refs/heads/fix/#450-dividend","pushedAt":"2024-08-30T04:25:49.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"Merge branch 'release' into fix/#450-dividend","shortMessageHtmlLink":"Merge branch 'release' into fix/#450-dividend"}},{"before":"6c2c059f5226f7bcbe5234d541618756a0cdaec1","after":"dd2c9e710c642945ee4331194ef67eee3d002d19","ref":"refs/heads/fix/#450-dividend","pushedAt":"2024-08-30T04:23:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"[feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\n\n* feat: Portfolio의 LocalDate 모킹\n\n* feat: StockDividend 필드에 isDeleted 컬럼 추가","shortMessageHtmlLink":"[feat] �배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)"}},{"before":"546a044844664172f138ecb2cec68ed9f41ab745","after":"6c2c059f5226f7bcbe5234d541618756a0cdaec1","ref":"refs/heads/fix/#450-dividend","pushedAt":"2024-08-30T04:23:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"style: 코드 정리","shortMessageHtmlLink":"style: 코드 정리"}},{"before":null,"after":"546a044844664172f138ecb2cec68ed9f41ab745","ref":"refs/heads/fix/#450-dividend","pushedAt":"2024-08-30T04:22:07.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"test: 테스트 해결","shortMessageHtmlLink":"test: 테스트 해결"}},{"before":"92f0c1794776c1fad0eca12ced414951d5d96301","after":null,"ref":"refs/heads/fix/#450-dividend","pushedAt":"2024-08-29T06:34:32.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"}},{"before":"cfe38e0c527b7021ea7dc5faaa9550cad6cdf9d0","after":"4ff3f235de5f06f36cb1a2a0a4cffaa082ac7b88","ref":"refs/heads/release","pushedAt":"2024-08-29T06:34:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yonghwankim-dev","name":"YongHwan Kim","path":"/yonghwankim-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/33227831?s=80&v=4"},"commit":{"message":"[feat] \b배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)\n\n* feat: Portfolio의 LocalDate 모킹\r\n\r\n* feat: StockDividend 필드에 isDeleted 컬럼 추가","shortMessageHtmlLink":"[feat] �배당금 엔티티에 필드 추가 및 포트폴리오 필드 추가 (#451)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEqy1HCAA","startCursor":null,"endCursor":null}},"title":"Activity · fine-ants/FineAnts-was"}