package com.shlb.timescaledbutils.entity;
|
|
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import lombok.Data;
|
import lombok.experimental.Accessors;
|
|
import java.util.Date;
|
import java.util.Map;
|
|
/**
|
* 点位时序数据实体类
|
* 对应 TimescaleDB 中的 point_time_data 超表
|
*/
|
@Data
|
@Accessors(chain = true)
|
@TableName(value = "point_time_data", autoResultMap = true)
|
public class PointData {
|
|
/**
|
* 时间戳 (TimescaleDB 的核心分区键)
|
*/
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
private Date time;
|
|
/**
|
* 点位 Key
|
*/
|
private String pointKey;
|
|
/**
|
* 点位值
|
*/
|
private String pointValue;
|
|
/**
|
* 可选的标签/元数据 (JSONB)
|
*/
|
@TableField(typeHandler = FastjsonTypeHandler.class)
|
private Map<String, Object> tags;
|
|
/**
|
* 班次 (1位数字)
|
*/
|
private Integer shift;
|
|
/**
|
* 设备号 (3位数字)
|
*/
|
private Integer equNo;
|
}
|