package com.senmesh.sfile.dto; import com.fasterxml.jackson.annotation.JsonFormat; import com.senmesh.common.dto.BaseOperateDTO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Builder.Default; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import org.springframework.format.annotation.DateTimeFormat; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.util.Date; /** * 用户文件创建DTO */ @ApiModel("用户文件创建DTO") @Data @Builder @NoArgsConstructor @AllArgsConstructor @EqualsAndHashCode(callSuper = true) public class UserFileCreateDTO extends BaseOperateDTO { private static final long serialVersionUID = 1L; @ApiModelProperty("用户id") // @NotNull(message = "用户id不能为空") private Long userId; @ApiModelProperty("根类型:1普通/2内穿外/3外传内/4我的分享") // @NotEmpty(message = "根类型不能为空") private String rootType; @ApiModelProperty("文件大类:1文件/2文件夹") @NotEmpty(message = "文件大类不能为空") private String fileType; @ApiModelProperty("文件名") @NotEmpty(message = "文件名不能为空") private String fileName; @ApiModelProperty("父id") @Default private Long parentId = 0L; @ApiModelProperty("文件编码") private String fileCode; @ApiModelProperty("文件状态:1正常2失效11解析中12待审核13传输中14失败") private String fileStatus; @ApiModelProperty("父路径(可选,用于优化性能,避免查询父节点)") private String parentPath; @ApiModelProperty("有效期") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date endTime; @ApiModelProperty("访问码") private String accessCode; }