feat(influx): 添加APF数据实体和映射器

- 创建ApfData实体类,定义APF相关数据字段和序列化配置
- 配置InfluxDB注解包括测量名称、时间列和标签列
- 定义电压、电流、功率等APF监测参数字段
- 实现InfluxDbBaseMapper接口创建ApfDataMapper数据访问层
This commit is contained in:
xy
2026-06-02 14:47:23 +08:00
parent 1a54d53014
commit 91e42a1679
2 changed files with 112 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
package com.njcn.influx.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.influx.pojo.po.cs.ApfData;
/**
* @author hongawen
* @version 1.0.0
* @date 2023年07月17日 11:05
*/
public interface ApfDataMapper extends InfluxDbBaseMapper<ApfData> {
}

View File

@@ -0,0 +1,98 @@
package com.njcn.influx.pojo.po.cs;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.njcn.influx.utils.InstantDateSerializer;
import lombok.Data;
import org.influxdb.annotation.Column;
import org.influxdb.annotation.Measurement;
import org.influxdb.annotation.TimeColumn;
import java.io.Serializable;
import java.time.Instant;
/**
* *
* @author xy
* 部分字段,后续有需要自行添加字段
* @version V1.0.0
*/
@Data
@Measurement(name = "apf_data")
public class ApfData implements Serializable {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
private Instant time;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phaseType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag;
@Column(name = "value_type",tag = true)
private String valueType;
@Column(name = "cl_did")
private String clDid;
@Column(name = "process")
private String process;
@Column(name = "Apf_Freq")
private Double apfFreq;
@Column(name = "Apf_RmsI_TolOut")
private Double apfRmsITolOut;
@Column(name = "Apf_RmsI_Sys")
private Double apfRmsISys;
@Column(name = "Apf_ThdA_Sys")
private Double apfThdASys;
@Column(name = "Apf_PhV_Sys")
private Double apfPhVSys;
@Column(name = "Apf_ThdU_Sys")
private Double apfThdUSys;
@Column(name = "Apf_RmsI_Load")
private Double apfRmsILoad;
@Column(name = "Apf_ThdA_Load")
private Double apfThdALoad;
@Column(name = "Apf_P_Load")
private Double apfPLoad;
@Column(name = "Apf_P_Sys")
private Double apfPSys;
@Column(name = "Apf_Q_Load")
private Double apfQLoad;
@Column(name = "Apf_Q_Sys")
private Double apfQSys;
@Column(name = "Apf_S_Load")
private Double apfSLoad;
@Column(name = "Apf_S_Sys")
private Double apfSSys;
@Column(name = "Apf_PF_Load")
private Double apfPFLoad;
@Column(name = "Apf_PF_Sys")
private Double apfPFSys;
}