package com.ga.core.vo.settle;

import com.ga.common.annotation.ExcelColumn;
import lombok.Data;

import java.math.BigDecimal;

/**
 * 보험사 환수자료 업로드용 엑셀 VO.
 *
 * 파일 헤더 순서: 증권번호 / 환수금액 / 실효월 / 환수율
 * - 실효월(lapseMonth): YYYYMM 문자열, 선택(없으면 null).
 *   파일에 입력된 실효연월(예: 202401)을 서비스 계층에서
 *   contract_date 기준 경과월(INT)로 변환 후 ChargebackVO.lapseMonth에 저장.
 * - 환수율(cbRate): DECIMAL(7,4), 선택.
 */
@Data
public class ChargebackUploadExcelVO {

    @ExcelColumn(header = "증권번호", order = 1)
    private String policyNo;

    @ExcelColumn(header = "환수금액", order = 2)
    private BigDecimal cbAmount;

    /** 실효월 YYYYMM (선택). 서비스에서 경과월로 변환. */
    @ExcelColumn(header = "실효월", order = 3)
    private String lapseMonth;

    /** 환수율 (선택). */
    @ExcelColumn(header = "환수율", order = 4)
    private BigDecimal cbRate;
}
