package cn.iocoder.lyzsys.module.tjt.controller.admin.specialtyrolesplit.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;

@Schema(description = "管理后台 - 页面5角色比例批量保存 Request VO")
@Data
public class SpecialtyRoleSplitBatchSaveReqVO {

    @Schema(description = "合约规划 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "合约规划 ID 不能为空")
    private Long planningId;

    @Schema(description = "角色配置列表", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "角色配置列表不能为空")
    @Valid
    private List<SpecialtyRoleSplitSaveItemReqVO> items;

    @Schema(description = "是否临时保存。true 时仅做基础格式处理，跳过角色合计、设计人员必填等强校验", example = "false")
    private Boolean temporarySave;

}
