package org.qinan.safetyeval.client.change.request;

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

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

/**
 * 备案申请材料-变更新增Cmd
 *
 * @Author: ltq
 * @date 2026-07-02 10:04:07
 */
@Data
public class QualFilingMaterialChangeAddCmd implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 备案变更id
     */
    @ApiModelProperty(value = "备案变更id", required = true)
    @NotNull(message = "备案变更id不能为空")
    private Long filingChangeId;
    /**
     * 材料类型1,申请材料目录（原件）,2,申请书（原件）,3,法人证明（复印件）,4,三年内无重大违法失信记录查询证明,5,法定代表人承诺书（原件）,6,固定资产法定证明材料,7,工作场所及档案室面积证明,8,安全评价师专业能力证明,9,相关负责人证明材料,10,机构内部管理制度
     */
    @ApiModelProperty(value = "材料类型1,申请材料目录（原件）,2,申请书（原件）,3,法人证明（复印件）,4,三年内无重大违法失信记录查询证明,5,法定代表人承诺书（原件）,6,固定资产法定证明材料,7,工作场所及档案室面积证明,8,安全评价师专业能力证明,9,相关负责人证明材料,10,机构内部管理制度", required = true)
    @NotBlank(message = "材料类型1,申请材料目录（原件）,2,申请书（原件）,3,法人证明（复印件）,4,三年内无重大违法失信记录查询证明,5,法定代表人承诺书（原件）,6,固定资产法定证明材料,7,工作场所及档案室面积证明,8,安全评价师专业能力证明,9,相关负责人证明材料,10,机构内部管理制度不能为空")
    private Integer materialType;
    /**
     * 材料内容
     */
    @ApiModelProperty(value = "材料内容", required = true)
    @NotBlank(message = "材料内容不能为空")
    private String materialContent;
    /**
     * 材料格式
     */
    @ApiModelProperty(value = "材料格式")
    private String materialFormat;
    /**
     * 排序序号
     */
    @ApiModelProperty(value = "排序序号")
    private Long sortOrder;
    /**
     * 是否必需(1是2否)
     */
    @ApiModelProperty(value = "是否必需(1是2否)")
    private Long requiredFlag;
    /**
     * 上传状态编码(1待上传2已上传)
     */
    @ApiModelProperty(value = "上传状态编码(1待上传2已上传)")
    private Long uploadStatusCode;
    /**
     * 上传状态名称
     */
    @ApiModelProperty(value = "上传状态名称")
    private String uploadStatusName;
    /**
     * 上传附件说明
     */
    @ApiModelProperty(value = "上传附件说明")
    private String attachmentDesc;
    /**
     * 上传附件地址
     */
    @ApiModelProperty(value = "上传附件地址")
    private String attachmentUrl;
    /**
     * 注释
     */
    @ApiModelProperty(value = "注释")
    private String materialRemark;
    /**
     * 环境
     */
    @ApiModelProperty(value = "环境")
    private String env;

}
