package com.zt.plat.module.qms.business.config.controller.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import jakarta.validation.constraints.*;

@Schema(description = "管理后台 - LiteFlow脚本配置新增/修改 Request VO")
@Data
public class ConfigSimpleFlowCodeSaveReqVO {

    @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "21610")
    private Long id;

    @Schema(description = "脚本序号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "脚本序号不能为空")
    private String codeNo;

    @Schema(description = "脚本名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
    @NotEmpty(message = "脚本名称不能为空")
    private String codeName;

    @Schema(description = "脚本数据", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "脚本数据不能为空")
    private String codeData;

    @Schema(description = "脚本类型,【字典】【jy_simple_flow_code_type】普通脚本、选择脚本、条件脚本、数量循环、条件循环、退出循环节", example = "1")
    private String codeType;

    @Schema(description = "脚本语言,【字典】【jy_simple_flow_code_language】Java,Groovy,QLExpress")
    private String codeLanguage;

    @Schema(description = "所属部门", requiredMode = Schema.RequiredMode.REQUIRED)
    private String systemDepartmentCode;

    @Schema(description = "备注")
    private String remark;

}