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

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

import javax.validation.constraints.NotBlank;

import static cn.axzo.workflow.common.constant.BpmnConstants.NO_TENANT_ID;

/**
 * 获取开始表单的模型入参
 *
 * @author wangli
 * @since 2024-11-14 16:27
 */
@Data
@ApiModel("获取开始表单的模型入参")
public class StartFormSearchDTO {
    /**
     * 业务标识
     */
    @ApiModelProperty(value = "业务标识", notes = "也等于表单唯一标识,目前新建一个审批模型,表单和审批的标识都是一样的")
    @NotBlank(message = "业务标识不能为空")
    private String key;

    /**
     * 租户 ID
     * <p>
     * 对应安心筑的工作台 ID
     */
    @ApiModelProperty(value = "租户 ID")
    @NotBlank(message = "租户 ID (工作台)不能为空")
    private String tenantId = NO_TENANT_ID;

    /**
     * 显示原始默认值的变量
     */
    @ApiModelProperty(value = "是否显示原始的默认值", hidden = true, notes = "如果为 true 则将默认值中的 ${} 变量不进行替换")
    private Boolean showOriginDefaultValue = false;

    @ApiModelProperty(value = "是否抛出内部异常")
    private Boolean throwException = true;
}
