package com.yhy.module.core.controller.admin.quota.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import java.math.BigDecimal;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * 定额费率字段保存请求 VO
 */
@Schema(description = "管理后台 - 定额费率字段保存请求")
@Data
public class QuotaRateFieldSaveReqVO {

    @Schema(description = "主键ID（更新时必填）")
    private Long id;

    @Schema(description = "关联费率模式节点ID", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "费率模式节点ID不能为空")
    private Long catalogItemId;

    @Schema(description = "关联费率项ID（保存字段值时必填）")
    private Long rateItemId;

    @Schema(description = "字段索引", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "字段索引不能为空")
    private Integer fieldIndex;

    @Schema(description = "字段值（支持小数）", example = "0.01")
    private BigDecimal fieldValue;

    @Schema(description = "字段标签ID", example = "1")
    private Long fieldLabelId;

    @Schema(description = "绑定的节点ID数组")
    private Long[] bindingIds;
}
