package com.hdkj.lt.core.bizms.modle.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

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

/**
 * topo 表实体类，记录各设备信息
 *
 * @author zhuzhe
 * @since 2025-05-12
 */
@TableName("t_feeder_topo")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class FeederTopo implements Serializable {

    private String rdfId;
    private String psrId;
    private String mrId;

    @ApiModelProperty(value = "设备名称")
    private String name;

    @ApiModelProperty(value = "设备别名")
    private String aliasname;

    @ApiModelProperty(value = "设备类型")
    private String psrType;

    @ApiModelProperty(value = "设备类型名称")
    private String psrTypeName;

    @ApiModelProperty(value = "所属站房RDFID")
    private String sszfRdfid;

    @ApiModelProperty(value = "所属站房名称")
    private String sszfName;

    @ApiModelProperty(value = "所属站房类型")
    private String sszfType;

    @ApiModelProperty(value = "所属站房类型名称")
    private String sszfTypeName;

    @ApiModelProperty(value = "所属站房PSRID")
    private String sszfPsrId;

    private String compositeSwitch;

    @ApiModelProperty(value = "父设备PSRID")
    private String pid;

    private String open;

    @ApiModelProperty(value = "是否联络开关 等于true 为是")
    private String normalOpen;

    @ApiModelProperty(value = "是否是出线开关  1是 0否")
    private String isStartKg;

    @ApiModelProperty(value = "所属主线或分支类型  （主线、普通分支、大分支）")
    private String zxfzType;

    @ApiModelProperty(value = "所属分支首端设备ID")
    private String fzId;

    @ApiModelProperty(value = "分支名称")
    private String fzName;

    @ApiModelProperty(value = "是否为分支首端开关  等于true为是")
    private String sfFzSdkg;

    @ApiModelProperty(value = "设备容量")
    private Double sbRl;

    @ApiModelProperty(value = "出线开关-当前设备的长度")
    private Double length;

    @ApiModelProperty(value = "是否为分界开关 （是/否）")
    private String sfFjKg;

    @ApiModelProperty(value = "是否为分界开关下的用户   是/否")
    private String sfFjYh;

    @ApiModelProperty(value = "所属上游分段开关PSRID")
    private String startKgId;

    @ApiModelProperty(value = "所属分段开关名称")
    private String startKgName;

    @ApiModelProperty(value = "所属线路")
    private String feeder;

    @ApiModelProperty(value = "所属地市")
    private String cityCode;

    @ApiModelProperty(value = "设备长度（导线段、电缆段）")
    private Double sbLength;

    @ApiModelProperty(value = "挂接配变数量")
    private Long gjPbSl;

    @ApiModelProperty(value = "中压光伏用户数")
    private String gfsl;

    @ApiModelProperty(value = "是否分支首段设备 是/否")
    private String sfFzSdsb;

    @ApiModelProperty(value = "是否自动化开关之后的设备")
    private String sfAfterZdhSb;

    @ApiModelProperty(value = "是否自动化设备")
    private String sfZdhSb;

    private Double zybMaxRl;

    @ApiModelProperty(value = "资产ID")
    private String assetsId;

    @ApiModelProperty(value = "所属线路名称")
    private String feederName;

    @ApiModelProperty(value = "所属负荷组分段开关名称")
    private String ssFhzfdkgName;

    @ApiModelProperty(value = "所属负荷组分段开关ID")
    private String ssFhzfdkgId;

    @TableField(exist = false)
    private List<String> psrTypeList;

    @TableField(exist = false)
    private List<String> psrIdList;

    @TableField(exist = false)
    private Long pageSize;

    @TableField(exist = false)
    private Long pageNum;

}

