package com.ga.core.vo.commission;

import jakarta.validation.constraints.DecimalMin;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.math.BigDecimal;

/**
 * chargeback_waiver_request 등록 요청 (V122).
 * waiver_amount <= original_chargeback 검증은 Service에서 수행.
 */
@Data
public class ChargebackWaiverRequestSaveReq {

    @NotNull
    private Long contractId;

    @NotNull
    private Long agentId;

    @NotBlank
    private String settleMonth;

    @NotNull
    @DecimalMin("0")
    private BigDecimal originalChargeback;

    @NotNull
    @DecimalMin("0")
    private BigDecimal waiverAmount;

    private String reason;
}
