package com.njcn.device.pq.pojo.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * pqs
 * 终端程序版本VO
 * @author cdf
 * @date 2022/5/12
 */
@Data
@ApiModel
public class TerminalVersionVO implements Serializable {
    @ApiModelProperty(name="序号")
    private Integer index;
    @ApiModelProperty(name = "拓扑名称")
    private String name;
    @ApiModelProperty(name = "拓扑id")
    private String id;
    @ApiModelProperty(name = "父id")
    private String pid;
    @ApiModelProperty(name = "层级")
    private Integer level;
    @ApiModelProperty(name = "ip地址")
    private String ip;
    @ApiModelProperty(name = "装置通讯状态")
    private Integer comFlag;
    @ApiModelProperty(name = "运行状态")
    private Integer runFlag;
    @ApiModelProperty(name = "程序版本号")
    private String versionName;
    @ApiModelProperty(name = "程序版本协议")
    private String protocol;
    @ApiModelProperty(name = "程序版本日期")
    private String versionDate;
    @ApiModelProperty(name = "装置型号")
    private String devType;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(name = "更新日期")
    private String updateTime;
    @ApiModelProperty(name = "升级人员")
    private String updateBy;
    @ApiModelProperty(name = "版本序号")
    private String versionId;
    @ApiModelProperty(name = "子级")
    List<TerminalVersionVO> children;

    @Data
    public static class Version{

        @ApiModelProperty(name = "终端编号")
        private String id;

        @ApiModelProperty(name = "终端名称")
        private String name;

        @ApiModelProperty(name = "版本序号")
        private String versionName;

        @ApiModelProperty(name = "版本协议")
        private String protocol;

        @ApiModelProperty(name = "版本日期")
        private String versionDate;

        @ApiModelProperty(name = "终端系列")
        private String devSeries;

        @ApiModelProperty(name = "终端型号")
        private String devType;

        @ApiModelProperty(name = "供电公司")
        private String gbName;

        @ApiModelProperty(name = "变电站")
        private String subName;

        @ApiModelProperty(name = "更新时间")
        private String updateTime;

        @ApiModelProperty(name = "修改人")
        private String updateBy;
    }
}
