package com.xzzn.ems.domain.vo;

import java.math.BigDecimal;
import java.util.List;

/**
 * 综合查询返回-设备数据list
 */
public class DevicePointDataList
{
    // 设备id
    private String deviceId;
    // 父类设备id
    private String parentDeviceId;
    // 该设备点位数据list
    private List<GeneralQueryDataVo> pointValueList;
    // 最大值&时间
    private BigDecimal maxValue;
    private String maxDate;
    // 最小值&时间
    private BigDecimal minValue;
    private String minDate;
    // 平均值（保留4位小数）
    private BigDecimal avgValue;
    // 差值（max - min）
    private BigDecimal diffValue;
    // 第一四分位数
    private BigDecimal q1;
    // 中位数
    private BigDecimal median;
    // 第三四分位数
    private BigDecimal q3;

    public DevicePointDataList(String deviceId, List<GeneralQueryDataVo> pointValueList,String parentDeviceId,
                               BigDecimal maxValue, BigDecimal minValue,
                               BigDecimal avgValue, BigDecimal diffValue,
                               String maxDate, String minDate) {
        this(deviceId, pointValueList, parentDeviceId, maxValue, minValue, avgValue, diffValue, maxDate, minDate, null, null, null);
    }

    public DevicePointDataList(String deviceId, List<GeneralQueryDataVo> pointValueList,String parentDeviceId,
                               BigDecimal maxValue, BigDecimal minValue,
                               BigDecimal avgValue, BigDecimal diffValue,
                               String maxDate, String minDate,
                               BigDecimal q1, BigDecimal median, BigDecimal q3) {
        this.deviceId = deviceId;
        this.pointValueList = pointValueList;
        this.parentDeviceId = parentDeviceId;
        this.maxValue = maxValue;
        this.minValue = minValue;
        this.avgValue = avgValue;
        this.diffValue = diffValue;
        this.maxDate = maxDate;
        this.minDate = minDate;
        this.q1 = q1;
        this.median = median;
        this.q3 = q3;
    }

    public DevicePointDataList(String deviceId, String parentDeviceId, List<GeneralQueryDataVo> pointValueList) {
        this.deviceId = deviceId;
        this.parentDeviceId = parentDeviceId;
        this.pointValueList = pointValueList;
    }

    public DevicePointDataList() {

    }

    public String getMaxDate() {
        return maxDate;
    }

    public void setMaxDate(String maxDate) {
        this.maxDate = maxDate;
    }

    public String getMinDate() {
        return minDate;
    }

    public void setMinDate(String minDate) {
        this.minDate = minDate;
    }

    public String getDeviceId() {
        return deviceId;
    }

    public void setDeviceId(String deviceId) {
        this.deviceId = deviceId;
    }

    public List<GeneralQueryDataVo> getPointValueList() {
        return pointValueList;
    }

    public void setPointValueList(List<GeneralQueryDataVo> pointValueList) {
        this.pointValueList = pointValueList;
    }

    public String getParentDeviceId() {
        return parentDeviceId;
    }

    public void setParentDeviceId(String parentDeviceId) {
        this.parentDeviceId = parentDeviceId;
    }

    public BigDecimal getMaxValue() {
        return maxValue;
    }

    public void setMaxValue(BigDecimal maxValue) {
        this.maxValue = maxValue;
    }

    public BigDecimal getMinValue() {
        return minValue;
    }

    public void setMinValue(BigDecimal minValue) {
        this.minValue = minValue;
    }

    public BigDecimal getAvgValue() {
        return avgValue;
    }

    public void setAvgValue(BigDecimal avgValue) {
        this.avgValue = avgValue;
    }

    public BigDecimal getDiffValue() {
        return diffValue;
    }

    public void setDiffValue(BigDecimal diffValue) {
        this.diffValue = diffValue;
    }

    public BigDecimal getQ1() {
        return q1;
    }

    public void setQ1(BigDecimal q1) {
        this.q1 = q1;
    }

    public BigDecimal getMedian() {
        return median;
    }

    public void setMedian(BigDecimal median) {
        this.median = median;
    }

    public BigDecimal getQ3() {
        return q3;
    }

    public void setQ3(BigDecimal q3) {
        this.q3 = q3;
    }
}
