package com.ga.core.vo.commission;

import lombok.Data;

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

/**
 * income_commission_ledger — 수입수수료 원장 (V88)
 * 보험사가 GA에 지급한 수입 측 수수료. income_amount = premium_amount × company_rate.
 */
@Data
public class IncomeCommissionLedgerVO {
    private Long incomeId;
    private Long contractId;
    /** 보험사 FK (insurance_company.company_id) */
    private Long carrierId;
    /** 정산 귀속월 (YYYYMM) */
    private String settleMonth;
    private BigDecimal premiumAmount;
    /** 보험사 수수료율 (소수, 예: 0.12 = 12%) */
    private BigDecimal companyRate;
    /** 수입수수료 = premium_amount × company_rate */
    private BigDecimal incomeAmount;
    /** CommissionType: RECRUIT/MAINTAIN/RENEWAL/REINSTATE/COLLECTION */
    private String commissionType;
    /** CALCULATED / CONFIRMED / CANCELLED */
    private String status;
    private LocalDateTime createdAt;
    private LocalDateTime updatedAt;
}
