Skip to content

학생회비 납부 요청을 한 번에 받고 반려 시 재납부 허용 #151

Open

Description

@xeoxxn

어떤 기능인가요?

지금은 학생이 납부 정보 제출(POST /v1/app/fee)과 송금 확인 요청(POST /v1/app/fee/requests/confirm)을 두 번에 나눠 보낸다. 이를 "송금 완료했어요" 한 번으로 합쳐 DB 쓰기를 그 한 번에만 한다. 그러면 "제출만 한 상태"였던 UNPAID가 필요 없어지므로, 미납부는 행이 없는 상태로 본다.

반려(REJECTED)된 학생은 안내 문구를 보고 학기 인증부터 다시 납부할 수 있다. 요청 시점 금액을 함께 남겨, 운영진이 학기당 금액을 바꿔도 과거 요청 금액은 그대로 둔다.

구현 계획: docs/plans/fee-payment-flow-revision.md (PR②)

스택: #124 → #126 → #150 → #151 → #152 → #153 (후속: member PR — is_fee_paid 컬럼 · 리스너 · 백필)

📝 작업 상세 내용

  • TransferStatus에서 UNPAID 제거, 미납부 = 행 없음 (응답 feeStatus는 "UNPAID" 문자열 유지)
  • POST /v1/app/fee 하나로 제출 + 확인 요청 → PENDING, POST /v1/app/fee/requests/confirm 삭제
  • GET /v1/app/fee/me에 remainingSemesters 쿼리 — 금액 · 송금 링크 계산만, 쓰기 없음
  • REJECTED에서 재납부 허용 (PENDING · PAID면 409)
  • amount 컬럼 추가, UNPAID 행 정리 마이그레이션
  • 로그인 시 납부 상태 행 생성(createIfAbsent) 제거
  • 관리자 목록 금액을 요청 시점 값으로
  • 뒤집힌 기존 결정(fee-app-api-revision.md [Docs/#1] 프레젠테이션 레이어 분리 축 컨벤션 문서화 #2 · 공통 API 응답 포맷 추가 (ApiResponse, CursorSliceResponse) #7) 문서 갱신

📁 참고 자료 (선택)

  • 앱 프론트 영향: 엔드포인트와 화면 분기가 바뀐다 — 배포 순서 협의 필요

Activity

  1. added 2 commits that reference this issue on Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions