package cn.iocoder.yudao.module.pms.controller.admin.yanfan.protocol.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - yf协议 Response VO")
@Data
@ExcelIgnoreUnannotated
public class IotYfProtocolRespVO {

    @Schema(description = "自增id", requiredMode = Schema.RequiredMode.REQUIRED, example = "8132")
    @ExcelProperty("自增id")
    private Long id;

    @Schema(description = "协议编码", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("协议编码")
    private String protocolCode;

    @Schema(description = "协议名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
    @ExcelProperty("协议名称")
    private String protocolName;

    @Schema(description = "协议jar包,js包，c程序上传地址", requiredMode = Schema.RequiredMode.REQUIRED, example = "https://www.iocoder.cn")
    @ExcelProperty("协议jar包,js包，c程序上传地址")
    private String protocolFileUrl;

    @Schema(description = "协议类型 0:未知 1:jar，2.js,3.c", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @ExcelProperty("协议类型 0:未知 1:jar，2.js,3.c")
    private Integer protocolType;

    @Schema(description = "协议文件摘要(文件的md5)", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("协议文件摘要(文件的md5)")
    private String jarSign;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "0:草稿 1:启用 2:停用", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @ExcelProperty("0:草稿 1:启用 2:停用")
    private Integer protocolStatus;

    @Schema(description = "0:正常 1:删除", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("0:正常 1:删除")
    private Integer delFlag;

    @Schema(description = "部门id", example = "8215")
    @ExcelProperty("部门id")
    private Long deptId;

}
