package com.njcn.rdms.module.project.controller.admin.product.vo.setting;

import com.njcn.rdms.framework.dict.validation.InDict;
import com.njcn.rdms.module.system.enums.DictTypeConstants;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Data;

@Schema(description = "管理后台 - 产品设置基础信息更新 Request VO")
@Data
public class ProductSettingBaseInfoUpdateReqVO {

    @Schema(description = "产品方向字典值", requiredMode = Schema.RequiredMode.REQUIRED, example = "direction_value")
    @NotBlank(message = "产品方向不能为空")
    @Size(max = 32, message = "产品方向长度不能超过32个字符")
    @InDict(type = DictTypeConstants.OBJECT_DIRECTION)
    private String directionCode;

    @Schema(description = "产品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "RDMS产品平台")
    @NotBlank(message = "产品名称不能为空")
    @Size(max = 128, message = "产品名称长度不能超过128个字符")
    private String name;

    @Schema(description = "产品描述", example = "面向研发管理的一体化产品")
    private String description;

}
