package com.njcn.device.biz.pojo.dto;

import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;

/**
 * pqs
 *
 * @author cdf
 * @date 2023/5/10
 */
@Data
public class LineDevGetDTO {
    /**
     * 部门索引
     */
    private String unitId;

    private String unitName;

    /**
     * 监测点索引
     */
    private String pointId;

    private String pointName;

    private Integer lineRunFlag;

    /**
     * 装置监测点索引集合
     */
    private List<String> monitorIds;

    /**
     * 监测点电压等级
     */
    private String voltageLevel;

    /**
     * 监测点统计间隔
     */
    private Integer interval;

    /**
     * 装置索引
     */
    private String devId;

    /**
     * 0.主网 1.配网
     */
    private Integer type;

    /**
     * 1.I类监测点 2.II类监测点 3.III类监测点
     */
    private Integer lineType;

    /**
     * pq返回干扰源类型 pms主网返回监测对象类型，配网返回监测点类别
     */
    private String lineTag;

    /**
     * 监测点对象类型
     */
    private String objType;

    /**
     * 监测点对象
     */
    private String objId;

    /**
     * 装置通讯状态
     */
    private Integer comFlag;

    /**
     * 装置数据最新更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 是否上送国网是否是上送国网监测点,0-否 1-是
     */
    private Integer isUpToGrid;

    /**
     * 0.未上送 1.已上送 2.取消上送 3.待重新上送(用于典型负荷)
     */
    private Integer isUploadHead;

    /**
     * 0.未上送 1.已上送 2.取消上送 3.待重新上送(用于主网监测点)
     */
    private Integer monitorUploadStatus;

    /**
     * oracle监测点id
     */
    private Integer oracleLineId;

    /**
     * 接线方式 0.星型 1.星三角 2.三角
     */
    private String wiringMethod;

    /**
     * 监测点统计间隔(解决MySQL关键字问题)
     */
    private Integer timeInterval;


    public void setTimeInterval(Integer timeInterval) {
        if(Objects.nonNull(timeInterval)) {
            this.interval = timeInterval;
            this.timeInterval = timeInterval;
        }
    }
}
