Skip to content

Conversation

@try3982
Copy link
Collaborator

@try3982 try3982 commented May 26, 2025

#️⃣ Issue Number

📝 요약(Summary)

  • 계좌 해지 시 잔액이 존재하면 사용자가 지정한 출금 계좌로 자동 이체
  • 계좌 상태가 ACTIVE가 아니면 입금불가 구현
  • AccountManagementService 추가

🛠️ PR 유형

어떤 변경 사항이 있나요?

  • 새로운 기능 추가
  • 코드 리팩토링

개발 상세 내역

✅ 1. 계좌 관련 기능 개선

  • 계좌 상태가 ACTIVE가 아닐 경우 입금 불가 처리
  • 최대 입금 가능 금액 100만원 초과 시 예외 처리
  • 계좌 해지 시 잔액이 존재하면, 사용자가 선택한 출금 계좌로 자동 이체

✅ 2. 구조 개선 및 리팩토링

  • 거래 내역 조회 시 정렬 및 거래유형 필터링 기능 리팩토링

✅ 3. ENUM ERRORCODE추가

  • AMOUNT_EXCEED_DEPOSIT_LIMIT("입금 금액은 최대 100만원까지만 허용됩니다."),

-. 계좌 상태가 ACTIVE가 아니면 입금불가 구현
-. 최대 입금한도 100만원을 초과할경우 입근 불가
-.계좌 해지 시 잔액이 존재하면 사용자가 지정한 출금 계좌로 자동 이체

refactor:
-. AccountManagementService 생성 및 계좌 해지, 복구, 만료 삭제 책임 분리
- 트랜잭션 응답 Record 객체 일관화 (TransferResponseRecord, DepositRecord 등)
- 거래 내역 기간/정렬 조회 기능 refactoring
@try3982 try3982 self-assigned this May 26, 2025
@try3982 try3982 added the 개발 label May 26, 2025
@try3982 try3982 linked an issue May 26, 2025 that may be closed by this pull request
Paransaik and others added 5 commits May 31, 2025 13:47
-. 필터검색을 dto로 만들어서 관리하도록 변경
-.validatePendingLoanOrAutoTransfer 메서드 분리하여 단일책임 원칙 적용
-. 필터검색을 dto로 만들어서 관리하도록 변경
-.validatePendingLoanOrAutoTransfer 메서드 분리하여 단일책임 원칙 적용
@RequestParam @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDateTime startDate,
@RequestParam @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDateTime endDate,
@RequestParam(defaultValue = "true") boolean sortDesc,
@ModelAttribute TransferSearchRequestRecord searchRequest,
Copy link
Member

Choose a reason for hiding this comment

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

  1. ModelAttribute로 TransferSearchRequestRecord를 받으셨는데, 사용은 안하시네요? 필터 비지니스 로직이 들어가야하지 않나요?

  2. DTO를 2개 못 받으셔서 ModelAttribute로 받으신 거 같은데, TransferRequestRecord 하나의 DTO에 filter 조건도 한번에 받으시면 안되시는 건가요?

Copy link
Member

@Paransaik Paransaik left a comment

Choose a reason for hiding this comment

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

PR전에 스쿼시 부탁드려요!!!!!

this.account = account;
this.balance = dto.balance();
// this.loanDate = LocalDateTime.now();
this.loanDate = LocalDateTime.now();
Copy link
Member

Choose a reason for hiding this comment

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

자동정렬 안하신 것 같습니다.

Boolean sortDesc,

String transactionType
) {}
Copy link
Member

Choose a reason for hiding this comment

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

다른 record와 같이 양식 맞춰주세요~

private final UserRepository userRepository;

public Account createAccount(Account account) {
return accountRepository.save(account);
Copy link
Member

Choose a reason for hiding this comment

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

account 만드실 때 user 넣어주셔야 하는데, 아래 메소드 사용하시는게 맞지 않을까요?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

계좌 이체 로직 구현

3 participants