package com.cpop.oam.business.bo;

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

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @author DB
 * @createTime 2023/10/10 17:14
 * @description
 */
@Data
@ApiModel(value = "OpenPlatformCommit上传代码对象")
public class WxOpenMaCodeCommitBo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 授权方 appid
     */
    @NotBlank(message = "授权方appid不能为空")
    @ApiModelProperty(value = "授权方 appid",required = true)
    private String authorizerAppid;

    /**
     * 代码库中的代码模板 ID
     */
    @NotNull(message = "代码库中的代码模板ID不能为空")
    @ApiModelProperty(value = "代码库中的代码模板 ID",required = true)
    private Long templateId;

    /**
     * 为了方便第三方平台的开发者引入 extAppid 的开发调试工作
     */
    @NotBlank(message = "extJson不能为空")
    @ApiModelProperty(value = "该参数则是用于控制ext.json配置文件的内容",required = true)
    private String extJson;

    /**
     * 代码版本号，开发者可自定义
     */
    @NotBlank(message = "代码版本号不能为空")
    @ApiModelProperty(value = "代码版本号，开发者可自定义",required = true)
    private String userVersion;

    /**
     * 代码描述，开发者可自定义
     */
    @NotBlank(message = "代码描述不能为空")
    @ApiModelProperty(value = "代码描述，开发者可自定义",required = true)
    private String userDesc;
}
