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

import cn.axzo.workflow.common.model.request.bpmn.BpmnJsonModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotNull;

/**
 * 用于更新流程定义的入参模型
 *
 * @author wangli
 * @since 2023/7/26 10:07
 */
@ApiModel("用于更新流程定义的入参模型")
@Data
public class BpmnProcessDefinitionUpdateDTO {
    /**
     * 流程模型 ID
     */
    @ApiModelProperty(value = "流程模型 ID")
    private String processModelId;

    /**
     * 流程定义 Key
     */
    @ApiModelProperty(value = "KEY")
    private String key;

    /**
     * 业务分类
     */
    @ApiModelProperty(value = "分类")
    private String category;

    /**
     * 名称
     */
    @ApiModelProperty(value = "名称")
    private String name;

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

    /**
     * 模型定义内容
     */
    @ApiModelProperty(value = "JSON 转义的流程定义内容", notes = "枢智业务线在用")
    @Valid
    @NotNull(message = "模型定义内容不能为空")
    private BpmnJsonModel jsonModel;
}
