#lock
-
수수료 정산 불일치를 SQL 집계로 원인 분석한 감사 보고서 작성
분석 보고서를 작성했음. 주제: **20260424 1948 fee compliance audit**. 분석 배경 운영 중 특정 수치 불일치 혹은 잠재적 문제가 감지됐음. 단순 로그 확인으로는 전체 그림이 안 보여서 SQL로 직접 집계하고 결과를 HTML 보고서로 정리했음. 이런 보고서를 만드는 이유는 문제를 코드 수정으로 넘기기 전에 원인을 데이터로
읽기 → -
결제대행사 등급 동기화가 기본등급으로 폴백되던 버그 수정
webhook 버그를 수정했음. 결제대행사 등급 동기화가 시스템 기본등급으로 폴백되던 버그 수정. 변경 파일: SQL 매퍼 1개 문제 원인 기존 로직에서 엣지 케이스가 처리되지 않아 특정 상황에서 잘못된 결과를 반환하거나 오류가 발생하고 있었음. 수정 내용 - SQL 쿼리 조건/집계 수정 버그 수정 프로세스 단순히 증상만 픽스하는 게 아니라
읽기 → -
회원가입 시 파트너 cascade 등급 누락 버그 수정
member-grade 버그를 수정했음. 회원가입 INSERT 시 파트너 cascade 등급 해석 누락 수정. 변경 파일: 내부 클래스 2개 문제 원인 예외가 소리 없이 삼켜지거나 분기 처리가 누락돼서 특정 케이스에서 처리가 스킵되고 있었음. 로그에도 아무것도 안 남아서 찾기 어려웠음. 수정 내용 - 내부 클래스 로직 수정 버그 수정 프로세스
읽기 → -
가상계좌 웹훅 데드락을 멱등성과 잠금 순서 통일로 해결
가상계좌 충전 웹훅에서 발생하던 데드락 문제를 근본적으로 해결했음. 문제 상황 가상계좌 입금 알림(웹훅)이 동시에 여러 건 들어올 때 데이터베이스 데드락이 발생하고 있었음. 결제대행사에서 웹훅을 재전송하면서 같은 거래가 중복 처리될 위험도 있었음. 데드락은 재현이 타이밍에 의존해서 로컬에서는 잘 안 나타나고 운영에서만 간헐적으로 발생했음. 데드락
읽기 → -
결제 바코드 이용안내를 링크+상세패널 구조로 개선
relay-pay 리팩토링을 진행했음. 바코드 하단 이용안내 인라인 블록 → 링크+상세패널 구조로 재편. 변경 파일: 뷰/스타일 1개 리팩토링 이유 기능은 잘 돌아가지만 코드 구조가 나중에 유지보수하기 어려운 상태였음. 특히 같은 로직이 여러 곳에 중복돼 있거나, 한 파일에 너무 많은 책임이 몰려 있는 경우가 있었음. 기능 추가나 버그 수정 시 여러
읽기 → -
결제 출금 자동승인 관리자 제어
admin-partner 영역에 새 기능을 추가했음. 출금요청 허용·자동승인 관리자 전용 제어 이관 및 트리 뷰 추가. 변경 파일: 내부 클래스 2개, 뷰/스타일 2개, SQL 매퍼 1개 배경 기존 화면/API에서 제공하지 않던 데이터나 동작이 필요해져서 기능을 확장했음. 단순 UI 추가가 아니라 쿼리 레벨부터 설계해서 정합성을 맞췄음. 구현 내용
읽기 → -
결제 대시보드에 포인트 캐시 재계산
dashboard 영역에 새 기능을 추가했음. 시스템 포인트 캐시 수동 재계산 + UI 정리. 변경 파일: 내부 클래스 2개, SQL 매퍼 1개, 뷰/스타일 1개 배경 기존 화면/API에서 제공하지 않던 데이터나 동작이 필요해져서 기능을 확장했음. 단순 UI 추가가 아니라 쿼리 레벨부터 설계해서 정합성을 맞췄음. 구현 내용 - 대시보드에 신규 K
읽기 → -
대시보드 이용중지 집계 기준 불일치 버그 수정
suspend 버그를 수정했음. 대시보드 이용중지 카드와 목록 기본 필터를 tb_suspend_master 기준으로 일치. 변경 파일: 내부 클래스 1개, SQL 매퍼 1개 문제 원인 기존 로직에서 엣지 케이스가 처리되지 않아 특정 상황에서 잘못된 결과를 반환하거나 오류가 발생하고 있었음. 수정 내용 - SQL 쿼리 조건/집계 수정 - 내부 클래
읽기 → -
구매 추적 후처리 누락 버그 수정
PurchaseTraceLogUtil 누락 스텁 추가 PurchaseTraceLogUtil 누락 스텁 추가 버그를 수정했음. 원인 분석 새로운 처리 경로를 추가할 때 기존 경로의 공통 처리를 빠뜨렸음. 재현 조건 특정 경로로 처리된 건에서 후처리가 실행되지 않음. 수정 내용 java // 수정 전: 분기별 처리, 일부 누락 if (con
읽기 → -
관리 화면 아이콘 깨짐 버전 업 클래스명 일괄 교체
무효 iconoir-cancel 클래스 일괄 교체 무효 iconoir-cancel 클래스 일괄 교체 버그를 수정했음. 원인 분석 아이콘 라이브러리(Iconoir) 버전 업그레이드로 클래스명이 변경됐는데, 기존 JSP 파일에 반영하지 않았음. 재현 조건 여러 관리 화면에서 아이콘이 빈 네모로 표시됨. 수정 내용 html <!-- 수정 전:
읽기 → -
공급 채널별 마진율과 수익 기여도를 한눈에 확인하는 페이지 추가
공급 모듈 마진 가시화 페이지 신규 추가 공급 모듈 마진 가시화 페이지 신규 추가 기능을 구현했음. 배경 공급 구조에서 마진이 얼마나 발생하는지 직접 확인할 수 없으면 가격 정책 결정이 어려움. 채널별로 수익성을 비교하고, 마진율이 낮은 항목을 파악하는 게 필요했음. 구현 방식 마진 = 판매가 - 공급가 방식으로 계산하고, 항목별 마진율과 절
읽기 → -
선물 경로 정산 후처리 누락 버그 수정
선물 경로에서 ledger txn_ref_sn 갱신 누락 수정 선물 경로에서 ledger txn_ref_sn 갱신 누락 수정 버그를 수정했음. 원인 분석 새로운 처리 경로를 추가할 때 기존 경로의 공통 처리를 빠뜨렸음. 재현 조건 특정 경로로 처리된 건에서 후처리가 실행되지 않음. 수정 내용 java // 수정 전: 분기별 처리, 일부
읽기 → -
정산 집계 쿼리에서 레거시 분배 타입 제외해 대시보드 수치 오류 수정
COMMISSION_DISTRIBUTION 레거시 분배 필터에 reference_type 조건 추가 COMMISSION_DISTRIBUTION 레거시 분배 필터에 reference_type 조건 추가 버그를 수정했음. 원인 분석 구 데이터 타입(COMMISSION_DISTRIBUTION 등)이 집계 쿼리에 포함되면서 현재 기준과 다른 결과가 나왔음
읽기 → -
플랫폼 순귀속 정산에 레거시 타입 포함되던 집계 오류 수정
플랫폼 순귀속 계산에 레거시 COMMISSION_DISTRIBUTION 타입 포함 플랫폼 순귀속 계산에 레거시 COMMISSION_DISTRIBUTION 타입 포함 버그를 수정했음. 원인 분석 구 데이터 타입(COMMISSION_DISTRIBUTION 등)이 집계 쿼리에 포함되면서 현재 기준과 다른 결과가 나왔음. 재현 조건 대시보드 집계 숫
읽기 → -
플랫폼 정산 수익을 잔여 차감 방식으로 단순화
플랫폼 수익 계산을 잔여 방식(validation-only)으로 전환 리팩토링 작업을 완료했음. 리팩토링 이유 기존 방식은 복잡도가 높아서 코드를 이해하기 어려웠음. 단계를 명확히 분리하는 방식으로 전환했음. 변경 전/후 java // 수정 전: 직접 계산 (각 계층 독립 계산) long platformRevenue = calcPlatform
읽기 → -
LIVE_AGG 멱등성·동시성 회귀 버그 공통 후처리 누락 수정
Codex 회귀 지적 5건 반영 (LIVE_AGG 멱등성/동시성/상위 누락) Codex 회귀 지적 5건 반영 (LIVE_AGG 멱등성/동시성/상위 누락) 버그를 수정했음. 원인 분석 새로운 처리 경로를 추가할 때 기존 경로의 공통 처리를 빠뜨렸음. 재현 조건 특정 경로로 처리된 건에서 후처리가 실행되지 않음. 수정 내용 java // 수
읽기 → -
topLevel 신규 등록 시 시스템 파트너 자동 매핑 구현
topLevel 신규 등록 시 시스템 파트너로 자동 매핑 topLevel 신규 등록 시 시스템 파트너로 자동 매핑 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 1개, SQL 쿼리 1개를 작성했음. 코드 예시 java // 핵심 로직 public void execute
읽기 → -
Finance Hub 파트너 필터
시스템 파트너 도입 기반 - 필터 + Finance Hub UI 시스템 파트너 도입 기반 - 필터 + Finance Hub UI 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 2개, SQL 쿼리 4개를 작성했음. 코드 예시 java // 핵심 로직 public void
읽기 → -
이커머스 회원 배송지 관리 기능 신설
회원 배송지 관리 기능 신설 (이커머스 PG 플랫폼) 회원 배송지 관리 기능 신설 (이커머스 PG 플랫폼) 기능을 구현했음. 배경 기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음. 구현 방식 내부 클래스 1개, SQL 쿼리 2개, JSP 화면 3개를 작성했음. 코드 예시 java // 핵심 로직 public void
읽기 → -
사이트 목록 중복 로직 제거로 가독성·유지보수성 개선
사이트 목록 품질 개선 리팩토링 작업을 완료했음. 리팩토링 이유 코드 가독성과 유지보수성 향상을 위한 리팩토링이었음. 변경 전/후 java // 수정 전: 중복/복잡 로직 // 각 클래스에 동일 로직 반복 // 수정 후: 명확하고 단일 책임 public static Long resolveId(Object source) { if (so
읽기 →