package cn.iocoder.yudao.module.archive.api.document.dto;
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import jakarta.validation.constraints.NotEmpty;
|
import jakarta.validation.constraints.NotNull;
|
import lombok.Data;
|
|
import java.time.LocalDate;
|
import java.util.List;
|
|
@Schema(description = "RPC 服务 - 档案归档 Request DTO")
|
@Data
|
public class ArchiveDocumentCreateReqDTO {
|
|
@Schema(description = "来源类型:2-课题 3-会员 4-财务", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
@NotNull(message = "来源类型不能为空")
|
private Integer sourceType;
|
|
@Schema(description = "来源单据编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
@NotNull(message = "来源单据编号不能为空")
|
private Long sourceId;
|
|
@Schema(description = "来源单号(课题立项编号/会员编号/报销单号)", example = "LX20260929000001")
|
private String sourceNo;
|
|
@Schema(description = "来源单据标题", example = "XX技术研究课题")
|
private String sourceTitle;
|
|
@Schema(description = "目标档案分类编码(research/member/finance)", requiredMode = Schema.RequiredMode.REQUIRED, example = "research")
|
@NotEmpty(message = "目标档案分类编码不能为空")
|
private String categoryCode;
|
|
@Schema(description = "档案标题,为空时取来源单据标题")
|
private String title;
|
|
@Schema(description = "密级:1-公开 2-内部 3-保密,为空时取分类默认密级")
|
private Integer secretLevel;
|
|
@Schema(description = "摘要")
|
private String summary;
|
|
@Schema(description = "关键词,英文逗号分隔")
|
private String tags;
|
|
@Schema(description = "来源附件 BlobId 列表")
|
private List<Long> blobIds;
|
|
@Schema(description = "归档日期,为空时取当天")
|
private LocalDate archiveDate;
|
|
@Schema(description = "备注")
|
private String remark;
|
|
}
|