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

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

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

/**
 * 监测点暂态指标数据统计表(RStatEventOrg)实体类
 *
 * @author yzh
 * @since 2022-10-12 18:15:26
 */

@Data
@ApiModel("监测点暂态指标数据统计表")
public class RStatEventOrgVO implements Serializable {
    private static final long serialVersionUID = -15971491825708754L;
    /**
     * 单位ID
     */
    @ApiModelProperty(name = "orgNo", value = "单位ID")
    private String orgNo;

    /**
     * 单位名称
     */
    @ApiModelProperty(name = "orgName", value = "单位名称")
    private String orgName;

    /**
     * 生成数据的时间,每年统计一次
     */
    @ApiModelProperty(name = "dataDate", value = "生成数据的时间,每年统计一次")
    private Date dataDate;

    /**
     * 日均有效接入监测点数
     */
    @ApiModelProperty(name = "effectiveMeasurementAverage", value = "日均有效接入监测点数")
    private Integer effectiveMeasurementAverage;

    /**
     * 累计有效接入监测点数
     */
    @ApiModelProperty(name = "effectiveMeasurementAccrued", value = "累计有效接入监测点数")
    private Integer effectiveMeasurementAccrued;

    /**
     * 日均监测到暂态指标的监测点数
     */
    @ApiModelProperty(name = "eventMeasurementAverage", value = "日均监测到暂态指标的监测点数")
    private Integer eventMeasurementAverage;

    /**
     * 累计监测到暂态指标的监测点数
     */
    @ApiModelProperty(name = "eventMeasurementAccrued", value = "累计监测到暂态指标的监测点数")
    private Integer eventMeasurementAccrued;

    /**
     * 日均暂态超标监测点数占比
     */
    @ApiModelProperty(name = "eventMeasurementRatioAverage", value = "日均暂态超标监测点数占比")
    private Integer eventMeasurementRatioAverage;

    /**
     * 累计暂态超标监测点数占比
     */
    @ApiModelProperty(name = "eventMeasurementRatioAccrued", value = "累计暂态超标监测点数占比")
    private Integer eventMeasurementRatioAccrued;

    /**
     * 暂态指标类型Id，字典表ID
     */
    @ApiModelProperty(name = "eventType", value = "暂态指标类型Id，字典表ID")
    private String eventType;

    /**
     * 日均短时中断
     */
    @ApiModelProperty(name = "eEventMeasurementAverage", value = "日均暂态指标")
    private Integer eEventMeasurementAverage;

    /**
     * 累计短时中断
     */
    @ApiModelProperty(name = "eEventMeasurementAccrued", value = "累计暂态指标")
    private Integer eEventMeasurementAccrued;

    /**
     * 日均短时中断占比
     */
    @ApiModelProperty(name = "eEventMeasurementRatioAverage", value = "日均暂态指标占比")
    private Double eEventMeasurementRatioAverage;

    /**
     * 累计短时中断占比
     */
    @ApiModelProperty(name = "eEventMeasurementRatioAccrued", value = "累计暂态指标占比")
    private Double eEventMeasurementRatioAccrued;



    /**
     * 暂态指标
     */
    @ApiModelProperty(name = "shortInterruptions", value = "短时中断")
    private List<EventStatis> eventStatis;


    /**
     * 暂态指标
     */
    @Data
    public static class EventStatis {

        /**
         * 字典名称
         */
        private String dictDataName;

        /**
         * 暂态指标类型Id，字典表ID
         */
        @ApiModelProperty(name = "eventType", value = "暂态指标类型Id，字典表ID")
        private String eventType;

        /**
         * 日均短时中断
         */
        @ApiModelProperty(name = "eEventMeasurementAverage", value = "日均暂态指标")
        private Integer eEventMeasurementAverage;

        /**
         * 累计短时中断
         */
        @ApiModelProperty(name = "eEventMeasurementAccrued", value = "累计暂态指标")
        private Integer eEventMeasurementAccrued;

        /**
         * 日均短时中断占比
         */
        @ApiModelProperty(name = "eEventMeasurementRatioAverage", value = "日均暂态指标占比")
        private Double eEventMeasurementRatioAverage;

        /**
         * 累计短时中断占比
         */
        @ApiModelProperty(name = "eEventMeasurementRatioAccrued", value = "累计暂态指标占比")
        private Double eEventMeasurementRatioAccrued;
    }
}

