package com.fs.watch.domain;

import com.fasterxml.jackson.annotation.JsonFormat;

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

/**
 * 设备心电数据，一次测量会分成很多包上传，同一次测量的心电数据包时间是一样的，可以通过时间分辨每一次测量的数据
 * @TableName watch_ecg_data
 */
public class WatchEcgData implements Serializable {

    /**
     * 主键id
     */
    private UUID id;

    /**
     * 设备编号
     */
    private String deviceId;

    /**
     * 实际数据
     */
    private List<Integer> val;

    /**
     * 数据统计
     */
    private Integer count;

    /**
     * 创建时间
     */
    private String createTime;

    private static final long serialVersionUID = 1L;

    public WatchEcgData() {
    }

    public WatchEcgData(UUID id, String deviceId, List<Integer> val, Integer count, String createTime) {
        this.id = id;
        this.deviceId = deviceId;
        this.val = val;
        this.count = count;
        this.createTime = createTime;
    }

    public UUID getId() {
        return id;
    }

    public void setId(UUID id) {
        this.id = id;
    }

    public String getDeviceId() {
        return deviceId;
    }

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

    public List<Integer> getVal() {
        return val;
    }

    public void setVal(List<Integer> val) {
        this.val = val;
    }

    public Integer getCount() {
        return count;
    }

    public void setCount(Integer count) {
        this.count = count;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }
//    /**
//     * 主键id
//     */
//    private String id;
//
//    /**
//     * 设备编号
//     */
//    private String deviceId;
//
//    /**
//     * 实际数据
//     */
//    private String jsonDataVal;
//
//    /**
//     * 数据统计
//     */
//    private Integer count;
//
//    /**
//     * 创建时间
//     */
//    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
//    private Date createTime;
//
//    private static final long serialVersionUID = 1L;
//
//    /**
//     * 主键id
//     */
//    public String getId() {
//        return id;
//    }
//
//    /**
//     * 主键id
//     */
//    public void setId(String id) {
//        this.id = id;
//    }
//
//    /**
//     * 设备编号
//     */
//    public String getDeviceId() {
//        return deviceId;
//    }
//
//    /**
//     * 设备编号
//     */
//    public void setDeviceId(String deviceId) {
//        this.deviceId = deviceId;
//    }
//
//    /**
//     * 实际数据
//     */
//    public String getJsonDataVal() {
//        return jsonDataVal;
//    }
//
//    /**
//     * 实际数据
//     */
//    public void setJsonDataVal(String jsonDataVal) {
//        this.jsonDataVal = jsonDataVal;
//    }
//
//    /**
//     * 数据统计
//     */
//    public Integer getCount() {
//        return count;
//    }
//
//    /**
//     * 数据统计
//     */
//    public void setCount(Integer count) {
//        this.count = count;
//    }
//
//    /**
//     * 创建时间
//     */
//    public Date getCreateTime() {
//        return createTime;
//    }
//
//    /**
//     * 创建时间
//     */
//    public void setCreateTime(Date createTime) {
//        this.createTime = createTime;
//    }
//
//    @Override
//    public boolean equals(Object that) {
//        if (this == that) {
//            return true;
//        }
//        if (that == null) {
//            return false;
//        }
//        if (getClass() != that.getClass()) {
//            return false;
//        }
//        WatchEcgData other = (WatchEcgData) that;
//        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
//            && (this.getDeviceId() == null ? other.getDeviceId() == null : this.getDeviceId().equals(other.getDeviceId()))
//            && (this.getJsonDataVal() == null ? other.getJsonDataVal() == null : this.getJsonDataVal().equals(other.getJsonDataVal()))
//            && (this.getCount() == null ? other.getCount() == null : this.getCount().equals(other.getCount()))
//            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()));
//    }
//
//    @Override
//    public int hashCode() {
//        final int prime = 31;
//        int result = 1;
//        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
//        result = prime * result + ((getDeviceId() == null) ? 0 : getDeviceId().hashCode());
//        result = prime * result + ((getJsonDataVal() == null) ? 0 : getJsonDataVal().hashCode());
//        result = prime * result + ((getCount() == null) ? 0 : getCount().hashCode());
//        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
//        return result;
//    }
//
//    @Override
//    public String toString() {
//        StringBuilder sb = new StringBuilder();
//        sb.append(getClass().getSimpleName());
//        sb.append(" [");
//        sb.append("Hash = ").append(hashCode());
//        sb.append(", id=").append(id);
//        sb.append(", deviceId=").append(deviceId);
//        sb.append(", jsonDataVal=").append(jsonDataVal);
//        sb.append(", count=").append(count);
//        sb.append(", createTime=").append(createTime);
//        sb.append(", serialVersionUID=").append(serialVersionUID);
//        sb.append("]");
//        return sb.toString();
//    }
}
