package com.zkqy.execution.produce.dispersed.entity.runbpm;

import java.util.Map;

/**
 * 使用脚本时通过本类承载参数
 *
 * @author hanzihang
 * @date 2023/11/14
 */
public class IRunBPMEntity {

    // 脚本实现类名称
    private String implementationName;

    // 执行流程Key
    private String executionFlowKey;

    // 执行节点Key
    private String executionNodeKey;

    // 其他执行参数
    private Map<String, Object> executionMap;

    // 当前节点绑定表单的数据表名称
    private String tableName;


    @Override
    public String toString() {
        final StringBuffer sb = new StringBuffer("IRunBPMEntity{");
        sb.append("implementationName='").append(implementationName).append('\'');
        sb.append(", executionFlowKey='").append(executionFlowKey).append('\'');
        sb.append(", executionNodeKey='").append(executionNodeKey).append('\'');
        sb.append(", executionMap=").append(executionMap);
        sb.append(", tableName='").append(tableName).append('\'');
        sb.append('}');
        return sb.toString();
    }

    public String getTableName() {
        return tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }

    public String getImplementationName() {
        return implementationName;
    }

    public void setImplementationName(String implementationName) {
        this.implementationName = implementationName;
    }

    public String getExecutionFlowKey() {
        return executionFlowKey;
    }

    public void setExecutionFlowKey(String executionFlowKey) {
        this.executionFlowKey = executionFlowKey;
    }

    public String getExecutionNodeKey() {
        return executionNodeKey;
    }

    public void setExecutionNodeKey(String executionNodeKey) {
        this.executionNodeKey = executionNodeKey;
    }

    public Map<String, Object> getExecutionMap() {
        return executionMap;
    }

    public void setExecutionMap(Map<String, Object> executionMap) {
        this.executionMap = executionMap;
    }

    public IRunBPMEntity() {
    }

    public IRunBPMEntity(String implementationName, String executionFlowKey, String executionNodeKey, Map<String, Object> executionMap, String tableName) {
        this.implementationName = implementationName;
        this.executionFlowKey = executionFlowKey;
        this.executionNodeKey = executionNodeKey;
        this.executionMap = executionMap;
        this.tableName = tableName;
    }
}
