package com.iailab.module.system.controller.admin.tenant.vo.packages; import com.iailab.framework.common.enums.CommonStatusEnum; import com.iailab.framework.common.validation.InEnum; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.util.List; import java.util.Set; @Schema(description = "管理后台 - 租户套餐创建/修改 Request VO") @Data public class TenantPackageSaveReqVO { @Schema(description = "套餐编号", example = "1024") private Long id; @Schema(description = "套餐名", requiredMode = Schema.RequiredMode.REQUIRED, example = "VIP") @NotEmpty(message = "套餐名不能为空") private String name; @Schema(description = "套餐图标", example = "http://localhost/xxx") @NotEmpty(message = "套餐图标不能为空") private String icon; @Schema(description = "套餐标签", example = "模型管理") private List labels; @Schema(description = "描述", example = "好") @NotNull(message = "描述不能为空") private String description; @Schema(description = "状态,参见 CommonStatusEnum 枚举", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "状态不能为空") @InEnum(value = CommonStatusEnum.class, message = "状态必须是 {value}") private Integer status; @Schema(description = "备注", example = "好") private String remark; @Schema(description = "关联的菜单编号", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "关联的菜单编号不能为空") private Set menuIds; }