개발 slecs

취소 건 제외로 정산 집계 금액 불일치 수정

목차

CANCELLED 건을 요약/집계에서 제외해 데이터 일치

CANCELLED 건을 요약/집계에서 제외해 데이터 일치 버그를 수정했음.

원인 분석

CANCELLED 상태의 건이 정산 요약/집계에 포함되어 실제 정산금과 수치가 달랐음.

재현 조건

취소된 건이 있는 경우 정산 합산이 예상보다 크게 나왔음.

수정 내용

-- 수정 전
SELECT SUM(amount) FROM 내부테이블 WHERE partner_id = #{id};

-- 수정 후: CANCELLED 제외
SELECT SUM(amount) FROM 내부테이블
WHERE partner_id = #{id}
  AND status NOT IN ('CANCELLED', 'REFUNDED');

검증

취소 건이 포함된 데이터셋으로 집계 결과가 올바른지 확인했음.

재발 방지

정산 집계 쿼리는 항상 상태 필터를 포함하는 원칙을 정했음.

UI/UX 관점

화면 변경 시 몇 가지를 체크했음.

로딩 상태: 비동기 요청 중에는 로딩 인디케이터를 표시했음. 버튼을 비활성화해서 중복 클릭을 방지했음.

btn.disabled = true;
try {
    await fetch('/api/...');
    showSuccess();
} catch(e) {
    showError(e.message);
} finally {
    btn.disabled = false;
}

빈 상태 처리: 데이터가 없을 때 빈 화면 대신 "데이터가 없습니다" 메시지를 표시했음.

오류 메시지: 기술적인 에러 코드 대신 사용자가 이해할 수 있는 메시지를 표시했음.

다음

댓글 0

첫 댓글 달아줘.