package cn.iocoder.yudao.module.bpm.controller.admin.oa.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import java.util.List; @Schema(description = "管理后台 - 通知公告创建/修改 Request VO") @Data public class OaNoticeSaveReqVO { @Schema(description = "通知公告编号", example = "1024") private Long id; @Schema(description = "公告标题", requiredMode = Schema.RequiredMode.REQUIRED, example = "关于放假的通知") @NotBlank(message = "公告标题不能为空") @Size(max = 50, message = "公告标题不能超过50个字符") private String title; @Schema(description = "公告内容", requiredMode = Schema.RequiredMode.REQUIRED, example = "根据国家规定...") @NotBlank(message = "公告内容不能为空") private String content; @Schema(description = "公告类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "公告类型不能为空") private Integer type; @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "状态不能为空") private Integer status; @Schema(description = "发送范围", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "发送范围不能为空") private Integer sendScope; @Schema(description = "是否置顶", example = "0") private Integer isTop; @Schema(description = "指定用户ID列表(sendScope=2时必填)", example = "[1, 2, 3]") private List userIds; }