package cn.axzo.workflow.common.model.request.bpmn.task;

import cn.axzo.workflow.common.enums.AttachmentTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 附件模型
 *
 * @author wangli
 * @since 2023/11/22 23:17
 */
@ApiModel("附件模型")
@Data
public class AttachmentDTO {

    /**
     * 附件 ID
     */
    private String id;

    /**
     * 附件类型, 图片还是附件
     */
    @ApiModelProperty(value = "附件类型")
    @NotNull(message = "附件类型不能为空")
    private AttachmentTypeEnum type;

    /**
     * 文件名称,需携带附件的后缀
     */
    @ApiModelProperty(value = "文件名称不能为空")
    @NotBlank(message = "文件名称不能为空")
    private String name;

    /**
     * 文件描述
     */
    @ApiModelProperty(value = "文件描述")
    private String description;

    /**
     * 文件地址
     */
    @ApiModelProperty(value = "附件地址")
    @NotBlank(message = "附件地址不能为空")
    private String url;

}
