package com.ga.common.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** * 데이터 변경 이력 자동 기록. * *
 *   @DataChangeLog(menu = "RULE", table = "payout_rule")
 *   public void updatePayoutRule(PayoutRuleVO vo) { ... }
 * 
* * 동작: 메서드 실행 전·후의 대상 데이터를 비교 → data_change_log JSONB 컬럼에 저장. */ @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface DataChangeLog { String menu(); String table(); /** 액션 유형. 자동 추정 안 될 때 명시 */ String action() default ""; }