package com.ga.core.vo.commission;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * life_support_ledger — 생보운영지원수수료 원장 (V93)
 * support_amount = base_amount × support_rate
 * net_amount = support_amount - clawback_amount
 */
@Data
public class LifeSupportLedgerVO {
    private Long ledgerId;
    private Long agentId;
    /** 정산 귀속월 (YYYYMM) */
    private String settleMonth;
    /** 생보 실적 기준금액 */
    private BigDecimal baseAmount;
    /** 적용 지급률 (life_support_rule 스냅샷) */
    private BigDecimal supportRate;
    /** 지원수수료 = base_amount × support_rate */
    private BigDecimal supportAmount;
    /** 환수액 */
    private BigDecimal clawbackAmount;
    /** 실지급액 = support_amount - clawback_amount */
    private BigDecimal netAmount;
    /** CALCULATED / CONFIRMED / PAID / CLAWED_BACK / CANCELLED */
    private String status;
    private LocalDateTime createdAt;
    private LocalDateTime updatedAt;
}
