package com.ga.core.vo.commission;

import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Positive;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * settling_support_rule 등록/수정 요청.
 */
@Data
public class SettlingSupportRuleSaveReq {

    @NotBlank
    private String agentGrade;

    @NotNull
    @Positive
    private BigDecimal supportAmount;

    @NotNull
    @Positive
    private Integer durationMonths;

    @NotNull
    @Min(0)
    private Integer clawbackMonths;

    @NotNull
    private LocalDate effectiveFrom;

    private LocalDate effectiveTo;
}
