package com.qqchen.deploy.backend.workflow.dto;

import com.fasterxml.jackson.databind.JsonNode;
import com.qqchen.deploy.backend.framework.dto.BaseDTO;
import com.qqchen.deploy.backend.workflow.dto.definition.workflow.WorkflowDefinitionGraph;
import com.qqchen.deploy.backend.workflow.enums.WorkflowCategoryEnum;
import com.qqchen.deploy.backend.workflow.enums.WorkflowDefinitionStatusEnums;
import com.qqchen.deploy.backend.workflow.enums.WorkflowTriggerTypeEnum;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * 工作流定义DTO
 *
 * @author cascade
 * @date 2024-12-11
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class WorkflowDefinitionDTO extends BaseDTO {

    /**
     * 流程名称
     */
    private String name;

    /**
     * 流程标识
     */
    private String key;

    /**
     * 分类
     */
    private WorkflowCategoryEnum category;

    /**
     * 触发类型列表
     */
    private List<WorkflowTriggerTypeEnum> triggers;

    /**
     * 流程版本
     */
    private Integer flowVersion;

    /**
     * BPMN XML内容
     */
    private String bpmnXml;

    /**
     * 图形数据
     */
    private WorkflowDefinitionGraph graph;

    /**
     * 定义状态
     */
    private WorkflowDefinitionStatusEnums status;


    /**
     * 流程描述
     */
    private String description;
}
