package cn.axzo.workflow.common.model.response.bpmn.model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 基础的流程模型响应模型
 */
@ApiModel("基础的流程模型响应模型")
@Data
@NoArgsConstructor
public class BpmnModelBaseVO {

    /**
     * 模型 ID
     */
    @ApiModelProperty(value = "模型 ID")
    private String id;

    /**
     * 流程标识
     */
    @ApiModelProperty(value = "模型标识")
    private String key;
    /**
     * 流程名称
     */
    @ApiModelProperty(value = "模型名称")
    private String name;

    /**
     * 自定义分类
     */
    @ApiModelProperty(value = "自定义分类")
    private String category;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createAt;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private Date updateAt;

    /**
     * 该 ID 存在时, 说明该模型关联的定义已经部署
     */
    @ApiModelProperty(value = "部署 ID")
    private String deploymentId;

    /**
     * 模型的编辑器源 ID
     */
    @ApiModelProperty(value = "模型的编辑器源 ID", hidden = true)
    private transient String editorSourceId;

    /**
     * 模型元信息
     */
    @ApiModelProperty(value = "模型元信息")
    private String metaInfo;

    /**
     * 版本
     */
    @ApiModelProperty(value = "版本", required = true, example = "1")
    private Integer version;

    /**
     * 租户Id
     */
    @ApiModelProperty(value = "租户")
    private String tenantId;
}
