package jnpf.dmsEntity.storage.form; import com.fasterxml.jackson.annotation.JsonAlias; import com.fasterxml.jackson.annotation.JsonProperty; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Size; import jnpf.dmsEntity.permission.form.DmsAuditSignForm; import jnpf.dmsEntity.storage.enums.DmsWorkflowFileType; import lombok.Data; import lombok.EqualsAndHashCode; import java.time.LocalDate; import java.util.UUID; @Data @EqualsAndHashCode(callSuper = true) public class DmsWorkflowFileForm extends DmsAuditSignForm { @NotBlank(message = "文件URL不能为空") @Size(max = 2000) private String url; @NotBlank(message = "sourceId不能为空") @Size(max = 120) private String sourceId; @NotBlank(message = "流程任务ID不能为空") @Size(max = 160) private String taskId; @NotNull(message = "文件操作类型不能为空") @JsonProperty("fileType") @JsonAlias({"filetTpe", "filetType"}) private DmsWorkflowFileType fileType; /** 修订时传当前有效的 DMS fileVersionId。 */ private UUID versionId; @NotNull(message = "fileJson不能为空") @JsonProperty("file_json") @JsonAlias("fileJson") private Object fileJson; @NotBlank(message = "文件归属部门不能为空") @Size(max = 100) private String responsibleDeptId; @NotBlank(message = "编制人不能为空") @Size(max = 100) private String preparedBy; @NotNull(message = "编制日期不能为空") private LocalDate preparedOn; @NotBlank(message = "文件编号不能为空") @Size(max = 200) private String documentNo; @NotBlank(message = "文件名称不能为空") @Size(max = 300) private String documentName; @NotNull(message = "目录ID不能为空") private UUID folderId; }