package ink.wgink.module.activiti.pojo.vos.oa;

import ink.wgink.annotation.CheckEmptyAnnotation;
import ink.wgink.annotation.CheckListAnnotation;
import ink.wgink.annotation.CheckListBeanAnnotation;
import ink.wgink.annotation.CheckNumberAnnotation;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.util.List;

/**
 * @Description: 表单字段与流程节点更新
 * @Author: WenG
 * @Date: 2022/3/17 20:12
 * @Version: 1.0
 **/
@ApiModel
public class NodeFieldUpdateVO {

    @ApiModelProperty(name = "flowNodeIndex", value = "流程节点下标")
    @CheckNumberAnnotation(name = "流程节点下标")
    private Integer flowNodeIndex;
    @ApiModelProperty(name = "deploymentId", value = "部署ID")
    @CheckEmptyAnnotation(name = "部署ID")
    private String deploymentId;
    @ApiModelProperty(name = "formId", value = "表单ID")
    @CheckEmptyAnnotation(name = "表单ID")
    private String formId;
    @ApiModelProperty(name = "flowNodeId", value = "流程节点ID")
    @CheckEmptyAnnotation(name = "流程节点ID")
    private String flowNodeId;
    @ApiModelProperty(name = "flowNodeName", value = "流程节点名称")
    @CheckEmptyAnnotation(name = "流程节点名称")
    private String flowNodeName;
    @CheckListAnnotation(name = "表单字段列表")
    @CheckListBeanAnnotation
    private List<NodeFieldVO> formFields;

    public Integer getFlowNodeIndex() {
        return flowNodeIndex == null ? 0 : flowNodeIndex;
    }

    public void setFlowNodeIndex(Integer flowNodeIndex) {
        this.flowNodeIndex = flowNodeIndex;
    }

    public String getDeploymentId() {
        return deploymentId;
    }

    public void setDeploymentId(String deploymentId) {
        this.deploymentId = deploymentId;
    }

    public String getFormId() {
        return formId;
    }

    public void setFormId(String formId) {
        this.formId = formId;
    }

    public String getFlowNodeId() {
        return flowNodeId;
    }

    public void setFlowNodeId(String flowNodeId) {
        this.flowNodeId = flowNodeId;
    }

    public String getFlowNodeName() {
        return flowNodeName == null ? "" : flowNodeName.trim();
    }

    public void setFlowNodeName(String flowNodeName) {
        this.flowNodeName = flowNodeName;
    }

    public List<NodeFieldVO> getFormFields() {
        return formFields;
    }

    public void setFormFields(List<NodeFieldVO> formFields) {
        this.formFields = formFields;
    }
}
