diff --git a/.gitignore b/.gitignore
index 9154f4c..15cc7a6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,9 @@
-# ---> Java
# Compiled class file
*.class
+*.iml
+*.idea
+target/
+logs/
# Log file
*.log
@@ -14,13 +17,34 @@
# Package Files #
*.jar
*.war
-*.nar
*.ear
-*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
-replay_pid*
+*velocity.log*
+
+# Eclipse #
+.classpath
+.project
+.settings/
+
+.DS_Store
+
+_dockerCerts/
+
+.factorypath
+
+node_modules/
+package-lock.json
+yarn.lock
+
+rebel.xml
+
+!DmJdbcDriver18.jar
+!kingbase8-8.6.0.jar
+/.fastRequest/collections/Root/Default Group/directory.json
+/.fastRequest/collections/Root/directory.json
+/.fastRequest/config/fastRequestCurrentProjectConfig.json
diff --git a/README.md b/README.md
index 6471f55..1031d40 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,6 @@
# pqs-influx
+### 描述
+
+ 该项目用来统一管理项目中涉及到的时序数据表结构,以及部分公共方法。
+后续会有很多小工具的开发涉及到influx数据库,均引用此项目,确保表结构保持一致。
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..61afa83
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,29 @@
+
+
+ 4.0.0
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 2.3.12.RELEASE
+
+
+ com.njcn
+ pqs-influx
+ influx公共模块
+ pqs-influx
+
+
+ 8
+ 8
+
+
+
+
+ com.njcn
+ influxdb-springboot-starter
+ 1.0.0
+
+
+
+
diff --git a/src/main/java/com/njcn/influx/deprecated/InfluxDBPublicParam.java b/src/main/java/com/njcn/influx/deprecated/InfluxDBPublicParam.java
new file mode 100644
index 0000000..c9e1619
--- /dev/null
+++ b/src/main/java/com/njcn/influx/deprecated/InfluxDBPublicParam.java
@@ -0,0 +1,279 @@
+package com.njcn.influx.deprecated;
+
+/**
+ * 类的介绍:使用influxDB查询时的公共参数
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/6/24 15:02
+ */
+@Deprecated
+public interface InfluxDBPublicParam {
+
+ /**
+ * 暂态事件汇总表
+ */
+ String PQS_EVENT_DETAIL = " pqs_eventdetail";
+
+ /**
+ * 电压波动闪变表
+ */
+ String DATA_FLICKER = "data_flicker";
+
+ /**
+ * 电压波动表
+ */
+ String DATA_FLUC = "data_fluc";
+
+ /**
+ * 谐波电流角度表
+ */
+ String DATA_HARM_PHASIC_I = "data_harmphasic_i";
+
+ /**
+ * 谐波电压角度表
+ */
+ String DATA_HARM_PHASIC_V = "data_harmphasic_v";
+
+ /**
+ * 有功功率表
+ */
+ String DATA_HARM_POWER_P = "data_harmpower_p";
+
+ /**
+ * 无功功率表
+ */
+ String DATA_HARM_POWER_Q = "data_harmpower_q";
+
+ /**
+ * 视在功率表
+ */
+ String DATA_HARM_POWER_S = "data_harmpower_s";
+
+ /**
+ * 谐波电流含有率表
+ */
+ String DATA_HARM_RATE_I = "data_harmrate_i";
+
+ /**
+ * 谐波电压含有率表
+ */
+ String DATA_HARM_RATE_V = "data_harmrate_v";
+
+ /**
+ * 电流表
+ */
+ String DATA_I = "data_i";
+
+ /**
+ * 电流间谐波幅值表
+ */
+ String DATA_IN_HARM_I = "data_inharm_i";
+
+ /**
+ * 电压间谐波幅值表
+ */
+ String DATA_IN_HARM_V = "data_inharm_v";
+
+ /**
+ * 长时闪变表
+ */
+ String DATA_PLT = "data_plt";
+
+ /**
+ * 电压表
+ */
+ String DATA_V = "data_v";
+
+ /**
+ * 日统计-电压波动闪变表
+ */
+ String DAY_FLICKER = "day_flicker";
+
+ /**
+ * 日统计-电压波动表
+ */
+ String DAY_FLUC = "day_fluc";
+
+ /**
+ * 日统计-谐波电流角度表
+ */
+ String DAY_HARM_PHASIC_I = "day_harmphasic_i";
+
+ /**
+ * 日统计-谐波电压角度表
+ */
+ String DAY_HARM_PHASIC_V = "day_harmphasic_v";
+
+ /**
+ * 日统计-有功功率表
+ */
+ String DAY_HARM_POWER_P = "day_harmpower_p";
+
+ /**
+ * 日统计-无功功率表
+ */
+ String DAY_HARM_POWER_Q = "day_harmpower_q";
+
+ /**
+ * 日统计-视在功率表
+ */
+ String DAY_HARM_POWER_S = "day_harmpower_s";
+
+ /**
+ * 日统计-谐波电流含有率表
+ */
+ String DAY_HARM_RATE_I = "day_harmrate_i";
+
+ /**
+ * 日统计-谐波电压含有率表
+ */
+ String DAY_HARM_RATE_V = "day_harmrate_v";
+
+ /**
+ * 日统计-电流表
+ */
+ String DAY_I = "day_i";
+
+ /**
+ * 日统计-电流间谐波幅值表
+ */
+ String DAY_IN_HARM_I = "day_inharm_i";
+
+ /**
+ * 日统计-电压间谐波幅值表
+ */
+ String DAY_IN_HARM_V = "day_inharm_v";
+
+ /**
+ * 日统计-长时闪变表
+ */
+ String DAY_PLT = "day_plt";
+
+ /**
+ * 日统计-电压表
+ */
+ String DAY_V = "day_v";
+
+ /**
+ * 时区
+ */
+ String TIME_ZONE = " tz('Asia/Shanghai')";
+
+ String TZ = "Asia/Shanghai";
+
+
+ /**
+ * 日起始时间
+ */
+ String START_TIME = " 00:00:00";
+
+ /**
+ * 日结束时间
+ */
+ String END_TIME = " 23:59:59";
+
+ /**
+ * 时间
+ */
+ String TIME = "time";
+
+ /**
+ * 数据线路号
+ */
+ String LINE_ID = "line_id";
+
+ /**
+ * 装置ID
+ */
+ String DEV_ID = "dev_id";
+
+ /**
+ * 数据类型
+ */
+ String PHASIC_TYPE = "phasic_type";
+
+ /**
+ * 指标类型
+ */
+ String VALUE_TYPE = "value_type";
+
+ /**
+ * 数据质量标志
+ */
+ String QUALITY_FLAG = "quality_flag";
+
+ /**
+ * limit_rate
+ */
+ String LIMIT_RATE = "limit_rate";
+
+ /**
+ * limit_target
+ */
+ String LIMIT_TARGET = "limit_target";
+
+ /**
+ * pqs_comasses
+ */
+ String PQS_COMASSES = "pqs_comasses";
+
+ /**
+ * 终端运维日志表
+ */
+ String PQS_TERMINAL_LOGS = "pqs_terminal_logs";
+
+ /**
+ * 监测点状态信息表
+ */
+ String PQS_COMMUNICATE = "pqs_communicate";
+
+ String PQS_ACTUAL_FLOW = "pqs_actual_flow";
+
+ String CLD_STATIS_FLOW = "cld_statis_flow";
+
+ /**
+ * 终端在线率表
+ */
+ String PQS_ONLINERATE = "pqs_onlinerate";
+
+ /**
+ * 数据完整性表
+ */
+ String PQS_INTEGRITY = "pqs_integrity";
+
+ /**
+ * 终端在线率表公共字段
+ */
+ String ONLINE_MIN = "online_min";
+
+ String OFFLINE_MIN = "offline_min";
+
+ String ONLINE_RATE = "online_rate";
+
+ /**
+ * data表中InfluxDBPublicParam
+ */
+ String VALUETYPE = "value_type";
+
+
+ /**
+ * 数据完整性表公共字段
+ */
+ String DUE = "due";
+
+ String REAL = "real";
+
+ String DEV_INDEX = "dev_id";
+
+ /**
+ * 稳态数据分析字段
+ */
+ String PHASIC_TYPET = "T";
+
+ /**
+ * 每天固定时间分钟
+ */
+ Integer DAY_MINUTE = 1440;
+
+}
diff --git a/src/main/java/com/njcn/influx/deprecated/InfluxDBSqlConstant.java b/src/main/java/com/njcn/influx/deprecated/InfluxDBSqlConstant.java
new file mode 100644
index 0000000..19f23de
--- /dev/null
+++ b/src/main/java/com/njcn/influx/deprecated/InfluxDBSqlConstant.java
@@ -0,0 +1,111 @@
+package com.njcn.influx.deprecated;
+
+import cn.hutool.core.text.StrPool;
+
+/**
+ * 拼接influx查询语句相关常量
+ *
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2022年10月14日 14:02
+ */
+@Deprecated
+public interface InfluxDBSqlConstant {
+
+ /**
+ * "SELECT "
+ */
+ String SELECT = "SELECT" + StrPool.C_SPACE;
+
+ /**
+ * "* "
+ */
+ String ALL = "*" + StrPool.C_SPACE;
+
+ /**
+ * "FROM "
+ */
+ String FROM = "FROM" + StrPool.C_SPACE;
+
+ /**
+ * " WHERE "
+ */
+ String WHERE = StrPool.C_SPACE + "WHERE" + StrPool.C_SPACE;
+
+ /**
+ * " AND "
+ */
+ String AND = StrPool.C_SPACE + "AND" + StrPool.C_SPACE;
+
+ /**
+ * " OR "
+ */
+ String OR = StrPool.C_SPACE + "OR" + StrPool.C_SPACE;
+
+ /**
+ * " GROUP BY "
+ */
+ String GB = StrPool.C_SPACE + "GROUP BY" + StrPool.C_SPACE;
+
+ /**
+ * " ORDER BY "
+ */
+ String OB = StrPool.C_SPACE + "ORDER BY" + StrPool.C_SPACE;
+
+ /**
+ * “DESC ”
+ */
+ String DESC = "DESC" + StrPool.C_SPACE;
+
+ /**
+ * " as value "
+ */
+ String AS_VALUE = StrPool.C_SPACE + "as value" + StrPool.C_SPACE;
+
+ String EQ = "=";
+ String QM = "'";
+ String LBK = "(";
+ String RBK = ")";
+ String GT = ">";
+ String GE = ">=";
+ String LT = "<";
+ String LE = "<=";
+
+ /**
+ * influxDB函数拼接
+ */
+ String MAX = "MAX";
+ String MIN = "MIN";
+ String AVG = "MEAN";
+ String NUM_95 = ",95";
+ String CP95 = "PERCENTILE";
+
+ /**
+ * “ tz('Asia/Shanghai')”
+ */
+ String TZ = StrPool.C_SPACE + "tz('Asia/Shanghai')";
+ String TIME_AREA = "Asia/Shanghai";
+
+
+ /**
+ * 日起始时间
+ */
+ String START_TIME = " 00:00:00";
+
+ /**
+ * 日结束时间
+ */
+ String END_TIME = " 23:59:59";
+
+ /**
+ * 时间
+ */
+ String TIME = "time" + StrPool.C_SPACE;
+
+ /**
+ * 每天固定时间分钟
+ */
+ Integer DAY_MINUTE = 1440;
+
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/CldStatisticsFlowMapper.java b/src/main/java/com/njcn/influx/imapper/CldStatisticsFlowMapper.java
new file mode 100644
index 0000000..0ac48c8
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/CldStatisticsFlowMapper.java
@@ -0,0 +1,19 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.dto.DeviceDayFlowDTO;
+import com.njcn.influx.pojo.po.CldStatisFlow;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月04日 20:50
+ */
+public interface CldStatisticsFlowMapper extends InfluxDbBaseMapper{
+
+
+ List selectDeviceDayFlowByQueryWrapper(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/CommonMapper.java b/src/main/java/com/njcn/influx/imapper/CommonMapper.java
new file mode 100644
index 0000000..696598b
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/CommonMapper.java
@@ -0,0 +1,41 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.ano.Param;
+import com.njcn.influx.ano.Select;
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.bo.HarmonicHistoryData;
+import com.njcn.influx.pojo.dto.StatisticalDataDTO;
+import com.njcn.influx.pojo.po.PowerQualityData;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/5/5 14:39
+ */
+
+public interface CommonMapper extends InfluxDbBaseMapper {
+
+ StatisticalDataDTO getLineRtData(InfluxQueryWrapper influxQueryWrapper);
+
+ List getDeviceRtData(InfluxQueryWrapper influxQueryWrapper);
+
+ List getDeviceRtDataByTime(InfluxQueryWrapper influxQueryWrapper);
+
+ StatisticalDataDTO getLineHistoryData(InfluxQueryWrapper influxQueryWrapper);
+
+ @Select(value = "#{sql}",resultType = StatisticalDataDTO.class)
+ StatisticalDataDTO selectBySql(@Param("sql") StringBuilder sql);
+
+ @Select(value = "#{sql}",resultType = StatisticalDataDTO.class)
+ List> selectLimitTargetBySql(@Param("sql")String sql);
+
+ @Select(value = "#{sql}",resultType = HarmonicHistoryData.class)
+ List getHistoryResult(@Param("sql")String sql);
+
+ List getTopTemperature(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataFlickerMapper.java b/src/main/java/com/njcn/influx/imapper/DataFlickerMapper.java
new file mode 100644
index 0000000..bed5476
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataFlickerMapper.java
@@ -0,0 +1,20 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.dto.DataFlickerDTO;
+import com.njcn.influx.pojo.po.DataFlicker;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:55
+ */
+public interface DataFlickerMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+ List getStatisticsByWraper2(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataFlucMapper.java b/src/main/java/com/njcn/influx/imapper/DataFlucMapper.java
new file mode 100644
index 0000000..425783f
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataFlucMapper.java
@@ -0,0 +1,17 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataFluc;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:56
+ */
+public interface DataFlucMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataHarmPhasicIMapper.java b/src/main/java/com/njcn/influx/imapper/DataHarmPhasicIMapper.java
new file mode 100644
index 0000000..0cd975f
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataHarmPhasicIMapper.java
@@ -0,0 +1,17 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmPhasicI;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:56
+ */
+public interface DataHarmPhasicIMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataHarmPhasicVMapper.java b/src/main/java/com/njcn/influx/imapper/DataHarmPhasicVMapper.java
new file mode 100644
index 0000000..5cd5b62
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataHarmPhasicVMapper.java
@@ -0,0 +1,17 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmPhasicV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:56
+ */
+public interface DataHarmPhasicVMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataHarmPowerPMapper.java b/src/main/java/com/njcn/influx/imapper/DataHarmPowerPMapper.java
new file mode 100644
index 0000000..9317c98
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataHarmPowerPMapper.java
@@ -0,0 +1,23 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.ano.Param;
+import com.njcn.influx.ano.Select;
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.bo.CarryCapcityData;
+import com.njcn.influx.pojo.po.DataHarmPowerP;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DataHarmPowerPMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+ @Select(value = "#{sql}",resultType = CarryCapcityData.class)
+ List getSqlResult(@Param("sql")String sql);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataHarmPowerQMapper.java b/src/main/java/com/njcn/influx/imapper/DataHarmPowerQMapper.java
new file mode 100644
index 0000000..29c2720
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataHarmPowerQMapper.java
@@ -0,0 +1,22 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.ano.Param;
+import com.njcn.influx.ano.Select;
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.bo.CarryCapcityData;
+import com.njcn.influx.pojo.po.DataHarmPowerQ;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DataHarmPowerQMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+ @Select(value = "#{sql}",resultType = CarryCapcityData.class)
+ List getSqlResult(@Param("sql")String sql);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataHarmPowerSMapper.java b/src/main/java/com/njcn/influx/imapper/DataHarmPowerSMapper.java
new file mode 100644
index 0000000..51aefc9
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataHarmPowerSMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmPowerS;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DataHarmPowerSMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataHarmRateIMapper.java b/src/main/java/com/njcn/influx/imapper/DataHarmRateIMapper.java
new file mode 100644
index 0000000..16f4d64
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataHarmRateIMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmRateI;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:03
+ */
+public interface DataHarmRateIMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataHarmRateVMapper.java b/src/main/java/com/njcn/influx/imapper/DataHarmRateVMapper.java
new file mode 100644
index 0000000..c6d029a
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataHarmRateVMapper.java
@@ -0,0 +1,23 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.dto.HarmData;
+import com.njcn.influx.pojo.po.DataHarmRateV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:03
+ */
+public interface DataHarmRateVMapper extends InfluxDbBaseMapper {
+
+ DataHarmRateV getMeanAllTimesData(InfluxQueryWrapper influxQueryWrapper);
+
+ List getHarmRateVHistoryData(InfluxQueryWrapper influxQueryWrapper);
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataInHarmIMapper.java b/src/main/java/com/njcn/influx/imapper/DataInHarmIMapper.java
new file mode 100644
index 0000000..5ebb418
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataInHarmIMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataInHarmI;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:03
+ */
+public interface DataInHarmIMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataInHarmRateIMapper.java b/src/main/java/com/njcn/influx/imapper/DataInHarmRateIMapper.java
new file mode 100644
index 0000000..10597da
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataInHarmRateIMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataInHarmRateI;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:03
+ */
+public interface DataInHarmRateIMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataInHarmRateVMapper.java b/src/main/java/com/njcn/influx/imapper/DataInHarmRateVMapper.java
new file mode 100644
index 0000000..c95893f
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataInHarmRateVMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataInHarmRateV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DataInHarmRateVMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataInHarmVMapper.java b/src/main/java/com/njcn/influx/imapper/DataInHarmVMapper.java
new file mode 100644
index 0000000..9ffba8c
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataInHarmVMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataInHarmV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:03
+ */
+public interface DataInHarmVMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataPltMapper.java b/src/main/java/com/njcn/influx/imapper/DataPltMapper.java
new file mode 100644
index 0000000..b3bca48
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataPltMapper.java
@@ -0,0 +1,17 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataPlt;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:56
+ */
+public interface DataPltMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/DataVMapper.java b/src/main/java/com/njcn/influx/imapper/DataVMapper.java
new file mode 100644
index 0000000..7f47309
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/DataVMapper.java
@@ -0,0 +1,27 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.ano.Param;
+import com.njcn.influx.ano.Select;
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.bo.CarryCapcityData;
+import com.njcn.influx.pojo.bo.MeasurementCount;
+import com.njcn.influx.pojo.po.DataV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/5/5 14:39
+ */
+
+public interface DataVMapper extends InfluxDbBaseMapper {
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+ List getMeasurementCount(InfluxQueryWrapper influxQueryWrapper);
+ @Select(value = "#{sql}",resultType = CarryCapcityData.class)
+ List getSqlResult(@Param("sql")String sql);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/EvtDataMapper.java b/src/main/java/com/njcn/influx/imapper/EvtDataMapper.java
new file mode 100644
index 0000000..b771613
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/EvtDataMapper.java
@@ -0,0 +1,26 @@
+package com.njcn.influx.imapper;
+
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+
+import com.njcn.influx.pojo.dto.EventDataSetDTO;
+import com.njcn.influx.pojo.po.cs.EntData;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/5/5 14:39
+ */
+
+public interface EvtDataMapper extends InfluxDbBaseMapper {
+
+
+ List getEventData(InfluxQueryWrapper influxQueryWrapper);
+
+ EventDataSetDTO getEventDataSet(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/HaronicRatioMapper.java b/src/main/java/com/njcn/influx/imapper/HaronicRatioMapper.java
new file mode 100644
index 0000000..4aa065b
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/HaronicRatioMapper.java
@@ -0,0 +1,23 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.HarmonicRatioData;
+import com.njcn.influx.pojo.po.PowerQualityData;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/5/5 14:39
+ */
+
+public interface HaronicRatioMapper extends InfluxDbBaseMapper {
+
+ List getFirstHaronicRatio(InfluxQueryWrapper influxQueryWrapper);
+
+ List getHaronicRatio(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/IDataIMapper.java b/src/main/java/com/njcn/influx/imapper/IDataIMapper.java
new file mode 100644
index 0000000..45e9b9f
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/IDataIMapper.java
@@ -0,0 +1,30 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.ano.Param;
+import com.njcn.influx.ano.Select;
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.dto.HarmData;
+import com.njcn.influx.pojo.po.DataI;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:05
+ */
+public interface IDataIMapper extends InfluxDbBaseMapper {
+
+ DataI getMeanAllTimesData(InfluxQueryWrapper influxQueryWrapper);
+
+// List getIHistoryData(InfluxQueryWrapper influxQueryWrapper);
+
+ @Select(value = "#{sql}",resultType = HarmData.class)
+ List getIHistoryData(@Param("sql")String sql);
+
+ List getStatisticsByWraper(InfluxQueryWrapper influxQueryWrapper);
+
+ @Select(value = "#{sql}",resultType = DataI.class)
+ List getSqlResult(@Param("sql")String sql);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/PowerQualityMapper.java b/src/main/java/com/njcn/influx/imapper/PowerQualityMapper.java
new file mode 100644
index 0000000..02942ac
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/PowerQualityMapper.java
@@ -0,0 +1,22 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.PowerQualityData;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/5/5 14:39
+ */
+
+public interface PowerQualityMapper extends InfluxDbBaseMapper {
+
+ List getFirstPowerQuality(InfluxQueryWrapper influxQueryWrapper);
+
+ List getPowerQuality(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/imapper/PqsCommunicateMapper.java b/src/main/java/com/njcn/influx/imapper/PqsCommunicateMapper.java
new file mode 100644
index 0000000..511295a
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/PqsCommunicateMapper.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.imapper;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.PqsCommunicate;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年08月09日 09:29
+ */
+public interface PqsCommunicateMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayFlickerMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayFlickerMapper.java
new file mode 100644
index 0000000..b5ca419
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayFlickerMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.dto.DataFlickerDTO;
+import com.njcn.influx.pojo.po.DataFlicker;
+import com.njcn.influx.pojo.po.day.DayFlicker;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:55
+ */
+public interface DayFlickerMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayFlucMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayFlucMapper.java
new file mode 100644
index 0000000..89c2995
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayFlucMapper.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataFluc;
+import com.njcn.influx.pojo.po.day.DayFluc;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:56
+ */
+public interface DayFlucMapper extends InfluxDbBaseMapper {
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayHarmPhasicIMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayHarmPhasicIMapper.java
new file mode 100644
index 0000000..c55addc
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayHarmPhasicIMapper.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmPhasicI;
+import com.njcn.influx.pojo.po.day.DayHarmPhasicI;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:56
+ */
+public interface DayHarmPhasicIMapper extends InfluxDbBaseMapper {
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayHarmPhasicVMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayHarmPhasicVMapper.java
new file mode 100644
index 0000000..2577cf4
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayHarmPhasicVMapper.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmPhasicV;
+import com.njcn.influx.pojo.po.day.DayHarmPhasicV;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:56
+ */
+public interface DayHarmPhasicVMapper extends InfluxDbBaseMapper {
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerPMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerPMapper.java
new file mode 100644
index 0000000..a8f937d
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerPMapper.java
@@ -0,0 +1,17 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmPowerP;
+import com.njcn.influx.pojo.po.day.DayHarmPowerP;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DayHarmPowerPMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerQMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerQMapper.java
new file mode 100644
index 0000000..e67750c
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerQMapper.java
@@ -0,0 +1,14 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmPowerQ;
+import com.njcn.influx.pojo.po.day.DayHarmPowerQ;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DayHarmPowerQMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerSMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerSMapper.java
new file mode 100644
index 0000000..93a09d0
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayHarmPowerSMapper.java
@@ -0,0 +1,14 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataHarmPowerS;
+import com.njcn.influx.pojo.po.day.DayHarmPowerS;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DayHarmPowerSMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayHarmRateIMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayHarmRateIMapper.java
new file mode 100644
index 0000000..b3b8d47
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayHarmRateIMapper.java
@@ -0,0 +1,14 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.day.DayHarmRateI;
+import com.njcn.influx.pojo.po.day.DayHarmRateV;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:03
+ */
+public interface DayHarmRateIMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayHarmRateVMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayHarmRateVMapper.java
new file mode 100644
index 0000000..3e27588
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayHarmRateVMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.dto.HarmData;
+import com.njcn.influx.pojo.po.DataHarmRateV;
+import com.njcn.influx.pojo.po.day.DayHarmRateV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:03
+ */
+public interface DayHarmRateVMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayIMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayIMapper.java
new file mode 100644
index 0000000..2ef3ebb
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayIMapper.java
@@ -0,0 +1,19 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.dto.HarmData;
+import com.njcn.influx.pojo.po.DataI;
+import com.njcn.influx.pojo.po.day.DayI;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:05
+ */
+public interface DayIMapper extends InfluxDbBaseMapper {
+
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayInHarmIMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayInHarmIMapper.java
new file mode 100644
index 0000000..acc2bca
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayInHarmIMapper.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.day.DayInHarmI;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DayInHarmIMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayInHarmIRateMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayInHarmIRateMapper.java
new file mode 100644
index 0000000..7f76693
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayInHarmIRateMapper.java
@@ -0,0 +1,14 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.day.DayInHarmI;
+import com.njcn.influx.pojo.po.day.DayInHarmV;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DayInHarmIRateMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayInHarmVMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayInHarmVMapper.java
new file mode 100644
index 0000000..b523de7
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayInHarmVMapper.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.day.DayInHarmV;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DayInHarmVMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayInHarmVRateMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayInHarmVRateMapper.java
new file mode 100644
index 0000000..ffb5805
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayInHarmVRateMapper.java
@@ -0,0 +1,14 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataInHarmV;
+import com.njcn.influx.pojo.po.day.DayInHarmV;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface DayInHarmVRateMapper extends InfluxDbBaseMapper {
+
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayPltMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayPltMapper.java
new file mode 100644
index 0000000..93cf662
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayPltMapper.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.day.DayFluc;
+import com.njcn.influx.pojo.po.day.DayPlt;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 08:56
+ */
+public interface DayPltMapper extends InfluxDbBaseMapper {
+}
diff --git a/src/main/java/com/njcn/influx/imapper/day/DayVMapper.java b/src/main/java/com/njcn/influx/imapper/day/DayVMapper.java
new file mode 100644
index 0000000..f9e99c1
--- /dev/null
+++ b/src/main/java/com/njcn/influx/imapper/day/DayVMapper.java
@@ -0,0 +1,21 @@
+package com.njcn.influx.imapper.day;
+
+import com.njcn.influx.base.InfluxDbBaseMapper;
+import com.njcn.influx.pojo.po.DataV;
+import com.njcn.influx.pojo.po.day.DayV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/5/5 14:39
+ */
+
+public interface DayVMapper extends InfluxDbBaseMapper {
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/bo/CarryCapcityData.java b/src/main/java/com/njcn/influx/pojo/bo/CarryCapcityData.java
new file mode 100644
index 0000000..19e3dfc
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/bo/CarryCapcityData.java
@@ -0,0 +1,38 @@
+package com.njcn.influx.pojo.bo;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.njcn.influx.utils.InstantDateSerializer;
+import lombok.Data;
+import org.influxdb.annotation.Column;
+
+import java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+public class CarryCapcityData {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "line_id")
+ private String lineId;
+
+ @Column(name = "phasic_type")
+ private String phaseType;
+
+ @Column(name = "quality_flag")
+ private String qualityFlag;
+
+ @Column(name = "value_type")
+ private String valueType;
+
+ private Double value;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/bo/CommonQueryParam.java b/src/main/java/com/njcn/influx/pojo/bo/CommonQueryParam.java
new file mode 100644
index 0000000..59d6ede
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/bo/CommonQueryParam.java
@@ -0,0 +1,24 @@
+package com.njcn.influx.pojo.bo;
+
+import lombok.Data;
+
+/**
+ * Description:
+ * Date: 2024/1/24 9:05【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+@Data
+public class CommonQueryParam {
+ private String lineId;
+ private String tableName;
+ private String columnName;
+ private String phasic;
+ private String startTime;
+ private String endTime;
+ private String dataType;
+ private String process;
+ private String clDid;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/bo/HarmonicHistoryData.java b/src/main/java/com/njcn/influx/pojo/bo/HarmonicHistoryData.java
new file mode 100644
index 0000000..e966233
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/bo/HarmonicHistoryData.java
@@ -0,0 +1,43 @@
+package com.njcn.influx.pojo.bo;
+
+import cn.hutool.core.util.ObjUtil;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.njcn.influx.utils.InstantDateSerializer;
+import lombok.Data;
+import org.influxdb.annotation.Column;
+
+import java.io.Serializable;
+import java.time.Instant;
+import java.util.concurrent.TimeUnit;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 16:25
+ */
+@Data
+public class HarmonicHistoryData implements Serializable {
+
+
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "phasic_type")
+ private String phasicType;
+
+ private Float aValue;
+
+ private Float bValue;
+
+ private Float cValue;
+
+ private Instant timeId;
+
+ public void setTimeId(Instant timeId) {
+ if(ObjUtil.isNotNull(timeId)){
+ Instant instant = timeId.plusMillis(TimeUnit.HOURS.toMillis(8));
+ this.time = instant;
+ }
+
+ }
+}
diff --git a/src/main/java/com/njcn/influx/pojo/bo/MeasurementCount.java b/src/main/java/com/njcn/influx/pojo/bo/MeasurementCount.java
new file mode 100644
index 0000000..891fa18
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/bo/MeasurementCount.java
@@ -0,0 +1,33 @@
+package com.njcn.influx.pojo.bo;
+
+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 java.io.Serializable;
+import java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/11/10 16:17
+ */
+@Data
+@Measurement(name = "data_v")
+public class MeasurementCount implements Serializable {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "line_id")
+ private String lineId;
+
+ @Column(name = "freq")
+ private String freq;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/bo/StatisticsResult.java b/src/main/java/com/njcn/influx/pojo/bo/StatisticsResult.java
new file mode 100644
index 0000000..e9d1ffa
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/bo/StatisticsResult.java
@@ -0,0 +1,28 @@
+package com.njcn.influx.pojo.bo;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.njcn.influx.utils.InstantDateSerializer;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.Instant;
+
+/**
+ * 用来收集统计结果,比如max min mean cp95等函数
+ * @author hongawen
+ * @version 1.0.0
+ */
+@Data
+public class StatisticsResult implements Serializable {
+
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ /***
+ * 统计值
+ */
+ private Double value;
+
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/constant/InfluxDBTableConstant.java b/src/main/java/com/njcn/influx/pojo/constant/InfluxDBTableConstant.java
new file mode 100644
index 0000000..21358dc
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/constant/InfluxDBTableConstant.java
@@ -0,0 +1,200 @@
+package com.njcn.influx.pojo.constant;
+
+/**
+ * 数据表相关常量
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2022年10月14日 14:02
+ */
+public interface InfluxDBTableConstant {
+
+ /**
+ * 电压波动闪变表
+ */
+ String DATA_FLICKER = "data_flicker";
+
+ /**
+ * 电压波动表
+ */
+ String DATA_FLUC = "data_fluc";
+
+ /**
+ * 谐波电流角度表
+ */
+ String DATA_HARM_PHASIC_I = "data_harmphasic_i";
+
+ /**
+ * 谐波电压角度表
+ */
+ String DATA_HARM_PHASIC_V = "data_harmphasic_v";
+
+ /**
+ * 有功功率表
+ */
+ String DATA_HARM_POWER_P = "data_harmpower_p";
+
+ /**
+ * 无功功率表
+ */
+ String DATA_HARM_POWER_Q = "data_harmpower_q";
+
+ /**
+ * 视在功率表
+ */
+ String DATA_HARM_POWER_S = "data_harmpower_s";
+
+ /**
+ * 谐波电流含有率表
+ */
+ String DATA_HARM_RATE_I = "data_harmrate_i";
+
+ /**
+ * 谐波电压含有率表
+ */
+ String DATA_HARM_RATE_V = "data_harmrate_v";
+
+ /**
+ * 电流表
+ */
+ String DATA_I = "data_i";
+
+ /**
+ * 电流间谐波幅值表
+ */
+ String DATA_IN_HARM_I = "data_inharm_i";
+
+ /**
+ * 电压间谐波幅值表
+ */
+ String DATA_IN_HARM_V = "data_inharm_v";
+
+ /**
+ * 长时闪变表
+ */
+ String DATA_PLT = "data_plt";
+
+ /**
+ * 电压表
+ */
+ String DATA_V = "data_v";
+
+
+ /**
+ * 时间
+ */
+ String TIME = "time";
+
+ /**
+ * 数据线路号
+ */
+ String LINE_ID = "line_id";
+ String PROCESS = "process";
+
+ /**
+ * 装置ID
+ */
+ String DEV_ID = "dev_id";
+
+ /**
+ * 数据类型
+ */
+ String PHASIC_TYPE = "phasic_type";
+
+ /**
+ * 指标类型
+ */
+ String VALUE_TYPE = "value_type";
+
+ /**
+ * 统计结果
+ */
+ String VALUE = "value";
+
+ /**
+ * 统计结果最大值
+ */
+ String MAX_VALUE = "maxValue";
+
+ /**
+ * 统计结果最小值
+ */
+ String MIN_VALUE = "minValue";
+
+ /**
+ * 统计结果平均值
+ */
+ String AVG_VALUE = "avgValue";
+
+ /**
+ * 数据质量标志
+ */
+ String QUALITY_FLAG = "quality_flag";
+
+
+
+ /**
+ * 相别
+ */
+ String NO_PHASE = "M";
+ String PHASE_TYPE_A = "A";
+ String PHASE_TYPE_AB = "AB";
+ String PHASE_TYPE_B = "B";
+ String PHASE_TYPE_BC = "BC";
+ String PHASE_TYPE_C = "C";
+ String PHASE_TYPE_C0 = "C0";
+ String PHASE_TYPE_C1 = "C1";
+ String PHASE_TYPE_C2 = "C2";
+ String PHASE_TYPE_CA = "CA";
+ String PHASE_TYPE_T = "T";
+
+ /**
+ * 日起始时间
+ */
+ String START_TIME = " 00:00:00";
+
+ /**
+ * 日结束时间
+ */
+ String END_TIME = " 23:59:59";
+
+ /**
+ * 数据是否异常
+ */
+ String IS_ABNORMAL = "is_abnormal";
+
+ /**
+ * 逻辑子设备id
+ */
+ String CL_DID = "cl_did";
+
+ /**
+ * 逻辑子设备id/暂态事件号
+ */
+ String UUID = "uuid";
+
+ /**
+ * 流程(1:设备登记,2:功能调试,3:出厂调试 4:设备投运)
+ */
+ String process = "process";
+
+ /**
+ * 报表业务计算方式
+ */
+ String MAX = "MAX";
+ String MIN = "MIN";
+ String AVG = "AVG";
+ String CP95 = "CP95";
+
+ /**
+ * 每天固定时间分钟
+ */
+ Integer DAY_MINUTE = 1440;
+
+ /**
+ * 数据是否正常 0:正常 1:异常
+ */
+ String NORMAL = "0";
+ String UN_NORMAL = "1";
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/dto/DataFlickerDTO.java b/src/main/java/com/njcn/influx/pojo/dto/DataFlickerDTO.java
new file mode 100644
index 0000000..5fd2544
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/dto/DataFlickerDTO.java
@@ -0,0 +1,22 @@
+package com.njcn.influx.pojo.dto;
+
+import com.njcn.influx.pojo.po.DataFlicker;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.influxdb.annotation.Measurement;
+
+import java.io.Serializable;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 10:17
+ */
+@Data
+@Measurement(name = "data_flicker")
+@EqualsAndHashCode(callSuper = true)
+public class DataFlickerDTO extends DataFlicker implements Serializable {
+
+ private String valueType;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/dto/DeviceDayFlowDTO.java b/src/main/java/com/njcn/influx/pojo/dto/DeviceDayFlowDTO.java
new file mode 100644
index 0000000..20ff1f1
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/dto/DeviceDayFlowDTO.java
@@ -0,0 +1,19 @@
+package com.njcn.influx.pojo.dto;
+
+import com.njcn.influx.pojo.po.CldStatisFlow;
+import lombok.Data;
+import org.influxdb.annotation.Column;
+import org.influxdb.annotation.Measurement;
+
+import java.time.Instant;
+
+@Data
+@Measurement(name = "cld_statis_flow")
+public class DeviceDayFlowDTO extends CldStatisFlow {
+
+ private float dailyActualValue;
+
+ private String date;
+
+ private String month;
+}
diff --git a/src/main/java/com/njcn/influx/pojo/dto/EventDataSetDTO.java b/src/main/java/com/njcn/influx/pojo/dto/EventDataSetDTO.java
new file mode 100644
index 0000000..70de0e4
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/dto/EventDataSetDTO.java
@@ -0,0 +1,23 @@
+package com.njcn.influx.pojo.dto;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * Description:
+ * Date: 2023/9/6 9:52【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+@Data
+public class EventDataSetDTO {
+ private String name;
+ private String value;
+ private String type;
+
+ private String unit;
+
+ private String showName;
+}
diff --git a/src/main/java/com/njcn/influx/pojo/dto/EventQueryDTO.java b/src/main/java/com/njcn/influx/pojo/dto/EventQueryDTO.java
new file mode 100644
index 0000000..adfbc2f
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/dto/EventQueryDTO.java
@@ -0,0 +1,20 @@
+package com.njcn.influx.pojo.dto;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * Description:
+ * Date: 2023/8/30 18:38【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+@Data
+@Deprecated
+public class EventQueryDTO {
+ private String devId;
+ private List lineIds;
+ private List target;
+}
diff --git a/src/main/java/com/njcn/influx/pojo/dto/HarmData.java b/src/main/java/com/njcn/influx/pojo/dto/HarmData.java
new file mode 100644
index 0000000..309226e
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/dto/HarmData.java
@@ -0,0 +1,33 @@
+package com.njcn.influx.pojo.dto;
+
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.njcn.influx.ano.IgnoreData;
+import com.njcn.influx.utils.InstantDateDeserializer;
+import com.njcn.influx.utils.InstantDateSerializer;
+import lombok.Data;
+import org.influxdb.annotation.Column;
+import org.influxdb.annotation.Measurement;
+
+import java.io.Serializable;
+import java.time.Instant;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月19日 09:43
+ */
+@Data
+public class HarmData implements Serializable{
+
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ @JsonDeserialize(using = InstantDateDeserializer.class)
+ private Instant time;
+
+ @IgnoreData(value = true)
+ private Float value;
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/dto/HarmHistoryDataDTO.java b/src/main/java/com/njcn/influx/pojo/dto/HarmHistoryDataDTO.java
new file mode 100644
index 0000000..cc935fc
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/dto/HarmHistoryDataDTO.java
@@ -0,0 +1,24 @@
+package com.njcn.influx.pojo.dto;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月19日 09:40
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class HarmHistoryDataDTO implements Serializable {
+
+ private List historyData = new ArrayList<>();
+
+ private float overLimit;
+}
diff --git a/src/main/java/com/njcn/influx/pojo/dto/StatisticalDataDTO.java b/src/main/java/com/njcn/influx/pojo/dto/StatisticalDataDTO.java
new file mode 100644
index 0000000..066ae65
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/dto/StatisticalDataDTO.java
@@ -0,0 +1,70 @@
+package com.njcn.influx.pojo.dto;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.njcn.influx.utils.InstantDateSerializer;
+import lombok.Data;
+import org.influxdb.annotation.Column;
+
+import java.time.Instant;
+
+/**
+ * Description:
+ * Date: 2023/6/5 10:23【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+
+
+@Data
+public class StatisticalDataDTO {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "line_id")
+ private String lineId;
+
+ @Column(name = "phasic_type")
+ private String phaseType;
+
+ @Column(name = "value_type")
+ private String valueType;
+
+ @Column(name = "cl_did")
+ private String clDid;
+
+
+ /**
+ * 指标值
+ */
+ private Double value;
+
+ /**
+ * 指标名称
+ */
+ private String statisticalName;
+
+ /**
+ * 指标
+ */
+ private String target;
+
+ /**
+ * 指标最大值
+ */
+ private Double maxValue;
+
+ /**
+ * 指标最小值
+ */
+ private Double minValue;
+
+ /**
+ * 指标平均值
+ */
+ private Double avgValue;
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/CldStatisFlow.java b/src/main/java/com/njcn/influx/pojo/po/CldStatisFlow.java
new file mode 100644
index 0000000..25903cf
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/CldStatisFlow.java
@@ -0,0 +1,29 @@
+package com.njcn.influx.pojo.po;
+
+
+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 java.time.Instant;
+
+/**
+ * @author hongawen
+ */
+@Data
+@Measurement(name = "cld_statis_flow")
+public class CldStatisFlow {
+
+ @Column(name="time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name="actual_value")
+ private Integer actualValue;
+
+ @Column(name="dev_id")
+ private String devId;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataFlicker.java b/src/main/java/com/njcn/influx/pojo/po/DataFlicker.java
new file mode 100644
index 0000000..f69ced8
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataFlicker.java
@@ -0,0 +1,59 @@
+package com.njcn.influx.pojo.po;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ */
+@Data
+@Measurement(name = "data_flicker")
+public class DataFlicker {
+
+ @TimeColumn
+ @Column(name = "time", tag = true)
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "fluc")
+ private Double fluc;
+
+ @Column(name = "line_id", tag = true)
+ private String lineId;
+
+ @Column(name = "phasic_type", tag = true)
+ private String phaseType;
+
+ @Column(name = "plt")
+ private Double plt;
+
+ @Column(name = "pst")
+ private Double pst;
+
+ @Column(name = "quality_flag", tag = true)
+ private String qualityFlag;
+
+
+ //自定义字段
+ @Column(name = "value_type")
+ private String valueType;
+
+ @Column(name = "count")
+ private Integer count;
+
+ @Column(name = "pst_count")
+ private Integer pstCount;
+
+ @Column(name = "plt_count")
+ private Integer pltCount;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataFluc.java b/src/main/java/com/njcn/influx/pojo/po/DataFluc.java
new file mode 100644
index 0000000..80cee12
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataFluc.java
@@ -0,0 +1,43 @@
+package com.njcn.influx.pojo.po;
+
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ */
+@Data
+@Measurement(name = "data_fluc")
+public class DataFluc {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "fluc")
+ private Double fluc;
+
+ @Column(name = "fluccf")
+ private Double fluccf;
+
+ @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;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataHarmPhasicI.java b/src/main/java/com/njcn/influx/pojo/po/DataHarmPhasicI.java
new file mode 100644
index 0000000..e602e87
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataHarmPhasicI.java
@@ -0,0 +1,187 @@
+package com.njcn.influx.pojo.po;
+
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ */
+@Data
+@Measurement(name = "data_harmphasic_i")
+public class DataHarmPhasicI {
+
+ @Column(name = "time")
+ @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 = "i_1")
+ private Double i1;
+
+ @Column(name = "i_2")
+ private Double i2;
+
+ @Column(name = "i_3")
+ private Double i3;
+
+ @Column(name = "i_4")
+ private Double i4;
+
+ @Column(name = "i_5")
+ private Double i5;
+
+ @Column(name = "i_6")
+ private Double i6;
+
+ @Column(name = "i_7")
+ private Double i7;
+
+ @Column(name = "i_8")
+ private Double i8;
+
+ @Column(name = "i_9")
+ private Double i9;
+
+ @Column(name = "i_10")
+ private Double i10;
+
+ @Column(name = "i_11")
+ private Double i11;
+
+ @Column(name = "i_12")
+ private Double i12;
+
+ @Column(name = "i_13")
+ private Double i13;
+
+ @Column(name = "i_14")
+ private Double i14;
+
+ @Column(name = "i_15")
+ private Double i15;
+
+ @Column(name = "i_16")
+ private Double i16;
+
+ @Column(name = "i_17")
+ private Double i17;
+
+ @Column(name = "i_18")
+ private Double i18;
+
+ @Column(name = "i_19")
+ private Double i19;
+
+ @Column(name = "i_20")
+ private Double i20;
+
+ @Column(name = "i_21")
+ private Double i21;
+
+ @Column(name = "i_22")
+ private Double i22;
+
+ @Column(name = "i_23")
+ private Double i23;
+
+ @Column(name = "i_24")
+ private Double i24;
+
+ @Column(name = "i_25")
+ private Double i25;
+
+ @Column(name = "i_26")
+ private Double i26;
+
+ @Column(name = "i_27")
+ private Double i27;
+
+ @Column(name = "i_28")
+ private Double i28;
+
+ @Column(name = "i_29")
+ private Double i29;
+
+ @Column(name = "i_30")
+ private Double i30;
+
+ @Column(name = "i_31")
+ private Double i31;
+
+ @Column(name = "i_32")
+ private Double i32;
+
+ @Column(name = "i_33")
+ private Double i33;
+
+ @Column(name = "i_34")
+ private Double i34;
+
+ @Column(name = "i_35")
+ private Double i35;
+
+ @Column(name = "i_36")
+ private Double i36;
+
+ @Column(name = "i_37")
+ private Double i37;
+
+ @Column(name = "i_38")
+ private Double i38;
+
+ @Column(name = "i_39")
+ private Double i39;
+
+ @Column(name = "i_40")
+ private Double i40;
+
+ @Column(name = "i_41")
+ private Double i41;
+
+ @Column(name = "i_42")
+ private Double i42;
+
+ @Column(name = "i_43")
+ private Double i43;
+
+ @Column(name = "i_44")
+ private Double i44;
+
+ @Column(name = "i_45")
+ private Double i45;
+
+ @Column(name = "i_46")
+ private Double i46;
+
+ @Column(name = "i_47")
+ private Double i47;
+
+ @Column(name = "i_48")
+ private Double i48;
+
+ @Column(name = "i_49")
+ private Double i49;
+
+ @Column(name = "i_50")
+ private Double i50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataHarmPhasicV.java b/src/main/java/com/njcn/influx/pojo/po/DataHarmPhasicV.java
new file mode 100644
index 0000000..ac9ac92
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataHarmPhasicV.java
@@ -0,0 +1,190 @@
+package com.njcn.influx.pojo.po;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "data_harmphasic_v")
+public class DataHarmPhasicV {
+
+ @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 = "v_1")
+ private Double v1;
+
+ @Column(name = "v_2")
+ private Double v2;
+
+ @Column(name = "v_3")
+ private Double v3;
+
+ @Column(name = "v_4")
+ private Double v4;
+
+ @Column(name = "v_5")
+ private Double v5;
+
+ @Column(name = "v_6")
+ private Double v6;
+
+ @Column(name = "v_7")
+ private Double v7;
+
+ @Column(name = "v_8")
+ private Double v8;
+
+ @Column(name = "v_9")
+ private Double v9;
+
+ @Column(name = "v_10")
+ private Double v10;
+
+ @Column(name = "v_11")
+ private Double v11;
+
+ @Column(name = "v_12")
+ private Double v12;
+
+ @Column(name = "v_13")
+ private Double v13;
+
+ @Column(name = "v_14")
+ private Double v14;
+
+ @Column(name = "v_15")
+ private Double v15;
+
+ @Column(name = "v_16")
+ private Double v16;
+
+ @Column(name = "v_17")
+ private Double v17;
+
+ @Column(name = "v_18")
+ private Double v18;
+
+ @Column(name = "v_19")
+ private Double v19;
+
+ @Column(name = "v_20")
+ private Double v20;
+
+ @Column(name = "v_21")
+ private Double v21;
+
+ @Column(name = "v_22")
+ private Double v22;
+
+ @Column(name = "v_23")
+ private Double v23;
+
+ @Column(name = "v_24")
+ private Double v24;
+
+ @Column(name = "v_25")
+ private Double v25;
+
+ @Column(name = "v_26")
+ private Double v26;
+
+ @Column(name = "v_27")
+ private Double v27;
+
+ @Column(name = "v_28")
+ private Double v28;
+
+ @Column(name = "v_29")
+ private Double v29;
+
+ @Column(name = "v_30")
+ private Double v30;
+
+ @Column(name = "v_31")
+ private Double v31;
+
+ @Column(name = "v_32")
+ private Double v32;
+
+ @Column(name = "v_33")
+ private Double v33;
+
+ @Column(name = "v_34")
+ private Double v34;
+
+ @Column(name = "v_35")
+ private Double v35;
+
+ @Column(name = "v_36")
+ private Double v36;
+
+ @Column(name = "v_37")
+ private Double v37;
+
+ @Column(name = "v_38")
+ private Double v38;
+
+ @Column(name = "v_39")
+ private Double v39;
+
+ @Column(name = "v_40")
+ private Double v40;
+
+ @Column(name = "v_41")
+ private Double v41;
+
+ @Column(name = "v_42")
+ private Double v42;
+
+ @Column(name = "v_43")
+ private Double v43;
+
+ @Column(name = "v_44")
+ private Double v44;
+
+ @Column(name = "v_45")
+ private Double v45;
+
+ @Column(name = "v_46")
+ private Double v46;
+
+ @Column(name = "v_47")
+ private Double v47;
+
+ @Column(name = "v_48")
+ private Double v48;
+
+ @Column(name = "v_49")
+ private Double v49;
+
+ @Column(name = "v_50")
+ private Double v50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerP.java b/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerP.java
new file mode 100644
index 0000000..e1dbe53
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerP.java
@@ -0,0 +1,196 @@
+package com.njcn.influx.pojo.po;
+
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "data_harmpower_p")
+public class DataHarmPowerP {
+
+ @Column(name = "time")
+ @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 = "df")
+ private Double df;
+
+ @Column(name = "pf")
+ private Double pf;
+
+ @Column(name = "p")
+ private Double p;
+
+ @Column(name = "p_1")
+ private Double p1;
+
+ @Column(name = "p_2")
+ private Double p2;
+
+ @Column(name = "p_3")
+ private Double p3;
+
+ @Column(name = "p_4")
+ private Double p4;
+
+ @Column(name = "p_5")
+ private Double p5;
+
+ @Column(name = "p_6")
+ private Double p6;
+
+ @Column(name = "p_7")
+ private Double p7;
+
+ @Column(name = "p_8")
+ private Double p8;
+
+ @Column(name = "p_9")
+ private Double p9;
+
+ @Column(name = "p_10")
+ private Double p10;
+
+ @Column(name = "p_11")
+ private Double p11;
+
+ @Column(name = "p_12")
+ private Double p12;
+
+ @Column(name = "p_13")
+ private Double p13;
+
+ @Column(name = "p_14")
+ private Double p14;
+
+ @Column(name = "p_15")
+ private Double p15;
+
+ @Column(name = "p_16")
+ private Double p16;
+
+ @Column(name = "p_17")
+ private Double p17;
+
+ @Column(name = "p_18")
+ private Double p18;
+
+ @Column(name = "p_19")
+ private Double p19;
+
+ @Column(name = "p_20")
+ private Double p20;
+
+ @Column(name = "p_21")
+ private Double p21;
+
+ @Column(name = "p_22")
+ private Double p22;
+
+ @Column(name = "p_23")
+ private Double p23;
+
+ @Column(name = "p_24")
+ private Double p24;
+
+ @Column(name = "p_25")
+ private Double p25;
+
+ @Column(name = "p_26")
+ private Double p26;
+
+ @Column(name = "p_27")
+ private Double p27;
+
+ @Column(name = "p_28")
+ private Double p28;
+
+ @Column(name = "p_29")
+ private Double p29;
+
+ @Column(name = "p_30")
+ private Double p30;
+
+ @Column(name = "p_31")
+ private Double p31;
+
+ @Column(name = "p_32")
+ private Double p32;
+
+ @Column(name = "p_33")
+ private Double p33;
+
+ @Column(name = "p_34")
+ private Double p34;
+
+ @Column(name = "p_35")
+ private Double p35;
+
+ @Column(name = "p_36")
+ private Double p36;
+
+ @Column(name = "p_37")
+ private Double p37;
+
+ @Column(name = "p_38")
+ private Double p38;
+
+ @Column(name = "p_39")
+ private Double p39;
+
+ @Column(name = "p_40")
+ private Double p40;
+
+ @Column(name = "p_41")
+ private Double p41;
+
+ @Column(name = "p_42")
+ private Double p42;
+
+ @Column(name = "p_43")
+ private Double p43;
+
+ @Column(name = "p_44")
+ private Double p44;
+
+ @Column(name = "p_45")
+ private Double p45;
+
+ @Column(name = "p_46")
+ private Double p46;
+
+ @Column(name = "p_47")
+ private Double p47;
+
+ @Column(name = "p_48")
+ private Double p48;
+
+ @Column(name = "p_49")
+ private Double p49;
+
+ @Column(name = "p_50")
+ private Double p50;
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerQ.java b/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerQ.java
new file mode 100644
index 0000000..34b7103
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerQ.java
@@ -0,0 +1,192 @@
+package com.njcn.influx.pojo.po;
+
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "data_harmpower_q")
+public class DataHarmPowerQ {
+
+ @Column(name = "time")
+ @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 = "q")
+ private Double q;
+
+ @Column(name = "q_1")
+ private Double q1;
+
+ @Column(name = "q_2")
+ private Double q2;
+
+ @Column(name = "q_3")
+ private Double q3;
+
+ @Column(name = "q_4")
+ private Double q4;
+
+ @Column(name = "q_5")
+ private Double q5;
+
+ @Column(name = "q_6")
+ private Double q6;
+
+ @Column(name = "q_7")
+ private Double q7;
+
+ @Column(name = "q_8")
+ private Double q8;
+
+ @Column(name = "q_9")
+ private Double q9;
+
+ @Column(name = "q_10")
+ private Double q10;
+
+ @Column(name = "q_11")
+ private Double q11;
+
+ @Column(name = "q_12")
+ private Double q12;
+
+ @Column(name = "q_13")
+ private Double q13;
+
+ @Column(name = "q_14")
+ private Double q14;
+
+ @Column(name = "q_15")
+ private Double q15;
+
+ @Column(name = "q_16")
+ private Double q16;
+
+ @Column(name = "q_17")
+ private Double q17;
+
+ @Column(name = "q_18")
+ private Double q18;
+
+ @Column(name = "q_19")
+ private Double q19;
+
+ @Column(name = "q_20")
+ private Double q20;
+
+ @Column(name = "q_21")
+ private Double q21;
+
+ @Column(name = "q_22")
+ private Double q22;
+
+ @Column(name = "q_23")
+ private Double q23;
+
+ @Column(name = "q_24")
+ private Double q24;
+
+ @Column(name = "q_25")
+ private Double q25;
+
+ @Column(name = "q_26")
+ private Double q26;
+
+ @Column(name = "q_27")
+ private Double q27;
+
+ @Column(name = "q_28")
+ private Double q28;
+
+ @Column(name = "q_29")
+ private Double q29;
+
+ @Column(name = "q_30")
+ private Double q30;
+
+ @Column(name = "q_31")
+ private Double q31;
+
+ @Column(name = "q_32")
+ private Double q32;
+
+ @Column(name = "q_33")
+ private Double q33;
+
+ @Column(name = "q_34")
+ private Double q34;
+
+ @Column(name = "q_35")
+ private Double q35;
+
+ @Column(name = "q_36")
+ private Double q36;
+
+ @Column(name = "q_37")
+ private Double q37;
+
+ @Column(name = "q_38")
+ private Double q38;
+
+ @Column(name = "q_39")
+ private Double q39;
+
+ @Column(name = "q_40")
+ private Double q40;
+
+ @Column(name = "q_41")
+ private Double q41;
+
+ @Column(name = "q_42")
+ private Double q42;
+
+ @Column(name = "q_43")
+ private Double q43;
+
+ @Column(name = "q_44")
+ private Double q44;
+
+ @Column(name = "q_45")
+ private Double q45;
+
+ @Column(name = "q_46")
+ private Double q46;
+
+ @Column(name = "q_47")
+ private Double q47;
+
+ @Column(name = "q_48")
+ private Double q48;
+
+ @Column(name = "q_49")
+ private Double q49;
+
+ @Column(name = "q_50")
+ private Double q50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerS.java b/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerS.java
new file mode 100644
index 0000000..2e0d210
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataHarmPowerS.java
@@ -0,0 +1,191 @@
+package com.njcn.influx.pojo.po;
+
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "data_harmpower_s")
+public class DataHarmPowerS {
+
+ @Column(name = "time")
+ @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 = "s")
+ private Double s;
+
+ @Column(name = "s_1")
+ private Double s1;
+
+ @Column(name = "s_2")
+ private Double s2;
+
+ @Column(name = "s_3")
+ private Double s3;
+
+ @Column(name = "s_4")
+ private Double s4;
+
+ @Column(name = "s_5")
+ private Double s5;
+
+ @Column(name = "s_6")
+ private Double s6;
+
+ @Column(name = "s_7")
+ private Double s7;
+
+ @Column(name = "s_8")
+ private Double s8;
+
+ @Column(name = "s_9")
+ private Double s9;
+
+ @Column(name = "s_10")
+ private Double s10;
+
+ @Column(name = "s_11")
+ private Double s11;
+
+ @Column(name = "s_12")
+ private Double s12;
+
+ @Column(name = "s_13")
+ private Double s13;
+
+ @Column(name = "s_14")
+ private Double s14;
+
+ @Column(name = "s_15")
+ private Double s15;
+
+ @Column(name = "s_16")
+ private Double s16;
+
+ @Column(name = "s_17")
+ private Double s17;
+
+ @Column(name = "s_18")
+ private Double s18;
+
+ @Column(name = "s_19")
+ private Double s19;
+
+ @Column(name = "s_20")
+ private Double s20;
+
+ @Column(name = "s_21")
+ private Double s21;
+
+ @Column(name = "s_22")
+ private Double s22;
+
+ @Column(name = "s_23")
+ private Double s23;
+
+ @Column(name = "s_24")
+ private Double s24;
+
+ @Column(name = "s_25")
+ private Double s25;
+
+ @Column(name = "s_26")
+ private Double s26;
+
+ @Column(name = "s_27")
+ private Double s27;
+
+ @Column(name = "s_28")
+ private Double s28;
+
+ @Column(name = "s_29")
+ private Double s29;
+
+ @Column(name = "s_30")
+ private Double s30;
+
+ @Column(name = "s_31")
+ private Double s31;
+
+ @Column(name = "s_32")
+ private Double s32;
+
+ @Column(name = "s_33")
+ private Double s33;
+
+ @Column(name = "s_34")
+ private Double s34;
+
+ @Column(name = "s_35")
+ private Double s35;
+
+ @Column(name = "s_36")
+ private Double s36;
+
+ @Column(name = "s_37")
+ private Double s37;
+
+ @Column(name = "s_38")
+ private Double s38;
+
+ @Column(name = "s_39")
+ private Double s39;
+
+ @Column(name = "s_40")
+ private Double s40;
+
+ @Column(name = "s_41")
+ private Double s41;
+
+ @Column(name = "s_42")
+ private Double s42;
+
+ @Column(name = "s_43")
+ private Double s43;
+
+ @Column(name = "s_44")
+ private Double s44;
+
+ @Column(name = "s_45")
+ private Double s45;
+
+ @Column(name = "s_46")
+ private Double s46;
+
+ @Column(name = "s_47")
+ private Double s47;
+
+ @Column(name = "s_48")
+ private Double s48;
+
+ @Column(name = "s_49")
+ private Double s49;
+
+ @Column(name = "s_50")
+ private Double s50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataHarmRateI.java b/src/main/java/com/njcn/influx/pojo/po/DataHarmRateI.java
new file mode 100644
index 0000000..737b115
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataHarmRateI.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.pojo.po;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.influxdb.annotation.Measurement;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 11:27
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Measurement(name = "data_harmrate_i")
+public class DataHarmRateI extends DataHarmPhasicI{
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataHarmRateV.java b/src/main/java/com/njcn/influx/pojo/po/DataHarmRateV.java
new file mode 100644
index 0000000..799bec6
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataHarmRateV.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.pojo.po;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.influxdb.annotation.Measurement;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 11:27
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Measurement(name = "data_harmrate_v")
+public class DataHarmRateV extends DataHarmPhasicV{
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataI.java b/src/main/java/com/njcn/influx/pojo/po/DataI.java
new file mode 100644
index 0000000..be31363
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataI.java
@@ -0,0 +1,208 @@
+package com.njcn.influx.pojo.po;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/11 15:13
+ */
+@Data
+@Measurement(name = "data_i")
+public class DataI {
+
+ @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 = "i_neg")
+ private Double iNeg;
+
+ @Column(name = "i_pos")
+ private Double iPos;
+
+ @Column(name = "i_thd")
+ private Double iThd;
+
+ @Column(name = "i_unbalance")
+ private Double iUnbalance;
+
+ @Column(name = "i_zero")
+ private Double iZero;
+
+ @Column(name = "rms")
+ private Double rms;
+
+ @Column(name = "i_1")
+ private Double i1;
+
+ @Column(name = "i_2")
+ private Double i2;
+
+ @Column(name = "i_3")
+ private Double i3;
+
+ @Column(name = "i_4")
+ private Double i4;
+
+ @Column(name = "i_5")
+ private Double i5;
+
+ @Column(name = "i_6")
+ private Double i6;
+
+ @Column(name = "i_7")
+ private Double i7;
+
+ @Column(name = "i_8")
+ private Double i8;
+
+ @Column(name = "i_9")
+ private Double i9;
+
+ @Column(name = "i_10")
+ private Double i10;
+
+ @Column(name = "i_11")
+ private Double i11;
+
+ @Column(name = "i_12")
+ private Double i12;
+
+ @Column(name = "i_13")
+ private Double i13;
+
+ @Column(name = "i_14")
+ private Double i14;
+
+ @Column(name = "i_15")
+ private Double i15;
+
+ @Column(name = "i_16")
+ private Double i16;
+
+ @Column(name = "i_17")
+ private Double i17;
+
+ @Column(name = "i_18")
+ private Double i18;
+
+ @Column(name = "i_19")
+ private Double i19;
+
+ @Column(name = "i_20")
+ private Double i20;
+
+ @Column(name = "i_21")
+ private Double i21;
+
+ @Column(name = "i_22")
+ private Double i22;
+
+ @Column(name = "i_23")
+ private Double i23;
+
+ @Column(name = "i_24")
+ private Double i24;
+
+ @Column(name = "i_25")
+ private Double i25;
+
+ @Column(name = "i_26")
+ private Double i26;
+
+ @Column(name = "i_27")
+ private Double i27;
+
+ @Column(name = "i_28")
+ private Double i28;
+
+ @Column(name = "i_29")
+ private Double i29;
+
+ @Column(name = "i_30")
+ private Double i30;
+
+ @Column(name = "i_31")
+ private Double i31;
+
+ @Column(name = "i_32")
+ private Double i32;
+
+ @Column(name = "i_33")
+ private Double i33;
+
+ @Column(name = "i_34")
+ private Double i34;
+
+ @Column(name = "i_35")
+ private Double i35;
+
+ @Column(name = "i_36")
+ private Double i36;
+
+ @Column(name = "i_37")
+ private Double i37;
+
+ @Column(name = "i_38")
+ private Double i38;
+
+ @Column(name = "i_39")
+ private Double i39;
+
+ @Column(name = "i_40")
+ private Double i40;
+
+ @Column(name = "i_41")
+ private Double i41;
+
+ @Column(name = "i_42")
+ private Double i42;
+
+ @Column(name = "i_43")
+ private Double i43;
+
+ @Column(name = "i_44")
+ private Double i44;
+
+ @Column(name = "i_45")
+ private Double i45;
+
+ @Column(name = "i_46")
+ private Double i46;
+
+ @Column(name = "i_47")
+ private Double i47;
+
+ @Column(name = "i_48")
+ private Double i48;
+
+ @Column(name = "i_49")
+ private Double i49;
+
+ @Column(name = "i_50")
+ private Double i50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataInHarmI.java b/src/main/java/com/njcn/influx/pojo/po/DataInHarmI.java
new file mode 100644
index 0000000..f0783b6
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataInHarmI.java
@@ -0,0 +1,20 @@
+package com.njcn.influx.pojo.po;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.influxdb.annotation.Measurement;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 11:27
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Measurement(name = "data_inharm_i")
+public class DataInHarmI extends DataHarmPhasicI{
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataInHarmRateI.java b/src/main/java/com/njcn/influx/pojo/po/DataInHarmRateI.java
new file mode 100644
index 0000000..b901d71
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataInHarmRateI.java
@@ -0,0 +1,185 @@
+package com.njcn.influx.pojo.po;
+
+import lombok.Data;
+import org.influxdb.annotation.Column;
+import org.influxdb.annotation.Measurement;
+
+import java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "data_inharmrate_i")
+public class DataInHarmRateI {
+
+ @Column(name = "time")
+ 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 = "i_1")
+ private Double i1;
+
+ @Column(name = "i_2")
+ private Double i2;
+
+ @Column(name = "i_3")
+ private Double i3;
+
+ @Column(name = "i_4")
+ private Double i4;
+
+ @Column(name = "i_5")
+ private Double i5;
+
+ @Column(name = "i_6")
+ private Double i6;
+
+ @Column(name = "i_7")
+ private Double i7;
+
+ @Column(name = "i_8")
+ private Double i8;
+
+ @Column(name = "i_9")
+ private Double i9;
+
+ @Column(name = "i_10")
+ private Double i10;
+
+ @Column(name = "i_11")
+ private Double i11;
+
+ @Column(name = "i_12")
+ private Double i12;
+
+ @Column(name = "i_13")
+ private Double i13;
+
+ @Column(name = "i_14")
+ private Double i14;
+
+ @Column(name = "i_15")
+ private Double i15;
+
+ @Column(name = "i_16")
+ private Double i16;
+
+ @Column(name = "i_17")
+ private Double i17;
+
+ @Column(name = "i_18")
+ private Double i18;
+
+ @Column(name = "i_19")
+ private Double i19;
+
+ @Column(name = "i_20")
+ private Double i20;
+
+ @Column(name = "i_21")
+ private Double i21;
+
+ @Column(name = "i_22")
+ private Double i22;
+
+ @Column(name = "i_23")
+ private Double i23;
+
+ @Column(name = "i_24")
+ private Double i24;
+
+ @Column(name = "i_25")
+ private Double i25;
+
+ @Column(name = "i_26")
+ private Double i26;
+
+ @Column(name = "i_27")
+ private Double i27;
+
+ @Column(name = "i_28")
+ private Double i28;
+
+ @Column(name = "i_29")
+ private Double i29;
+
+ @Column(name = "i_30")
+ private Double i30;
+
+ @Column(name = "i_31")
+ private Double i31;
+
+ @Column(name = "i_32")
+ private Double i32;
+
+ @Column(name = "i_33")
+ private Double i33;
+
+ @Column(name = "i_34")
+ private Double i34;
+
+ @Column(name = "i_35")
+ private Double i35;
+
+ @Column(name = "i_36")
+ private Double i36;
+
+ @Column(name = "i_37")
+ private Double i37;
+
+ @Column(name = "i_38")
+ private Double i38;
+
+ @Column(name = "i_39")
+ private Double i39;
+
+ @Column(name = "i_40")
+ private Double i40;
+
+ @Column(name = "i_41")
+ private Double i41;
+
+ @Column(name = "i_42")
+ private Double i42;
+
+ @Column(name = "i_43")
+ private Double i43;
+
+ @Column(name = "i_44")
+ private Double i44;
+
+ @Column(name = "i_45")
+ private Double i45;
+
+ @Column(name = "i_46")
+ private Double i46;
+
+ @Column(name = "i_47")
+ private Double i47;
+
+ @Column(name = "i_48")
+ private Double i48;
+
+ @Column(name = "i_49")
+ private Double i49;
+
+ @Column(name = "i_50")
+ private Double i50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataInHarmRateV.java b/src/main/java/com/njcn/influx/pojo/po/DataInHarmRateV.java
new file mode 100644
index 0000000..f1b033e
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataInHarmRateV.java
@@ -0,0 +1,190 @@
+package com.njcn.influx.pojo.po;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "data_inharmrate_v")
+public class DataInHarmRateV {
+
+ @Column(name = "time", tag = true)
+ @TimeColumn
+ @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 = "v_1")
+ private Double v1;
+
+ @Column(name = "v_2")
+ private Double v2;
+
+ @Column(name = "v_3")
+ private Double v3;
+
+ @Column(name = "v_4")
+ private Double v4;
+
+ @Column(name = "v_5")
+ private Double v5;
+
+ @Column(name = "v_6")
+ private Double v6;
+
+ @Column(name = "v_7")
+ private Double v7;
+
+ @Column(name = "v_8")
+ private Double v8;
+
+ @Column(name = "v_9")
+ private Double v9;
+
+ @Column(name = "v_10")
+ private Double v10;
+
+ @Column(name = "v_11")
+ private Double v11;
+
+ @Column(name = "v_12")
+ private Double v12;
+
+ @Column(name = "v_13")
+ private Double v13;
+
+ @Column(name = "v_14")
+ private Double v14;
+
+ @Column(name = "v_15")
+ private Double v15;
+
+ @Column(name = "v_16")
+ private Double v16;
+
+ @Column(name = "v_17")
+ private Double v17;
+
+ @Column(name = "v_18")
+ private Double v18;
+
+ @Column(name = "v_19")
+ private Double v19;
+
+ @Column(name = "v_20")
+ private Double v20;
+
+ @Column(name = "v_21")
+ private Double v21;
+
+ @Column(name = "v_22")
+ private Double v22;
+
+ @Column(name = "v_23")
+ private Double v23;
+
+ @Column(name = "v_24")
+ private Double v24;
+
+ @Column(name = "v_25")
+ private Double v25;
+
+ @Column(name = "v_26")
+ private Double v26;
+
+ @Column(name = "v_27")
+ private Double v27;
+
+ @Column(name = "v_28")
+ private Double v28;
+
+ @Column(name = "v_29")
+ private Double v29;
+
+ @Column(name = "v_30")
+ private Double v30;
+
+ @Column(name = "v_31")
+ private Double v31;
+
+ @Column(name = "v_32")
+ private Double v32;
+
+ @Column(name = "v_33")
+ private Double v33;
+
+ @Column(name = "v_34")
+ private Double v34;
+
+ @Column(name = "v_35")
+ private Double v35;
+
+ @Column(name = "v_36")
+ private Double v36;
+
+ @Column(name = "v_37")
+ private Double v37;
+
+ @Column(name = "v_38")
+ private Double v38;
+
+ @Column(name = "v_39")
+ private Double v39;
+
+ @Column(name = "v_40")
+ private Double v40;
+
+ @Column(name = "v_41")
+ private Double v41;
+
+ @Column(name = "v_42")
+ private Double v42;
+
+ @Column(name = "v_43")
+ private Double v43;
+
+ @Column(name = "v_44")
+ private Double v44;
+
+ @Column(name = "v_45")
+ private Double v45;
+
+ @Column(name = "v_46")
+ private Double v46;
+
+ @Column(name = "v_47")
+ private Double v47;
+
+ @Column(name = "v_48")
+ private Double v48;
+
+ @Column(name = "v_49")
+ private Double v49;
+
+ @Column(name = "v_50")
+ private Double v50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataInHarmV.java b/src/main/java/com/njcn/influx/pojo/po/DataInHarmV.java
new file mode 100644
index 0000000..c2e2f39
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataInHarmV.java
@@ -0,0 +1,190 @@
+package com.njcn.influx.pojo.po;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 11:27
+ */
+@Data
+@Measurement(name = "data_inharm_v")
+public class DataInHarmV {
+
+ @Column(name = "time", tag = true)
+ @TimeColumn
+ @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 = "v_1")
+ private Double v1;
+
+ @Column(name = "v_2")
+ private Double v2;
+
+ @Column(name = "v_3")
+ private Double v3;
+
+ @Column(name = "v_4")
+ private Double v4;
+
+ @Column(name = "v_5")
+ private Double v5;
+
+ @Column(name = "v_6")
+ private Double v6;
+
+ @Column(name = "v_7")
+ private Double v7;
+
+ @Column(name = "v_8")
+ private Double v8;
+
+ @Column(name = "v_9")
+ private Double v9;
+
+ @Column(name = "v_10")
+ private Double v10;
+
+ @Column(name = "v_11")
+ private Double v11;
+
+ @Column(name = "v_12")
+ private Double v12;
+
+ @Column(name = "v_13")
+ private Double v13;
+
+ @Column(name = "v_14")
+ private Double v14;
+
+ @Column(name = "v_15")
+ private Double v15;
+
+ @Column(name = "v_16")
+ private Double v16;
+
+ @Column(name = "v_17")
+ private Double v17;
+
+ @Column(name = "v_18")
+ private Double v18;
+
+ @Column(name = "v_19")
+ private Double v19;
+
+ @Column(name = "v_20")
+ private Double v20;
+
+ @Column(name = "v_21")
+ private Double v21;
+
+ @Column(name = "v_22")
+ private Double v22;
+
+ @Column(name = "v_23")
+ private Double v23;
+
+ @Column(name = "v_24")
+ private Double v24;
+
+ @Column(name = "v_25")
+ private Double v25;
+
+ @Column(name = "v_26")
+ private Double v26;
+
+ @Column(name = "v_27")
+ private Double v27;
+
+ @Column(name = "v_28")
+ private Double v28;
+
+ @Column(name = "v_29")
+ private Double v29;
+
+ @Column(name = "v_30")
+ private Double v30;
+
+ @Column(name = "v_31")
+ private Double v31;
+
+ @Column(name = "v_32")
+ private Double v32;
+
+ @Column(name = "v_33")
+ private Double v33;
+
+ @Column(name = "v_34")
+ private Double v34;
+
+ @Column(name = "v_35")
+ private Double v35;
+
+ @Column(name = "v_36")
+ private Double v36;
+
+ @Column(name = "v_37")
+ private Double v37;
+
+ @Column(name = "v_38")
+ private Double v38;
+
+ @Column(name = "v_39")
+ private Double v39;
+
+ @Column(name = "v_40")
+ private Double v40;
+
+ @Column(name = "v_41")
+ private Double v41;
+
+ @Column(name = "v_42")
+ private Double v42;
+
+ @Column(name = "v_43")
+ private Double v43;
+
+ @Column(name = "v_44")
+ private Double v44;
+
+ @Column(name = "v_45")
+ private Double v45;
+
+ @Column(name = "v_46")
+ private Double v46;
+
+ @Column(name = "v_47")
+ private Double v47;
+
+ @Column(name = "v_48")
+ private Double v48;
+
+ @Column(name = "v_49")
+ private Double v49;
+
+ @Column(name = "v_50")
+ private Double v50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataPlt.java b/src/main/java/com/njcn/influx/pojo/po/DataPlt.java
new file mode 100644
index 0000000..d7f56a5
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataPlt.java
@@ -0,0 +1,51 @@
+package com.njcn.influx.pojo.po;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/4/12 16:01
+ */
+@Data
+@Measurement(name = "data_plt")
+public class DataPlt {
+
+ @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 = "value_type", tag = true)
+ private String valueType;
+
+ @Column(name = "quality_flag", tag = true)
+ private String qualityFlag;
+
+ @Column(name = "plt")
+ private Double plt;
+
+ //自定义字段-闪变总计算次数
+ @Column(name = "flicker_all_time")
+ private Integer flickerAllTime;
+
+ //自定义字段
+ @Column(name = "mean")
+ private Double mean;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/DataV.java b/src/main/java/com/njcn/influx/pojo/po/DataV.java
new file mode 100644
index 0000000..32edcfc
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/DataV.java
@@ -0,0 +1,235 @@
+package com.njcn.influx.pojo.po;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/4/7 10:00
+ */
+@Data
+@Measurement(name = "data_v")
+public class DataV {
+
+ @TimeColumn
+ @Column(name = "time", tag = true)
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "freq")
+ private Double freq;
+
+ @Column(name = "freq_dev")
+ private Double freqDev;
+
+ @Column(name = "quality_flag", tag = true)
+ private String qualityFlag;
+
+ @Column(name = "rms")
+ private Double rms;
+
+ @Column(name = "rms_lvr")
+ private Double rmsLvr;
+
+ @Column(name = "vl_dev")
+ private Double vlDev;
+
+ @Column(name = "vu_dev")
+ private Double vuDev;
+
+ @Column(name = "v_1")
+ private Double v1;
+
+ @Column(name = "v_2")
+ private Double v2;
+
+ @Column(name = "v_3")
+ private Double v3;
+
+ @Column(name = "v_4")
+ private Double v4;
+
+ @Column(name = "v_5")
+ private Double v5;
+
+ @Column(name = "v_6")
+ private Double v6;
+
+ @Column(name = "v_7")
+ private Double v7;
+
+ @Column(name = "v_8")
+ private Double v8;
+
+ @Column(name = "v_9")
+ private Double v9;
+
+ @Column(name = "v_10")
+ private Double v10;
+
+ @Column(name = "v_11")
+ private Double v11;
+
+ @Column(name = "v_12")
+ private Double v12;
+
+ @Column(name = "v_13")
+ private Double v13;
+
+ @Column(name = "v_14")
+ private Double v14;
+
+ @Column(name = "v_15")
+ private Double v15;
+
+ @Column(name = "v_16")
+ private Double v16;
+
+ @Column(name = "v_17")
+ private Double v17;
+
+ @Column(name = "v_18")
+ private Double v18;
+
+ @Column(name = "v_19")
+ private Double v19;
+
+ @Column(name = "v_20")
+ private Double v20;
+
+ @Column(name = "v_21")
+ private Double v21;
+
+ @Column(name = "v_22")
+ private Double v22;
+
+ @Column(name = "v_23")
+ private Double v23;
+
+ @Column(name = "v_24")
+ private Double v24;
+
+ @Column(name = "v_25")
+ private Double v25;
+
+ @Column(name = "v_26")
+ private Double v26;
+
+ @Column(name = "v_27")
+ private Double v27;
+
+ @Column(name = "v_28")
+ private Double v28;
+
+ @Column(name = "v_29")
+ private Double v29;
+
+ @Column(name = "v_30")
+ private Double v30;
+
+ @Column(name = "v_31")
+ private Double v31;
+
+ @Column(name = "v_32")
+ private Double v32;
+
+ @Column(name = "v_33")
+ private Double v33;
+
+ @Column(name = "v_34")
+ private Double v34;
+
+ @Column(name = "v_35")
+ private Double v35;
+
+ @Column(name = "v_36")
+ private Double v36;
+
+ @Column(name = "v_37")
+ private Double v37;
+
+ @Column(name = "v_38")
+ private Double v38;
+
+ @Column(name = "v_39")
+ private Double v39;
+
+ @Column(name = "v_40")
+ private Double v40;
+
+ @Column(name = "v_41")
+ private Double v41;
+
+ @Column(name = "v_42")
+ private Double v42;
+
+ @Column(name = "v_43")
+ private Double v43;
+
+ @Column(name = "v_44")
+ private Double v44;
+
+ @Column(name = "v_45")
+ private Double v45;
+
+ @Column(name = "v_46")
+ private Double v46;
+
+ @Column(name = "v_47")
+ private Double v47;
+
+ @Column(name = "v_48")
+ private Double v48;
+
+ @Column(name = "v_49")
+ private Double v49;
+
+ @Column(name = "v_50")
+ private Double v50;
+
+ @Column(name = "v_neg")
+ private Double vNeg;
+
+ @Column(name = "v_pos")
+ private Double vPos;
+
+ @Column(name = "v_thd")
+ private Double vThd;
+
+ @Column(name = "v_unbalance")
+ private Double vUnbalance;
+
+ @Column(name = "v_zero")
+ private Double vZero;
+
+ @Column(name = "line_id", tag = true)
+ private String lineId;
+
+ @Column(name = "phasic_type", tag = true)
+ private String phasicType;
+
+ @Column(name = "value_type", tag = true)
+ private String valueType;
+
+
+ //自定义字段-总计算次数
+ @Column(name = "all_time")
+ private Integer allTime;
+
+ //自定义字段
+ @Column(name = "mean")
+ private Double mean;
+
+ //自定义字段
+ @Column(name = "count")
+ private Integer count;
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/HarmonicRatioData.java b/src/main/java/com/njcn/influx/pojo/po/HarmonicRatioData.java
new file mode 100644
index 0000000..f3cf9d4
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/HarmonicRatioData.java
@@ -0,0 +1,529 @@
+package com.njcn.influx.pojo.po;
+
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ */
+@Data
+@Measurement(name = "harmonic_ratio_data")
+public class HarmonicRatioData {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "LineId")
+ private String lineId;
+
+ @Column(name = "Phase")
+ private String phase;
+
+ @Column(name = "Stat_Method")
+ private String statMethod;
+ /**
+ * 2次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H2VLmt")
+ private Double H2VLmt;
+ /**
+ * 3次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H3VLmt")
+ private Double H3VLmt;
+ /**
+ * 4次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H4VLmt")
+ private Double H4VLmt;
+ /**
+ * 5次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H5VLmt")
+ private Double H5VLmt;
+ /**
+ * 6次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H6VLmt")
+ private Double H6VLmt;
+ /**
+ * 7次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H7VLmt")
+ private Double H7VLmt;
+ /**
+ * 8次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H8VLmt")
+ private Double H8VLmt;
+ /**
+ * 9次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H9VLmt")
+ private Double H9VLmt;
+ /**
+ * 10次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H10VLmt")
+ private Double H10VLmt;
+ /**
+ * 11次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H11VLmt")
+ private Double H11VLmt;
+ /**
+ * 12次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H12VLmt")
+ private Double H12VLmt;
+ /**
+ * 13次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H13VLmt")
+ private Double H13VLmt;
+ /**
+ * 14次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H14VLmt")
+ private Double H14VLmt;
+ /**
+ * 15次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H15VLmt")
+ private Double H15VLmt;
+ /**
+ * 16次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H16VLmt")
+ private Double H16VLmt;
+ /**
+ * 17次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H17VLmt")
+ private Double H17VLmt;
+ /**
+ * 18次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H18VLmt")
+ private Double H18VLmt;
+ /**
+ * 19次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H19VLmt")
+ private Double H19VLmt;
+ /**
+ * 20次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H20VLmt")
+ private Double H20VLmt;
+ /**
+ * 21次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H21VLmt")
+ private Double H21VLmt;
+ /**
+ * 22次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H22VLmt")
+ private Double H22VLmt;
+ /**
+ * 23次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H23VLmt")
+ private Double H23VLmt;
+ /**
+ * 24次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H24VLmt")
+ private Double H24VLmt;
+ /**
+ * 25次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H25VLmt")
+ private Double H25VLmt;
+ /**
+ * 26次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H26VLmt")
+ private Double H26VLmt;
+ /**
+ * 27次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H27VLmt")
+ private Double H27VLmt;
+ /**
+ * 28次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H28VLmt")
+ private Double H28VLmt;
+ /**
+ * 29次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H29VLmt")
+ private Double H29VLmt;
+ /**
+ * 30次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H30VLmt")
+ private Double H30VLmt;
+ /**
+ * 31次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H31VLmt")
+ private Double H31VLmt;
+ /**
+ * 32次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H32VLmt")
+ private Double H32VLmt;
+ /**
+ * 33次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H33VLmt")
+ private Double H33VLmt;
+ /**
+ * 34次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H34VLmt")
+ private Double H34VLmt;
+ /**
+ * 35次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H35VLmt")
+ private Double H35VLmt;
+ /**
+ * 36次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H36VLmt")
+ private Double H36VLmt;
+ /**
+ * 37次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H37VLmt")
+ private Double H37VLmt;
+ /**
+ * 38次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H38VLmt")
+ private Double H38VLmt;
+ /**
+ * 39次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H39VLmt")
+ private Double H39VLmt;
+ /**
+ * 40次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H40VLmt")
+ private Double H40VLmt;
+ /**
+ * 41次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H41VLmt")
+ private Double H41VLmt;
+ /**
+ * 42次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H42VLmt")
+ private Double H42VLmt;
+ /**
+ * 43次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H43VLmt")
+ private Double H43VLmt;
+ /**
+ * 44次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H44VLmt")
+ private Double H44VLmt;
+ /**
+ * 45次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H45VLmt")
+ private Double H45VLmt;
+ /**
+ * 46次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H46VLmt")
+ private Double H46VLmt;
+ /**
+ * 47次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H47VLmt")
+ private Double H47VLmt;
+ /**
+ * 48次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H48VLmt")
+ private Double H48VLmt;
+ /**
+ * 49次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H49VLmt")
+ private Double H49VLmt;
+ /**
+ * 50次谐波电压含有率越限定值,单位:%
+ */
+ @Column(name = "H50VLmt")
+ private Double H50VLmt;
+ /**
+ * 2次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H2ALmt")
+ private Double H2ALmt;
+ /**
+ * 3次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H3ALmt")
+ private Double H3ALmt;
+ /**
+ * 4次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H4ALmt")
+ private Double H4ALmt;
+ /**
+ * 5次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H5ALmt")
+ private Double H5ALmt;
+ /**
+ * 6次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H6ALmt")
+ private Double H6ALmt;
+ /**
+ * 7次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H7ALmt")
+ private Double H7ALmt;
+ /**
+ * 8次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H8ALmt")
+ private Double H8ALmt;
+ /**
+ * 9次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H9ALmt")
+ private Double H9ALmt;
+ /**
+ * 10次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H10ALmt")
+ private Double H10ALmt;
+ /**
+ * 11次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H11ALmt")
+ private Double H11ALmt;
+ /**
+ * 12次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H12ALmt")
+ private Double H12ALmt;
+ /**
+ * 13次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H13ALmt")
+ private Double H13ALmt;
+ /**
+ * 14次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H14ALmt")
+ private Double H14ALmt;
+ /**
+ * 15次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H15ALmt")
+ private Double H15ALmt;
+ /**
+ * 16次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H16ALmt")
+ private Double H16ALmt;
+ /**
+ * 17次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H17ALmt")
+ private Double H17ALmt;
+ /**
+ * 18次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H18ALmt")
+ private Double H18ALmt;
+ /**
+ * 19次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H19ALmt")
+ private Double H19ALmt;
+ /**
+ * 20次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H20ALmt")
+ private Double H20ALmt;
+ /**
+ * 21次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H21ALmt")
+ private Double H21ALmt;
+ /**
+ * 22次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H22ALmt")
+ private Double H22ALmt;
+ /**
+ * 23次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H23ALmt")
+ private Double H23ALmt;
+ /**
+ * 24次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H24ALmt")
+ private Double H24ALmt;
+ /**
+ * 25次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H25ALmt")
+ private Double H25ALmt;
+ /**
+ * 26次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H26ALmt")
+ private Double H26ALmt;
+ /**
+ * 27次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H27ALmt")
+ private Double H27ALmt;
+ /**
+ * 28次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H28ALmt")
+ private Double H28ALmt;
+ /**
+ * 29次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H29ALmt")
+ private Double H29ALmt;
+ /**
+ * 30次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H30ALmt")
+ private Double H30ALmt;
+ /**
+ * 31次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H31ALmt")
+ private Double H31ALmt;
+ /**
+ * 32次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H32ALmt")
+ private Double H32ALmt;
+ /**
+ * 33次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H33ALmt")
+ private Double H33ALmt;
+ /**
+ * 34次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H34ALmt")
+ private Double H34ALmt;
+ /**
+ * 35次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H35ALmt")
+ private Double H35ALmt;
+ /**
+ * 36次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H36ALmt")
+ private Double H36ALmt;
+ /**
+ * 37次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H37ALmt")
+ private Double H37ALmt;
+ /**
+ * 38次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H38ALmt")
+ private Double H38ALmt;
+ /**
+ * 39次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H39ALmt")
+ private Double H39ALmt;
+ /**
+ * 40次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H40ALmt")
+ private Double H40ALmt;
+ /**
+ * 41次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H41ALmt")
+ private Double H41ALmt;
+ /**
+ * 42次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H42ALmt")
+ private Double H42ALmt;
+ /**
+ * 43次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H43ALmt")
+ private Double H43ALmt;
+ /**
+ * 44次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H44ALmt")
+ private Double H44ALmt;
+ /**
+ * 45次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H45ALmt")
+ private Double H45ALmt;
+ /**
+ * 46次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H46ALmt")
+ private Double H46ALmt;
+ /**
+ * 47次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H47ALmt")
+ private Double H47ALmt;
+ /**
+ * 48次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H48ALmt")
+ private Double H48ALmt;
+ /**
+ * 49次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H49ALmt")
+ private Double H49ALmt;
+ /**
+ * 50次谐波电流越限定值,单位:A
+ */
+ @Column(name = "H50ALmt")
+ private Double H50ALmt;
+
+
+
+
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/PowerQualityData.java b/src/main/java/com/njcn/influx/pojo/po/PowerQualityData.java
new file mode 100644
index 0000000..fae85a1
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/PowerQualityData.java
@@ -0,0 +1,347 @@
+package com.njcn.influx.pojo.po;
+
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ */
+@Data
+@Measurement(name = "power_quality_data")
+public class PowerQualityData {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "LineId")
+ private String lineId;
+
+ @Column(name = "Phase")
+ private String phase;
+
+ @Column(name = "Stat_Method")
+ private String statMethod;
+
+ /**
+ * 频率
+ */
+ @Column(name = "Hz")
+ private Double Hz;
+ /**
+ * 相电压总有效值
+ */
+ @Column(name = "PhV")
+ private Double PhV;
+ /**
+ * 线电压总有效值
+ */
+ @Column(name = "PPV")
+ private Double PPV;
+ /**
+ * 电流总有效值
+ */
+ @Column(name = "A")
+ private Double A;
+ /**
+ * 频率偏差
+ */
+ @Column(name = "HzDev")
+ private Double HzDev;
+ /**
+ * 相电压偏差
+ */
+ @Column(name = "PhVDev")
+ private Double PhVDev;
+ /**
+ * 线电压偏差
+ */
+ @Column(name = "PPVDev")
+ private Double PPVDev;
+ /**
+ * 正序、负序、零序电压
+ */
+ @Column(name = "SeqV")
+ private Double SeqV;
+ /**
+ * 电压负序不平衡度
+ */
+ @Column(name = "ImbNgV")
+ private Double ImbNgV;
+ /**
+ * 电压零序不平衡度
+ */
+ @Column(name = "ImbZroV")
+ private Double ImbZroV;
+ /**
+ * 正序、负序、零序电流
+ */
+ @Column(name = "SeqA")
+ private Double SeqA;
+ /**
+ * 电流负序不平衡度
+ */
+ @Column(name = "ImbNgA")
+ private Double ImbNgA;
+ /**
+ * 电流零序不平衡度
+ */
+ @Column(name = "ImbZroA")
+ private Double ImbZroA;
+ /**
+ * 相电压基波有效值
+ */
+ @Column(name = "HFundPhV")
+ private Double HFundPhV;
+ /**
+ * 线电压基波有效值
+ */
+ @Column(name = "HFundPPV")
+ private Double HFundPPV;
+ /**
+ * 相电压基波有效值相角
+ */
+ @Column(name = "FundPhVAng")
+ private Double FundPhVAng ;
+ /**
+ * 线电压基波有效值相角
+ */
+ @Column(name = "FundPPVAng")
+ private Double FundPPVAng;
+ /**
+ * 电流基波有效值
+ */
+ @Column(name = "FundA")
+ private Double FundA ;
+ /**
+ * 电流基波相角
+ */
+ @Column(name = "FundAAng")
+ private Double FundAAng;
+ /**
+ * 相电压谐波总畸变率
+ */
+ @Column(name = "ThdPhV")
+ private Double ThdPhV;
+ /**
+ * 线电压谐波总畸变率
+ */
+ @Column(name = "ThdPPV")
+ private Double ThdPPV;
+ /**
+ * 相电压总偶次谐波畸变率
+ */
+ @Column(name = "ThdEvnPhV")
+ private Double ThdEvnPhV;
+ /**
+ * 线电压总偶次谐波畸变率
+ */
+ @Column(name = "ThdEvnPPV")
+ private Double ThdEvnPPV;
+ /**
+ * 相电压总奇次谐波畸变率
+ */
+ @Column(name = "ThdOddPhV")
+ private Double ThdOddPhV;
+ /**
+ * 线电压总奇次谐波畸变率
+ */
+ @Column(name = "ThdOddPPV")
+ private Double ThdOddPPV;
+ /**
+ * 相电压谐波(间谐波)含有率序列
+ */
+ @Column(name = "HRPhV")
+ private Double HRPhV;
+ /**
+ * 相电压谐波(间谐波)相角序列
+ */
+ @Column(name = "HRPhVAng")
+ private Double HRPhVAng;
+ /**
+ * 线电压谐波(间谐波)含有率序列
+ */
+ @Column(name = "HRPPV")
+ private Double HRPPV;
+ /**
+ * 线电压谐波(间谐波)相角序列
+ */
+ @Column(name = "HRPPVAng")
+ private Double HRPPVAng;
+ /**
+ * 电流总谐波畸变率
+ */
+ @Column(name = "ThdA")
+ private Double ThdA;
+ /**
+ * 电流总偶次谐波畸变率
+ */
+ @Column(name = "ThdEvnA")
+ private Double ThdEvnA;
+ /**
+ * 电流总奇次谐波畸变率
+ */
+ @Column(name = "ThdOddA")
+ private Double ThdOddA;
+ /**
+ * 谐波(间谐波)电流有效值
+ */
+ @Column(name = "HA")
+ private Double HA;
+ /**
+ * 谐波(间谐波)电流相角序列
+ */
+ @Column(name = "HAAng")
+ private Double HAAng;
+ /**
+ * 相电压电压变动幅度
+ */
+ @Column(name = "PhFluc")
+ private Double PhFluc;
+ /**
+ * 线电压电压变动幅度
+ */
+ @Column(name = "PPFluc")
+ private Double PPFluc;
+ /**
+ * 相电压电压变动频度
+ */
+ @Column(name = "PhFlucf")
+ private Double PhFlucf;
+ /**
+ * 线电压电压变动频度
+ */
+ @Column(name = "PPFlucf")
+ private Double PPFlucf;
+ /**
+ * 有功功率
+ */
+ @Column(name = "W")
+ private Double W;
+ /**
+ * 无功功率
+ */
+ @Column(name = "VAr")
+ private Double VAr;
+ /**
+ * 视在功率
+ */
+ @Column(name = "VA")
+ private Double VA;
+ /**
+ * 基波有功功率
+ */
+ @Column(name = "FundW")
+ private Double FundW;
+ /**
+ * 基波无功功率
+ */
+ @Column(name = "FundVAr")
+ private Double FundVAr;
+ /**
+ * 基波视在功率
+ */
+ @Column(name = "FundVA")
+ private Double FundVA;
+ /**
+ * 功率因数
+ */
+ @Column(name = "PF")
+ private Double PF;
+ /**
+ * 位移功率因数
+ */
+ @Column(name = "DF")
+ private Double DF;
+ /**
+ * 三相总有功功率
+ */
+ @Column(name = "TotW")
+ private Double TotW;
+ /**
+ * 三相总无功功率
+ */
+ @Column(name = "TotVAr")
+ private Double TotVAr;
+ /**
+ * 三相总视在功率
+ */
+ @Column(name = "TotVA")
+ private Double TotVA;
+ /**
+ * 三相功率因数
+ */
+ @Column(name = "TotPF")
+ private Double TotPF;
+ /**
+ * 三相位移功率因数
+ */
+ @Column(name = "TotDF")
+ private Double TotDF;
+ /**
+ * 谐波有功功率序列
+ */
+ @Column(name = "HW")
+ private Double HW;
+ /**
+ * 谐波无功功率序列
+ */
+ @Column(name = "HVAr")
+ private Double HVAr;
+ /**
+ * 谐波视在功率序列
+ */
+ @Column(name = "HVA")
+ private Double HVA;
+ /**
+ * 三相总谐波有功功率
+ */
+ @Column(name = "TotHW")
+ private Double TotHW;
+ /**
+ * 三相总谐波无功功率
+ */
+ @Column(name = "TotHVAr")
+ private Double TotHVAr;
+ /**
+ * 三相总谐波视在功率
+ */
+ @Column(name = "TotHVA")
+ private Double TotHVA;
+ /**
+ * 相电压短时闪变
+ */
+ @Column(name = "PhPst")
+ private Double PhPst;
+ /**
+ * 线电压短时闪变
+ */
+ @Column(name = "PPPst")
+ private Double PPPst;
+ /**
+ * 相电压长时闪变
+ */
+ @Column(name = "PhPlt")
+ private Double PhPlt;
+ /**
+ * 线电压长时闪变
+ */
+ @Column(name = "PPPlt")
+ private Double PPPlt;
+ /**
+ * 最大需量
+ */
+ @Column(name = "MaxDemand")
+ private Double MaxDemand;
+
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/PqsCommunicate.java b/src/main/java/com/njcn/influx/pojo/po/PqsCommunicate.java
new file mode 100644
index 0000000..a064f1d
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/PqsCommunicate.java
@@ -0,0 +1,40 @@
+package com.njcn.influx.pojo.po;
+
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/7/12 9:55
+ */
+@Data
+@Measurement(name = "pqs_communicate")
+public class PqsCommunicate {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "dev_id")
+ private String devId;
+
+ @Column(name = "description")
+ private String description;
+
+ @Column(name = "type")
+ private Integer type;
+
+ //自定义
+ private int duration;
+
+ private String desc;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/cs/CsDataHarmPowerP.java b/src/main/java/com/njcn/influx/pojo/po/cs/CsDataHarmPowerP.java
new file mode 100644
index 0000000..a5116fe
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/cs/CsDataHarmPowerP.java
@@ -0,0 +1,38 @@
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/6/5 16:09
+ */
+@Data
+@Measurement(name = "data_harmpower_p")
+public class CsDataHarmPowerP {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "line_id")
+ private String lineId;
+
+ @Column(name = "phasic_type")
+ private String phaseType;
+
+ @Column(name = "value_type")
+ private String valueType;
+
+ @Column(name = "W")
+ private Double w;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/cs/EntData.java b/src/main/java/com/njcn/influx/pojo/po/cs/EntData.java
new file mode 100644
index 0000000..abe41ee
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/cs/EntData.java
@@ -0,0 +1,48 @@
+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 java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/4/7 10:00
+ */
+@Data
+@Measurement(name = "evt_data")
+@Deprecated
+public class EntData {
+
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "line_id")
+ private String lineId;
+
+ @Column(name = "sec")
+ private String sec;
+
+ @Column(name = "target")
+ private String target;
+
+ @Column(name = "evt_vva")
+ private Double evtVva;
+
+ @Column(name = "evt_vvadepth")
+ private Double evtVvadepth;
+
+ @Column(name = "evt_vvaphase")
+ private String evtVvaphase;
+
+ @Column(name = "evt_vvatm")
+ private Double evtVvatm;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayFlicker.java b/src/main/java/com/njcn/influx/pojo/po/day/DayFlicker.java
new file mode 100644
index 0000000..e2d682d
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayFlicker.java
@@ -0,0 +1,59 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ */
+@Data
+@Measurement(name = "day_flicker")
+public class DayFlicker {
+
+ @TimeColumn
+ @Column(name = "time")
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "fluc")
+ private Double fluc;
+
+ @Column(name = "line_id",tag = true)
+ private String lineId;
+
+ @Column(name = "phasic_type",tag = true)
+ private String phaseType;
+
+ @Column(name = "plt")
+ private Double plt;
+
+ @Column(name = "pst")
+ private Double pst;
+
+ @Column(name = "quality_flag",tag = true)
+ private String qualityFlag;
+
+
+ //自定义字段
+ @Column(name = "value_type",tag = true)
+ private String valueType;
+
+ @Column(name = "count")
+ private Integer count;
+
+ @Column(name = "pst_count")
+ private Integer pstCount;
+
+ @Column(name = "plt_count")
+ private Integer pltCount;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayFluc.java b/src/main/java/com/njcn/influx/pojo/po/day/DayFluc.java
new file mode 100644
index 0000000..4c92e8e
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayFluc.java
@@ -0,0 +1,45 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ */
+@Data
+@Measurement(name = "day_fluc")
+public class DayFluc {
+
+ @Column(name = "time")
+ @TimeColumn
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "fluc")
+ private Double fluc;
+
+ @Column(name = "fluccf")
+ private Double fluccf;
+
+ @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;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPhasicI.java b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPhasicI.java
new file mode 100644
index 0000000..de971cb
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPhasicI.java
@@ -0,0 +1,189 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ */
+@Data
+@Measurement(name = "day_harmphasic_i")
+public class DayHarmPhasicI {
+
+ @Column(name = "time")
+ @TimeColumn
+ @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 = "i_1")
+ private Double i1;
+
+ @Column(name = "i_2")
+ private Double i2;
+
+ @Column(name = "i_3")
+ private Double i3;
+
+ @Column(name = "i_4")
+ private Double i4;
+
+ @Column(name = "i_5")
+ private Double i5;
+
+ @Column(name = "i_6")
+ private Double i6;
+
+ @Column(name = "i_7")
+ private Double i7;
+
+ @Column(name = "i_8")
+ private Double i8;
+
+ @Column(name = "i_9")
+ private Double i9;
+
+ @Column(name = "i_10")
+ private Double i10;
+
+ @Column(name = "i_11")
+ private Double i11;
+
+ @Column(name = "i_12")
+ private Double i12;
+
+ @Column(name = "i_13")
+ private Double i13;
+
+ @Column(name = "i_14")
+ private Double i14;
+
+ @Column(name = "i_15")
+ private Double i15;
+
+ @Column(name = "i_16")
+ private Double i16;
+
+ @Column(name = "i_17")
+ private Double i17;
+
+ @Column(name = "i_18")
+ private Double i18;
+
+ @Column(name = "i_19")
+ private Double i19;
+
+ @Column(name = "i_20")
+ private Double i20;
+
+ @Column(name = "i_21")
+ private Double i21;
+
+ @Column(name = "i_22")
+ private Double i22;
+
+ @Column(name = "i_23")
+ private Double i23;
+
+ @Column(name = "i_24")
+ private Double i24;
+
+ @Column(name = "i_25")
+ private Double i25;
+
+ @Column(name = "i_26")
+ private Double i26;
+
+ @Column(name = "i_27")
+ private Double i27;
+
+ @Column(name = "i_28")
+ private Double i28;
+
+ @Column(name = "i_29")
+ private Double i29;
+
+ @Column(name = "i_30")
+ private Double i30;
+
+ @Column(name = "i_31")
+ private Double i31;
+
+ @Column(name = "i_32")
+ private Double i32;
+
+ @Column(name = "i_33")
+ private Double i33;
+
+ @Column(name = "i_34")
+ private Double i34;
+
+ @Column(name = "i_35")
+ private Double i35;
+
+ @Column(name = "i_36")
+ private Double i36;
+
+ @Column(name = "i_37")
+ private Double i37;
+
+ @Column(name = "i_38")
+ private Double i38;
+
+ @Column(name = "i_39")
+ private Double i39;
+
+ @Column(name = "i_40")
+ private Double i40;
+
+ @Column(name = "i_41")
+ private Double i41;
+
+ @Column(name = "i_42")
+ private Double i42;
+
+ @Column(name = "i_43")
+ private Double i43;
+
+ @Column(name = "i_44")
+ private Double i44;
+
+ @Column(name = "i_45")
+ private Double i45;
+
+ @Column(name = "i_46")
+ private Double i46;
+
+ @Column(name = "i_47")
+ private Double i47;
+
+ @Column(name = "i_48")
+ private Double i48;
+
+ @Column(name = "i_49")
+ private Double i49;
+
+ @Column(name = "i_50")
+ private Double i50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPhasicV.java b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPhasicV.java
new file mode 100644
index 0000000..c7eb5b4
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPhasicV.java
@@ -0,0 +1,190 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "day_harmphasic_v")
+public class DayHarmPhasicV {
+
+ @Column(name = "time")
+ @TimeColumn
+ @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 = "v_1")
+ private Double v1;
+
+ @Column(name = "v_2")
+ private Double v2;
+
+ @Column(name = "v_3")
+ private Double v3;
+
+ @Column(name = "v_4")
+ private Double v4;
+
+ @Column(name = "v_5")
+ private Double v5;
+
+ @Column(name = "v_6")
+ private Double v6;
+
+ @Column(name = "v_7")
+ private Double v7;
+
+ @Column(name = "v_8")
+ private Double v8;
+
+ @Column(name = "v_9")
+ private Double v9;
+
+ @Column(name = "v_10")
+ private Double v10;
+
+ @Column(name = "v_11")
+ private Double v11;
+
+ @Column(name = "v_12")
+ private Double v12;
+
+ @Column(name = "v_13")
+ private Double v13;
+
+ @Column(name = "v_14")
+ private Double v14;
+
+ @Column(name = "v_15")
+ private Double v15;
+
+ @Column(name = "v_16")
+ private Double v16;
+
+ @Column(name = "v_17")
+ private Double v17;
+
+ @Column(name = "v_18")
+ private Double v18;
+
+ @Column(name = "v_19")
+ private Double v19;
+
+ @Column(name = "v_20")
+ private Double v20;
+
+ @Column(name = "v_21")
+ private Double v21;
+
+ @Column(name = "v_22")
+ private Double v22;
+
+ @Column(name = "v_23")
+ private Double v23;
+
+ @Column(name = "v_24")
+ private Double v24;
+
+ @Column(name = "v_25")
+ private Double v25;
+
+ @Column(name = "v_26")
+ private Double v26;
+
+ @Column(name = "v_27")
+ private Double v27;
+
+ @Column(name = "v_28")
+ private Double v28;
+
+ @Column(name = "v_29")
+ private Double v29;
+
+ @Column(name = "v_30")
+ private Double v30;
+
+ @Column(name = "v_31")
+ private Double v31;
+
+ @Column(name = "v_32")
+ private Double v32;
+
+ @Column(name = "v_33")
+ private Double v33;
+
+ @Column(name = "v_34")
+ private Double v34;
+
+ @Column(name = "v_35")
+ private Double v35;
+
+ @Column(name = "v_36")
+ private Double v36;
+
+ @Column(name = "v_37")
+ private Double v37;
+
+ @Column(name = "v_38")
+ private Double v38;
+
+ @Column(name = "v_39")
+ private Double v39;
+
+ @Column(name = "v_40")
+ private Double v40;
+
+ @Column(name = "v_41")
+ private Double v41;
+
+ @Column(name = "v_42")
+ private Double v42;
+
+ @Column(name = "v_43")
+ private Double v43;
+
+ @Column(name = "v_44")
+ private Double v44;
+
+ @Column(name = "v_45")
+ private Double v45;
+
+ @Column(name = "v_46")
+ private Double v46;
+
+ @Column(name = "v_47")
+ private Double v47;
+
+ @Column(name = "v_48")
+ private Double v48;
+
+ @Column(name = "v_49")
+ private Double v49;
+
+ @Column(name = "v_50")
+ private Double v50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerP.java b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerP.java
new file mode 100644
index 0000000..36706a6
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerP.java
@@ -0,0 +1,198 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "day_harmpower_p")
+public class DayHarmPowerP {
+
+ @Column(name = "time")
+ @TimeColumn
+ @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 = "df")
+ private Double df;
+
+ @Column(name = "pf")
+ private Double pf;
+
+ @Column(name = "p")
+ private Double p;
+
+ @Column(name = "p_1")
+ private Double p1;
+
+ @Column(name = "p_2")
+ private Double p2;
+
+ @Column(name = "p_3")
+ private Double p3;
+
+ @Column(name = "p_4")
+ private Double p4;
+
+ @Column(name = "p_5")
+ private Double p5;
+
+ @Column(name = "p_6")
+ private Double p6;
+
+ @Column(name = "p_7")
+ private Double p7;
+
+ @Column(name = "p_8")
+ private Double p8;
+
+ @Column(name = "p_9")
+ private Double p9;
+
+ @Column(name = "p_10")
+ private Double p10;
+
+ @Column(name = "p_11")
+ private Double p11;
+
+ @Column(name = "p_12")
+ private Double p12;
+
+ @Column(name = "p_13")
+ private Double p13;
+
+ @Column(name = "p_14")
+ private Double p14;
+
+ @Column(name = "p_15")
+ private Double p15;
+
+ @Column(name = "p_16")
+ private Double p16;
+
+ @Column(name = "p_17")
+ private Double p17;
+
+ @Column(name = "p_18")
+ private Double p18;
+
+ @Column(name = "p_19")
+ private Double p19;
+
+ @Column(name = "p_20")
+ private Double p20;
+
+ @Column(name = "p_21")
+ private Double p21;
+
+ @Column(name = "p_22")
+ private Double p22;
+
+ @Column(name = "p_23")
+ private Double p23;
+
+ @Column(name = "p_24")
+ private Double p24;
+
+ @Column(name = "p_25")
+ private Double p25;
+
+ @Column(name = "p_26")
+ private Double p26;
+
+ @Column(name = "p_27")
+ private Double p27;
+
+ @Column(name = "p_28")
+ private Double p28;
+
+ @Column(name = "p_29")
+ private Double p29;
+
+ @Column(name = "p_30")
+ private Double p30;
+
+ @Column(name = "p_31")
+ private Double p31;
+
+ @Column(name = "p_32")
+ private Double p32;
+
+ @Column(name = "p_33")
+ private Double p33;
+
+ @Column(name = "p_34")
+ private Double p34;
+
+ @Column(name = "p_35")
+ private Double p35;
+
+ @Column(name = "p_36")
+ private Double p36;
+
+ @Column(name = "p_37")
+ private Double p37;
+
+ @Column(name = "p_38")
+ private Double p38;
+
+ @Column(name = "p_39")
+ private Double p39;
+
+ @Column(name = "p_40")
+ private Double p40;
+
+ @Column(name = "p_41")
+ private Double p41;
+
+ @Column(name = "p_42")
+ private Double p42;
+
+ @Column(name = "p_43")
+ private Double p43;
+
+ @Column(name = "p_44")
+ private Double p44;
+
+ @Column(name = "p_45")
+ private Double p45;
+
+ @Column(name = "p_46")
+ private Double p46;
+
+ @Column(name = "p_47")
+ private Double p47;
+
+ @Column(name = "p_48")
+ private Double p48;
+
+ @Column(name = "p_49")
+ private Double p49;
+
+ @Column(name = "p_50")
+ private Double p50;
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerQ.java b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerQ.java
new file mode 100644
index 0000000..e87f15d
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerQ.java
@@ -0,0 +1,193 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "day_harmpower_q")
+public class DayHarmPowerQ {
+
+ @Column(name = "time")
+ @TimeColumn
+ @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 = "q")
+ private Double q;
+
+ @Column(name = "q_1")
+ private Double q1;
+
+ @Column(name = "q_2")
+ private Double q2;
+
+ @Column(name = "q_3")
+ private Double q3;
+
+ @Column(name = "q_4")
+ private Double q4;
+
+ @Column(name = "q_5")
+ private Double q5;
+
+ @Column(name = "q_6")
+ private Double q6;
+
+ @Column(name = "q_7")
+ private Double q7;
+
+ @Column(name = "q_8")
+ private Double q8;
+
+ @Column(name = "q_9")
+ private Double q9;
+
+ @Column(name = "q_10")
+ private Double q10;
+
+ @Column(name = "q_11")
+ private Double q11;
+
+ @Column(name = "q_12")
+ private Double q12;
+
+ @Column(name = "q_13")
+ private Double q13;
+
+ @Column(name = "q_14")
+ private Double q14;
+
+ @Column(name = "q_15")
+ private Double q15;
+
+ @Column(name = "q_16")
+ private Double q16;
+
+ @Column(name = "q_17")
+ private Double q17;
+
+ @Column(name = "q_18")
+ private Double q18;
+
+ @Column(name = "q_19")
+ private Double q19;
+
+ @Column(name = "q_20")
+ private Double q20;
+
+ @Column(name = "q_21")
+ private Double q21;
+
+ @Column(name = "q_22")
+ private Double q22;
+
+ @Column(name = "q_23")
+ private Double q23;
+
+ @Column(name = "q_24")
+ private Double q24;
+
+ @Column(name = "q_25")
+ private Double q25;
+
+ @Column(name = "q_26")
+ private Double q26;
+
+ @Column(name = "q_27")
+ private Double q27;
+
+ @Column(name = "q_28")
+ private Double q28;
+
+ @Column(name = "q_29")
+ private Double q29;
+
+ @Column(name = "q_30")
+ private Double q30;
+
+ @Column(name = "q_31")
+ private Double q31;
+
+ @Column(name = "q_32")
+ private Double q32;
+
+ @Column(name = "q_33")
+ private Double q33;
+
+ @Column(name = "q_34")
+ private Double q34;
+
+ @Column(name = "q_35")
+ private Double q35;
+
+ @Column(name = "q_36")
+ private Double q36;
+
+ @Column(name = "q_37")
+ private Double q37;
+
+ @Column(name = "q_38")
+ private Double q38;
+
+ @Column(name = "q_39")
+ private Double q39;
+
+ @Column(name = "q_40")
+ private Double q40;
+
+ @Column(name = "q_41")
+ private Double q41;
+
+ @Column(name = "q_42")
+ private Double q42;
+
+ @Column(name = "q_43")
+ private Double q43;
+
+ @Column(name = "q_44")
+ private Double q44;
+
+ @Column(name = "q_45")
+ private Double q45;
+
+ @Column(name = "q_46")
+ private Double q46;
+
+ @Column(name = "q_47")
+ private Double q47;
+
+ @Column(name = "q_48")
+ private Double q48;
+
+ @Column(name = "q_49")
+ private Double q49;
+
+ @Column(name = "q_50")
+ private Double q50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerS.java b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerS.java
new file mode 100644
index 0000000..2cf1878
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmPowerS.java
@@ -0,0 +1,193 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "day_harmpower_s")
+public class DayHarmPowerS {
+
+ @Column(name = "time")
+ @TimeColumn
+ @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 = "s")
+ private Double s;
+
+ @Column(name = "s_1")
+ private Double s1;
+
+ @Column(name = "s_2")
+ private Double s2;
+
+ @Column(name = "s_3")
+ private Double s3;
+
+ @Column(name = "s_4")
+ private Double s4;
+
+ @Column(name = "s_5")
+ private Double s5;
+
+ @Column(name = "s_6")
+ private Double s6;
+
+ @Column(name = "s_7")
+ private Double s7;
+
+ @Column(name = "s_8")
+ private Double s8;
+
+ @Column(name = "s_9")
+ private Double s9;
+
+ @Column(name = "s_10")
+ private Double s10;
+
+ @Column(name = "s_11")
+ private Double s11;
+
+ @Column(name = "s_12")
+ private Double s12;
+
+ @Column(name = "s_13")
+ private Double s13;
+
+ @Column(name = "s_14")
+ private Double s14;
+
+ @Column(name = "s_15")
+ private Double s15;
+
+ @Column(name = "s_16")
+ private Double s16;
+
+ @Column(name = "s_17")
+ private Double s17;
+
+ @Column(name = "s_18")
+ private Double s18;
+
+ @Column(name = "s_19")
+ private Double s19;
+
+ @Column(name = "s_20")
+ private Double s20;
+
+ @Column(name = "s_21")
+ private Double s21;
+
+ @Column(name = "s_22")
+ private Double s22;
+
+ @Column(name = "s_23")
+ private Double s23;
+
+ @Column(name = "s_24")
+ private Double s24;
+
+ @Column(name = "s_25")
+ private Double s25;
+
+ @Column(name = "s_26")
+ private Double s26;
+
+ @Column(name = "s_27")
+ private Double s27;
+
+ @Column(name = "s_28")
+ private Double s28;
+
+ @Column(name = "s_29")
+ private Double s29;
+
+ @Column(name = "s_30")
+ private Double s30;
+
+ @Column(name = "s_31")
+ private Double s31;
+
+ @Column(name = "s_32")
+ private Double s32;
+
+ @Column(name = "s_33")
+ private Double s33;
+
+ @Column(name = "s_34")
+ private Double s34;
+
+ @Column(name = "s_35")
+ private Double s35;
+
+ @Column(name = "s_36")
+ private Double s36;
+
+ @Column(name = "s_37")
+ private Double s37;
+
+ @Column(name = "s_38")
+ private Double s38;
+
+ @Column(name = "s_39")
+ private Double s39;
+
+ @Column(name = "s_40")
+ private Double s40;
+
+ @Column(name = "s_41")
+ private Double s41;
+
+ @Column(name = "s_42")
+ private Double s42;
+
+ @Column(name = "s_43")
+ private Double s43;
+
+ @Column(name = "s_44")
+ private Double s44;
+
+ @Column(name = "s_45")
+ private Double s45;
+
+ @Column(name = "s_46")
+ private Double s46;
+
+ @Column(name = "s_47")
+ private Double s47;
+
+ @Column(name = "s_48")
+ private Double s48;
+
+ @Column(name = "s_49")
+ private Double s49;
+
+ @Column(name = "s_50")
+ private Double s50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayHarmRateI.java b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmRateI.java
new file mode 100644
index 0000000..d3598e6
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmRateI.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.pojo.po.day;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.influxdb.annotation.Measurement;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 11:27
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Measurement(name = "day_harmrate_i")
+public class DayHarmRateI extends DayHarmPhasicI {
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayHarmRateV.java b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmRateV.java
new file mode 100644
index 0000000..7f2dfb6
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayHarmRateV.java
@@ -0,0 +1,18 @@
+package com.njcn.influx.pojo.po.day;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.influxdb.annotation.Measurement;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 11:27
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Measurement(name = "day_harmrate_v")
+public class DayHarmRateV extends DayHarmPhasicV {
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayI.java b/src/main/java/com/njcn/influx/pojo/po/day/DayI.java
new file mode 100644
index 0000000..606ede8
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayI.java
@@ -0,0 +1,208 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/11 15:13
+ */
+@Data
+@Measurement(name = "day_i")
+public class DayI {
+
+ @Column(name = "time",tag = true)
+ @TimeColumn
+ @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 = "i_neg")
+ private Double iNeg;
+
+ @Column(name = "i_pos")
+ private Double iPos;
+
+ @Column(name = "i_thd")
+ private Double iThd;
+
+ @Column(name = "i_unbalance")
+ private Double iUnbalance;
+
+ @Column(name = "i_zero")
+ private Double iZero;
+
+ @Column(name = "rms")
+ private Double rms;
+
+ @Column(name = "i_1")
+ private Double i1;
+
+ @Column(name = "i_2")
+ private Double i2;
+
+ @Column(name = "i_3")
+ private Double i3;
+
+ @Column(name = "i_4")
+ private Double i4;
+
+ @Column(name = "i_5")
+ private Double i5;
+
+ @Column(name = "i_6")
+ private Double i6;
+
+ @Column(name = "i_7")
+ private Double i7;
+
+ @Column(name = "i_8")
+ private Double i8;
+
+ @Column(name = "i_9")
+ private Double i9;
+
+ @Column(name = "i_10")
+ private Double i10;
+
+ @Column(name = "i_11")
+ private Double i11;
+
+ @Column(name = "i_12")
+ private Double i12;
+
+ @Column(name = "i_13")
+ private Double i13;
+
+ @Column(name = "i_14")
+ private Double i14;
+
+ @Column(name = "i_15")
+ private Double i15;
+
+ @Column(name = "i_16")
+ private Double i16;
+
+ @Column(name = "i_17")
+ private Double i17;
+
+ @Column(name = "i_18")
+ private Double i18;
+
+ @Column(name = "i_19")
+ private Double i19;
+
+ @Column(name = "i_20")
+ private Double i20;
+
+ @Column(name = "i_21")
+ private Double i21;
+
+ @Column(name = "i_22")
+ private Double i22;
+
+ @Column(name = "i_23")
+ private Double i23;
+
+ @Column(name = "i_24")
+ private Double i24;
+
+ @Column(name = "i_25")
+ private Double i25;
+
+ @Column(name = "i_26")
+ private Double i26;
+
+ @Column(name = "i_27")
+ private Double i27;
+
+ @Column(name = "i_28")
+ private Double i28;
+
+ @Column(name = "i_29")
+ private Double i29;
+
+ @Column(name = "i_30")
+ private Double i30;
+
+ @Column(name = "i_31")
+ private Double i31;
+
+ @Column(name = "i_32")
+ private Double i32;
+
+ @Column(name = "i_33")
+ private Double i33;
+
+ @Column(name = "i_34")
+ private Double i34;
+
+ @Column(name = "i_35")
+ private Double i35;
+
+ @Column(name = "i_36")
+ private Double i36;
+
+ @Column(name = "i_37")
+ private Double i37;
+
+ @Column(name = "i_38")
+ private Double i38;
+
+ @Column(name = "i_39")
+ private Double i39;
+
+ @Column(name = "i_40")
+ private Double i40;
+
+ @Column(name = "i_41")
+ private Double i41;
+
+ @Column(name = "i_42")
+ private Double i42;
+
+ @Column(name = "i_43")
+ private Double i43;
+
+ @Column(name = "i_44")
+ private Double i44;
+
+ @Column(name = "i_45")
+ private Double i45;
+
+ @Column(name = "i_46")
+ private Double i46;
+
+ @Column(name = "i_47")
+ private Double i47;
+
+ @Column(name = "i_48")
+ private Double i48;
+
+ @Column(name = "i_49")
+ private Double i49;
+
+ @Column(name = "i_50")
+ private Double i50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmI.java b/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmI.java
new file mode 100644
index 0000000..e3992fb
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmI.java
@@ -0,0 +1,20 @@
+package com.njcn.influx.pojo.po.day;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.influxdb.annotation.Measurement;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 11:27
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Measurement(name = "day_inharm_i")
+public class DayInHarmI extends DayHarmPhasicI {
+
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmRateI.java b/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmRateI.java
new file mode 100644
index 0000000..40993e1
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmRateI.java
@@ -0,0 +1,187 @@
+package com.njcn.influx.pojo.po.day;
+
+import lombok.Data;
+import org.influxdb.annotation.Column;
+import org.influxdb.annotation.Measurement;
+import org.influxdb.annotation.TimeColumn;
+
+import java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "day_inharmrate_i")
+public class DayInHarmRateI {
+
+ @Column(name = "time")
+ @TimeColumn
+ 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 = "i_1")
+ private Double i1;
+
+ @Column(name = "i_2")
+ private Double i2;
+
+ @Column(name = "i_3")
+ private Double i3;
+
+ @Column(name = "i_4")
+ private Double i4;
+
+ @Column(name = "i_5")
+ private Double i5;
+
+ @Column(name = "i_6")
+ private Double i6;
+
+ @Column(name = "i_7")
+ private Double i7;
+
+ @Column(name = "i_8")
+ private Double i8;
+
+ @Column(name = "i_9")
+ private Double i9;
+
+ @Column(name = "i_10")
+ private Double i10;
+
+ @Column(name = "i_11")
+ private Double i11;
+
+ @Column(name = "i_12")
+ private Double i12;
+
+ @Column(name = "i_13")
+ private Double i13;
+
+ @Column(name = "i_14")
+ private Double i14;
+
+ @Column(name = "i_15")
+ private Double i15;
+
+ @Column(name = "i_16")
+ private Double i16;
+
+ @Column(name = "i_17")
+ private Double i17;
+
+ @Column(name = "i_18")
+ private Double i18;
+
+ @Column(name = "i_19")
+ private Double i19;
+
+ @Column(name = "i_20")
+ private Double i20;
+
+ @Column(name = "i_21")
+ private Double i21;
+
+ @Column(name = "i_22")
+ private Double i22;
+
+ @Column(name = "i_23")
+ private Double i23;
+
+ @Column(name = "i_24")
+ private Double i24;
+
+ @Column(name = "i_25")
+ private Double i25;
+
+ @Column(name = "i_26")
+ private Double i26;
+
+ @Column(name = "i_27")
+ private Double i27;
+
+ @Column(name = "i_28")
+ private Double i28;
+
+ @Column(name = "i_29")
+ private Double i29;
+
+ @Column(name = "i_30")
+ private Double i30;
+
+ @Column(name = "i_31")
+ private Double i31;
+
+ @Column(name = "i_32")
+ private Double i32;
+
+ @Column(name = "i_33")
+ private Double i33;
+
+ @Column(name = "i_34")
+ private Double i34;
+
+ @Column(name = "i_35")
+ private Double i35;
+
+ @Column(name = "i_36")
+ private Double i36;
+
+ @Column(name = "i_37")
+ private Double i37;
+
+ @Column(name = "i_38")
+ private Double i38;
+
+ @Column(name = "i_39")
+ private Double i39;
+
+ @Column(name = "i_40")
+ private Double i40;
+
+ @Column(name = "i_41")
+ private Double i41;
+
+ @Column(name = "i_42")
+ private Double i42;
+
+ @Column(name = "i_43")
+ private Double i43;
+
+ @Column(name = "i_44")
+ private Double i44;
+
+ @Column(name = "i_45")
+ private Double i45;
+
+ @Column(name = "i_46")
+ private Double i46;
+
+ @Column(name = "i_47")
+ private Double i47;
+
+ @Column(name = "i_48")
+ private Double i48;
+
+ @Column(name = "i_49")
+ private Double i49;
+
+ @Column(name = "i_50")
+ private Double i50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmRateV.java b/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmRateV.java
new file mode 100644
index 0000000..56dd095
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmRateV.java
@@ -0,0 +1,185 @@
+package com.njcn.influx.pojo.po.day;
+
+import lombok.Data;
+import org.influxdb.annotation.Column;
+import org.influxdb.annotation.Measurement;
+
+import java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 9:13
+ */
+@Data
+@Measurement(name = "day_inharmrate_v")
+public class DayInHarmRateV {
+
+ @Column(name = "time")
+ 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 = "v_1")
+ private Double v1;
+
+ @Column(name = "v_2")
+ private Double v2;
+
+ @Column(name = "v_3")
+ private Double v3;
+
+ @Column(name = "v_4")
+ private Double v4;
+
+ @Column(name = "v_5")
+ private Double v5;
+
+ @Column(name = "v_6")
+ private Double v6;
+
+ @Column(name = "v_7")
+ private Double v7;
+
+ @Column(name = "v_8")
+ private Double v8;
+
+ @Column(name = "v_9")
+ private Double v9;
+
+ @Column(name = "v_10")
+ private Double v10;
+
+ @Column(name = "v_11")
+ private Double v11;
+
+ @Column(name = "v_12")
+ private Double v12;
+
+ @Column(name = "v_13")
+ private Double v13;
+
+ @Column(name = "v_14")
+ private Double v14;
+
+ @Column(name = "v_15")
+ private Double v15;
+
+ @Column(name = "v_16")
+ private Double v16;
+
+ @Column(name = "v_17")
+ private Double v17;
+
+ @Column(name = "v_18")
+ private Double v18;
+
+ @Column(name = "v_19")
+ private Double v19;
+
+ @Column(name = "v_20")
+ private Double v20;
+
+ @Column(name = "v_21")
+ private Double v21;
+
+ @Column(name = "v_22")
+ private Double v22;
+
+ @Column(name = "v_23")
+ private Double v23;
+
+ @Column(name = "v_24")
+ private Double v24;
+
+ @Column(name = "v_25")
+ private Double v25;
+
+ @Column(name = "v_26")
+ private Double v26;
+
+ @Column(name = "v_27")
+ private Double v27;
+
+ @Column(name = "v_28")
+ private Double v28;
+
+ @Column(name = "v_29")
+ private Double v29;
+
+ @Column(name = "v_30")
+ private Double v30;
+
+ @Column(name = "v_31")
+ private Double v31;
+
+ @Column(name = "v_32")
+ private Double v32;
+
+ @Column(name = "v_33")
+ private Double v33;
+
+ @Column(name = "v_34")
+ private Double v34;
+
+ @Column(name = "v_35")
+ private Double v35;
+
+ @Column(name = "v_36")
+ private Double v36;
+
+ @Column(name = "v_37")
+ private Double v37;
+
+ @Column(name = "v_38")
+ private Double v38;
+
+ @Column(name = "v_39")
+ private Double v39;
+
+ @Column(name = "v_40")
+ private Double v40;
+
+ @Column(name = "v_41")
+ private Double v41;
+
+ @Column(name = "v_42")
+ private Double v42;
+
+ @Column(name = "v_43")
+ private Double v43;
+
+ @Column(name = "v_44")
+ private Double v44;
+
+ @Column(name = "v_45")
+ private Double v45;
+
+ @Column(name = "v_46")
+ private Double v46;
+
+ @Column(name = "v_47")
+ private Double v47;
+
+ @Column(name = "v_48")
+ private Double v48;
+
+ @Column(name = "v_49")
+ private Double v49;
+
+ @Column(name = "v_50")
+ private Double v50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmV.java b/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmV.java
new file mode 100644
index 0000000..10410a2
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayInHarmV.java
@@ -0,0 +1,187 @@
+package com.njcn.influx.pojo.po.day;
+
+import lombok.Data;
+import org.influxdb.annotation.Column;
+import org.influxdb.annotation.Measurement;
+import org.influxdb.annotation.TimeColumn;
+
+import java.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/5/12 11:27
+ */
+@Data
+@Measurement(name = "day_inharm_v")
+public class DayInHarmV {
+
+ @Column(name = "time")
+ @TimeColumn
+ 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 = "v_1")
+ private Double v1;
+
+ @Column(name = "v_2")
+ private Double v2;
+
+ @Column(name = "v_3")
+ private Double v3;
+
+ @Column(name = "v_4")
+ private Double v4;
+
+ @Column(name = "v_5")
+ private Double v5;
+
+ @Column(name = "v_6")
+ private Double v6;
+
+ @Column(name = "v_7")
+ private Double v7;
+
+ @Column(name = "v_8")
+ private Double v8;
+
+ @Column(name = "v_9")
+ private Double v9;
+
+ @Column(name = "v_10")
+ private Double v10;
+
+ @Column(name = "v_11")
+ private Double v11;
+
+ @Column(name = "v_12")
+ private Double v12;
+
+ @Column(name = "v_13")
+ private Double v13;
+
+ @Column(name = "v_14")
+ private Double v14;
+
+ @Column(name = "v_15")
+ private Double v15;
+
+ @Column(name = "v_16")
+ private Double v16;
+
+ @Column(name = "v_17")
+ private Double v17;
+
+ @Column(name = "v_18")
+ private Double v18;
+
+ @Column(name = "v_19")
+ private Double v19;
+
+ @Column(name = "v_20")
+ private Double v20;
+
+ @Column(name = "v_21")
+ private Double v21;
+
+ @Column(name = "v_22")
+ private Double v22;
+
+ @Column(name = "v_23")
+ private Double v23;
+
+ @Column(name = "v_24")
+ private Double v24;
+
+ @Column(name = "v_25")
+ private Double v25;
+
+ @Column(name = "v_26")
+ private Double v26;
+
+ @Column(name = "v_27")
+ private Double v27;
+
+ @Column(name = "v_28")
+ private Double v28;
+
+ @Column(name = "v_29")
+ private Double v29;
+
+ @Column(name = "v_30")
+ private Double v30;
+
+ @Column(name = "v_31")
+ private Double v31;
+
+ @Column(name = "v_32")
+ private Double v32;
+
+ @Column(name = "v_33")
+ private Double v33;
+
+ @Column(name = "v_34")
+ private Double v34;
+
+ @Column(name = "v_35")
+ private Double v35;
+
+ @Column(name = "v_36")
+ private Double v36;
+
+ @Column(name = "v_37")
+ private Double v37;
+
+ @Column(name = "v_38")
+ private Double v38;
+
+ @Column(name = "v_39")
+ private Double v39;
+
+ @Column(name = "v_40")
+ private Double v40;
+
+ @Column(name = "v_41")
+ private Double v41;
+
+ @Column(name = "v_42")
+ private Double v42;
+
+ @Column(name = "v_43")
+ private Double v43;
+
+ @Column(name = "v_44")
+ private Double v44;
+
+ @Column(name = "v_45")
+ private Double v45;
+
+ @Column(name = "v_46")
+ private Double v46;
+
+ @Column(name = "v_47")
+ private Double v47;
+
+ @Column(name = "v_48")
+ private Double v48;
+
+ @Column(name = "v_49")
+ private Double v49;
+
+ @Column(name = "v_50")
+ private Double v50;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayPlt.java b/src/main/java/com/njcn/influx/pojo/po/day/DayPlt.java
new file mode 100644
index 0000000..b07834f
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayPlt.java
@@ -0,0 +1,43 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/4/12 16:01
+ */
+@Data
+@Measurement(name = "day_plt")
+public class DayPlt {
+
+ @Column(name = "time")
+ @TimeColumn
+ @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 = "value_type",tag = true)
+ private String valueType;
+
+ @Column(name = "quality_flag",tag = true)
+ private String qualityFlag;
+
+ @Column(name = "plt")
+ private Double plt;
+
+}
diff --git a/src/main/java/com/njcn/influx/pojo/po/day/DayV.java b/src/main/java/com/njcn/influx/pojo/po/day/DayV.java
new file mode 100644
index 0000000..6466529
--- /dev/null
+++ b/src/main/java/com/njcn/influx/pojo/po/day/DayV.java
@@ -0,0 +1,235 @@
+package com.njcn.influx.pojo.po.day;
+
+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.time.Instant;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2022/4/7 10:00
+ */
+@Data
+@Measurement(name = "day_v")
+public class DayV {
+
+ @Column(name = "time",tag = true)
+ @TimeColumn
+ @JsonSerialize(using = InstantDateSerializer.class)
+ private Instant time;
+
+ @Column(name = "freq")
+ private Double freq;
+
+ @Column(name = "freq_dev")
+ private Double freqDev;
+
+ @Column(name = "quality_flag",tag = true)
+ private String qualityFlag;
+
+ @Column(name = "rms")
+ private Double rms;
+
+ @Column(name = "rms_lvr")
+ private Double rmsLvr;
+
+ @Column(name = "vl_dev")
+ private Double vlDev;
+
+ @Column(name = "vu_dev")
+ private Double vuDev;
+
+ @Column(name = "v_1")
+ private Double v1;
+
+ @Column(name = "v_2")
+ private Double v2;
+
+ @Column(name = "v_3")
+ private Double v3;
+
+ @Column(name = "v_4")
+ private Double v4;
+
+ @Column(name = "v_5")
+ private Double v5;
+
+ @Column(name = "v_6")
+ private Double v6;
+
+ @Column(name = "v_7")
+ private Double v7;
+
+ @Column(name = "v_8")
+ private Double v8;
+
+ @Column(name = "v_9")
+ private Double v9;
+
+ @Column(name = "v_10")
+ private Double v10;
+
+ @Column(name = "v_11")
+ private Double v11;
+
+ @Column(name = "v_12")
+ private Double v12;
+
+ @Column(name = "v_13")
+ private Double v13;
+
+ @Column(name = "v_14")
+ private Double v14;
+
+ @Column(name = "v_15")
+ private Double v15;
+
+ @Column(name = "v_16")
+ private Double v16;
+
+ @Column(name = "v_17")
+ private Double v17;
+
+ @Column(name = "v_18")
+ private Double v18;
+
+ @Column(name = "v_19")
+ private Double v19;
+
+ @Column(name = "v_20")
+ private Double v20;
+
+ @Column(name = "v_21")
+ private Double v21;
+
+ @Column(name = "v_22")
+ private Double v22;
+
+ @Column(name = "v_23")
+ private Double v23;
+
+ @Column(name = "v_24")
+ private Double v24;
+
+ @Column(name = "v_25")
+ private Double v25;
+
+ @Column(name = "v_26")
+ private Double v26;
+
+ @Column(name = "v_27")
+ private Double v27;
+
+ @Column(name = "v_28")
+ private Double v28;
+
+ @Column(name = "v_29")
+ private Double v29;
+
+ @Column(name = "v_30")
+ private Double v30;
+
+ @Column(name = "v_31")
+ private Double v31;
+
+ @Column(name = "v_32")
+ private Double v32;
+
+ @Column(name = "v_33")
+ private Double v33;
+
+ @Column(name = "v_34")
+ private Double v34;
+
+ @Column(name = "v_35")
+ private Double v35;
+
+ @Column(name = "v_36")
+ private Double v36;
+
+ @Column(name = "v_37")
+ private Double v37;
+
+ @Column(name = "v_38")
+ private Double v38;
+
+ @Column(name = "v_39")
+ private Double v39;
+
+ @Column(name = "v_40")
+ private Double v40;
+
+ @Column(name = "v_41")
+ private Double v41;
+
+ @Column(name = "v_42")
+ private Double v42;
+
+ @Column(name = "v_43")
+ private Double v43;
+
+ @Column(name = "v_44")
+ private Double v44;
+
+ @Column(name = "v_45")
+ private Double v45;
+
+ @Column(name = "v_46")
+ private Double v46;
+
+ @Column(name = "v_47")
+ private Double v47;
+
+ @Column(name = "v_48")
+ private Double v48;
+
+ @Column(name = "v_49")
+ private Double v49;
+
+ @Column(name = "v_50")
+ private Double v50;
+
+ @Column(name = "v_neg")
+ private Double vNeg;
+
+ @Column(name = "v_pos")
+ private Double vPos;
+
+ @Column(name = "v_thd")
+ private Double vThd;
+
+ @Column(name = "v_unbalance")
+ private Double vUnbalance;
+
+ @Column(name = "v_zero")
+ private Double vZero;
+
+ @Column(name = "line_id",tag = true)
+ private String lineId;
+
+ @Column(name = "phasic_type",tag = true)
+ private String phasicType;
+
+ @Column(name = "value_type",tag = true)
+ private String valueType;
+
+
+ //自定义字段-总计算次数
+ @Column(name = "all_time")
+ private Integer allTime;
+
+ //自定义字段
+ @Column(name = "mean")
+ private Double mean;
+
+ //自定义字段
+ @Column(name = "count")
+ private Integer count;
+}
diff --git a/src/main/java/com/njcn/influx/service/CldStatisticsFlowService.java b/src/main/java/com/njcn/influx/service/CldStatisticsFlowService.java
new file mode 100644
index 0000000..6c17008
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/CldStatisticsFlowService.java
@@ -0,0 +1,9 @@
+package com.njcn.influx.service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+public interface CldStatisticsFlowService {
+}
diff --git a/src/main/java/com/njcn/influx/service/CommonService.java b/src/main/java/com/njcn/influx/service/CommonService.java
new file mode 100644
index 0000000..4a17065
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/CommonService.java
@@ -0,0 +1,71 @@
+package com.njcn.influx.service;
+
+import com.njcn.influx.pojo.bo.CommonQueryParam;
+import com.njcn.influx.pojo.dto.StatisticalDataDTO;
+
+import java.util.List;
+
+/**
+ * Description:
+ * Date: 2023/6/2 16:00【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+public interface CommonService {
+
+ /**
+ * 根据条件获取监测点数据
+ *
+ * @param lineId 监测点Id
+ * @param tableName 表名
+ * @param columnName 字段名
+ * @param phasic 相别
+ * @param dataType 数据类型
+ * @return
+ */
+ StatisticalDataDTO getLineRtData(String lineId, String tableName, String columnName, String phasic, String dataType, String clDId);
+
+ /**
+ * 根据条件获取监测点数据
+ *
+ */
+ List getDeviceRtData(List commonQueryParams);
+
+ /**
+
+ * @Description: getDeviceRtDataByTime
+ * @return: java.util.List
+ * @Author: clam
+ * @Date: 2023/6/13
+ */
+ List getDeviceRtDataByTime(List commonQueryParams);
+
+ /**
+ * 根据条件获取监测点时间范围内的最大最小值
+ *
+ * @param lineId 监测点Id
+ * @param tableName 表名
+ * @param columnName 字段名
+ */
+ StatisticalDataDTO getLineHistoryData(String lineId, String tableName, String columnName, String startTime, String endTime, String clDId);
+
+ /***
+ * 当表名、字段、统计方式均不确定时,代码拼接好sql
+ * @author hongawen
+ * @date 2023/7/14 15:23
+ * @param sql influx-sql语句
+ * @return StatisticalDataDTO
+ */
+ StatisticalDataDTO selectBySql(StringBuilder sql);
+ /*获取各个模块温度数据*/
+
+ /**
+ *
+ * @param lineId
+ * @param tableName apf_data
+ * @param columnName Apf_Temp_Env
+ * @return
+ */
+ List getTopTemperature(String lineId,String tableName, String columnName,String process);
+}
diff --git a/src/main/java/com/njcn/influx/service/DataFlickerService.java b/src/main/java/com/njcn/influx/service/DataFlickerService.java
new file mode 100644
index 0000000..9b18d10
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/DataFlickerService.java
@@ -0,0 +1,15 @@
+package com.njcn.influx.service;
+
+import com.njcn.influx.pojo.dto.DataFlickerDTO;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:04
+ */
+public interface DataFlickerService {
+
+ List getDataFlicker(String lineIndex, String startTime, String endTime);
+}
diff --git a/src/main/java/com/njcn/influx/service/DataFlucService.java b/src/main/java/com/njcn/influx/service/DataFlucService.java
new file mode 100644
index 0000000..fd6d641
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/DataFlucService.java
@@ -0,0 +1,9 @@
+package com.njcn.influx.service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:10
+ */
+public interface DataFlucService {
+}
diff --git a/src/main/java/com/njcn/influx/service/DataHarmPhasicIService.java b/src/main/java/com/njcn/influx/service/DataHarmPhasicIService.java
new file mode 100644
index 0000000..56a0879
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/DataHarmPhasicIService.java
@@ -0,0 +1,9 @@
+package com.njcn.influx.service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:46
+ */
+public interface DataHarmPhasicIService {
+}
diff --git a/src/main/java/com/njcn/influx/service/DataHarmPhasicVService.java b/src/main/java/com/njcn/influx/service/DataHarmPhasicVService.java
new file mode 100644
index 0000000..d4c458b
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/DataHarmPhasicVService.java
@@ -0,0 +1,9 @@
+package com.njcn.influx.service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:50
+ */
+public interface DataHarmPhasicVService {
+}
diff --git a/src/main/java/com/njcn/influx/service/DataHarmPowerPService.java b/src/main/java/com/njcn/influx/service/DataHarmPowerPService.java
new file mode 100644
index 0000000..0285d79
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/DataHarmPowerPService.java
@@ -0,0 +1,15 @@
+package com.njcn.influx.service;
+
+
+import com.njcn.influx.pojo.po.DataHarmPowerP;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:51
+ */
+public interface DataHarmPowerPService {
+ List getHarmonicPowerP(String lineIndex, String startTime, String endTime);
+}
diff --git a/src/main/java/com/njcn/influx/service/DataHarmPowerQService.java b/src/main/java/com/njcn/influx/service/DataHarmPowerQService.java
new file mode 100644
index 0000000..2f6fe2e
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/DataHarmPowerQService.java
@@ -0,0 +1,15 @@
+package com.njcn.influx.service;
+
+
+import com.njcn.influx.pojo.po.DataHarmPowerQ;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:51
+ */
+public interface DataHarmPowerQService {
+ List getHarmonicPowerQ(String lineIndex, String startTime, String endTime);
+}
diff --git a/src/main/java/com/njcn/influx/service/DataHarmRateVService.java b/src/main/java/com/njcn/influx/service/DataHarmRateVService.java
new file mode 100644
index 0000000..f0c39fd
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/DataHarmRateVService.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.service;
+
+import com.njcn.influx.pojo.po.DataHarmRateV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:01
+ */
+public interface DataHarmRateVService {
+ DataHarmRateV getMeanAllTimesData(InfluxQueryWrapper influxQueryWrapper);
+}
diff --git a/src/main/java/com/njcn/influx/service/EvtDataService.java b/src/main/java/com/njcn/influx/service/EvtDataService.java
new file mode 100644
index 0000000..75ac5b6
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/EvtDataService.java
@@ -0,0 +1,32 @@
+package com.njcn.influx.service;
+
+import com.njcn.influx.pojo.dto.EventDataSetDTO;
+import com.njcn.influx.pojo.dto.EventQueryDTO;
+import com.njcn.influx.pojo.dto.StatisticalDataDTO;
+import com.njcn.influx.pojo.po.cs.EntData;
+
+import java.util.List;
+
+/**
+ * Description:
+ * Date: 2023/6/2 16:00【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+public interface EvtDataService {
+
+
+
+ /**
+ * @Description: getEventData
+ * @Param:
+ * @return: java.util.List
+ * @Author: clam
+ * @Date: 2023/8/30
+ */
+ @Deprecated
+ List getEventData(EventQueryDTO eventQueryDTO);
+
+ EventDataSetDTO getEventDataSet(String tableName,String uuid,String columnName );
+}
diff --git a/src/main/java/com/njcn/influx/service/HaronicRatioService.java b/src/main/java/com/njcn/influx/service/HaronicRatioService.java
new file mode 100644
index 0000000..2c7c7d8
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/HaronicRatioService.java
@@ -0,0 +1,25 @@
+package com.njcn.influx.service;
+
+import com.njcn.influx.pojo.po.HarmonicRatioData;
+
+import java.util.List;
+
+public interface HaronicRatioService {
+ /**
+ * @Description: 获取指标最新数据
+ * @Param:
+ * @return: java.util.List
+ * @Author: clam
+ * @Date: 2023/5/23
+ */
+ List getFirstHaronicRatio(List lineIds,String columnName);
+ /**
+ * @Description: 获取指标时间断内数据
+ * @Param:
+ * @return: java.util.List
+ * @Author: clam
+ * @Date: 2023/5/23
+ */
+ List getHaronicRatio(List lineIds, String columnName, String startTime, String endTime);
+
+}
diff --git a/src/main/java/com/njcn/influx/service/IDataIService.java b/src/main/java/com/njcn/influx/service/IDataIService.java
new file mode 100644
index 0000000..d908f12
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/IDataIService.java
@@ -0,0 +1,24 @@
+package com.njcn.influx.service;
+
+import com.njcn.influx.pojo.po.DataI;
+import com.njcn.influx.query.InfluxQueryWrapper;
+
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:04
+ */
+public interface IDataIService {
+
+ DataI getMeanAllTimesData(InfluxQueryWrapper influxQueryWrapper);
+ /**
+ * @Description: getWeekDataI 承载能力评估获取一周数据
+ * @Param:
+ * @return: java.util.List
+ * @Author: clam
+ * @Date: 2024/2/27
+ */
+ List getWeekDataI(String lineIndex, String startTime, String endTime);
+}
diff --git a/src/main/java/com/njcn/influx/service/IDataVService.java b/src/main/java/com/njcn/influx/service/IDataVService.java
new file mode 100644
index 0000000..0876dc3
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/IDataVService.java
@@ -0,0 +1,12 @@
+package com.njcn.influx.service;
+
+import com.njcn.influx.pojo.po.DataV;
+
+import java.util.List;
+
+public interface IDataVService {
+
+ List getDataV(String lineIndex, String startTime, String endTime);
+ List getHarmonicDataV(String lineIndex, String startTime, String endTime);
+
+}
diff --git a/src/main/java/com/njcn/influx/service/PowerQualityService.java b/src/main/java/com/njcn/influx/service/PowerQualityService.java
new file mode 100644
index 0000000..3022c1d
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/PowerQualityService.java
@@ -0,0 +1,25 @@
+package com.njcn.influx.service;
+
+import com.njcn.influx.pojo.po.PowerQualityData;
+
+import java.util.List;
+
+public interface PowerQualityService {
+ /**
+ * @Description: 获取指标最新数据
+ * @Param:
+ * @return: java.util.List
+ * @Author: clam
+ * @Date: 2023/5/23
+ */
+ List getFirstPowerQuality(List lineIds,String columnName);
+ /**
+ * @Description: 获取指标时间断内数据
+ * @Param:
+ * @return: java.util.List
+ * @Author: clam
+ * @Date: 2023/5/23
+ */
+ List getPowerQuality(List lineIds,String columnName, String startTime, String endTime);
+
+}
diff --git a/src/main/java/com/njcn/influx/service/PqsCommunicateService.java b/src/main/java/com/njcn/influx/service/PqsCommunicateService.java
new file mode 100644
index 0000000..4eab844
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/PqsCommunicateService.java
@@ -0,0 +1,9 @@
+package com.njcn.influx.service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年08月09日 09:28
+ */
+public interface PqsCommunicateService {
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/CldStatisticsFlowServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/CldStatisticsFlowServiceImpl.java
new file mode 100644
index 0000000..6ee0602
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/CldStatisticsFlowServiceImpl.java
@@ -0,0 +1,14 @@
+package com.njcn.influx.service.impl;
+
+import com.njcn.influx.service.CldStatisticsFlowService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:00
+ */
+@Service
+public class CldStatisticsFlowServiceImpl implements CldStatisticsFlowService {
+
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/CommonServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/CommonServiceImpl.java
new file mode 100644
index 0000000..a2bb794
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/CommonServiceImpl.java
@@ -0,0 +1,114 @@
+package com.njcn.influx.service.impl;
+
+import com.njcn.influx.imapper.CommonMapper;
+import com.njcn.influx.pojo.bo.CommonQueryParam;
+import com.njcn.influx.pojo.constant.InfluxDBTableConstant;
+import com.njcn.influx.pojo.dto.StatisticalDataDTO;
+import com.njcn.influx.query.InfluxQueryWrapper;
+import com.njcn.influx.service.CommonService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Description:
+ * Date: 2023/6/2 16:04【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+@Service
+@RequiredArgsConstructor
+public class CommonServiceImpl implements CommonService {
+
+ private final CommonMapper commonMapper;
+
+ @Override
+ public StatisticalDataDTO getLineRtData(String lineId, String tableName, String columnName, String phasic, String dataType, String clDid) {
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(tableName,StatisticalDataDTO.class);
+ influxQueryWrapper.select(StatisticalDataDTO::getLineId)
+ .select(StatisticalDataDTO::getPhaseType)
+ .select(StatisticalDataDTO::getValueType)
+ .last(columnName)
+ .eq(InfluxDBTableConstant.LINE_ID,lineId)
+ .eq(InfluxDBTableConstant.PHASIC_TYPE,phasic)
+ .eq(InfluxDBTableConstant.VALUE_TYPE,dataType)
+ .eq(InfluxDBTableConstant.CL_DID,clDid);
+ return commonMapper.getLineRtData(influxQueryWrapper);
+ }
+
+ @Override
+ public List getDeviceRtData(List commonQueryParams) {
+ List resultList = new ArrayList<>();
+ for (CommonQueryParam commonQueryParam: commonQueryParams) {
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(commonQueryParam.getTableName(),StatisticalDataDTO.class);
+ influxQueryWrapper.select(StatisticalDataDTO::getLineId)
+ .select(StatisticalDataDTO::getPhaseType)
+ .select(StatisticalDataDTO::getValueType)
+ .last(commonQueryParam.getColumnName(),InfluxDBTableConstant.VALUE)
+ .eq(InfluxDBTableConstant.LINE_ID,commonQueryParam.getLineId())
+ .eq(InfluxDBTableConstant.PROCESS,commonQueryParam.getProcess())
+ .eq(InfluxDBTableConstant.PHASIC_TYPE,commonQueryParam.getPhasic())
+ .eq(InfluxDBTableConstant.VALUE_TYPE,commonQueryParam.getDataType()).eq(InfluxDBTableConstant.CL_DID,commonQueryParam.getClDid());
+ List deviceRtData = commonMapper.getDeviceRtData(influxQueryWrapper);
+ resultList.addAll(deviceRtData);
+ }
+
+ return resultList;
+ }
+
+ @Override
+ public List getDeviceRtDataByTime(List commonQueryParams) {
+ List resultList = new ArrayList<>();
+ for (CommonQueryParam commonQueryParam: commonQueryParams) {
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(commonQueryParam.getTableName(), StatisticalDataDTO.class);
+ influxQueryWrapper.select(StatisticalDataDTO::getLineId)
+ .select(StatisticalDataDTO::getPhaseType)
+ .select(StatisticalDataDTO::getValueType)
+ .select(commonQueryParam.getColumnName(), InfluxDBTableConstant.VALUE)
+ .eq(InfluxDBTableConstant.LINE_ID, commonQueryParam.getLineId())
+ .eq(InfluxDBTableConstant.PHASIC_TYPE, commonQueryParam.getPhasic())
+ .eq(InfluxDBTableConstant.PROCESS, commonQueryParam.getProcess())
+ .between(InfluxDBTableConstant.TIME, commonQueryParam.getStartTime(), commonQueryParam.getEndTime())
+ .eq(InfluxDBTableConstant.VALUE_TYPE, commonQueryParam.getDataType()).eq(InfluxDBTableConstant.CL_DID, commonQueryParam.getClDid());
+ List deviceRtData = commonMapper.getDeviceRtDataByTime(influxQueryWrapper);
+ resultList.addAll(deviceRtData);
+ }
+
+ return resultList;
+ }
+
+ @Override
+ public StatisticalDataDTO getLineHistoryData(String lineId, String tableName, String columnName, String startTime, String endTime, String clDid) {
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(tableName,StatisticalDataDTO.class);
+ influxQueryWrapper.max(columnName,InfluxDBTableConstant.MAX_VALUE)
+ .min(columnName,InfluxDBTableConstant.MIN_VALUE)
+ .mean(columnName,InfluxDBTableConstant.AVG_VALUE)
+ .eq(InfluxDBTableConstant.LINE_ID,lineId)
+ .eq(InfluxDBTableConstant.CL_DID,clDid)
+ .between(InfluxDBTableConstant.TIME, startTime, endTime);
+ return commonMapper.getLineHistoryData(influxQueryWrapper);
+ }
+
+ @Override
+ public StatisticalDataDTO selectBySql(StringBuilder sql) {
+ return commonMapper.selectBySql(sql);
+ }
+
+ @Override
+ public List getTopTemperature(String lineId, String tableName, String columnName,String process) {
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(tableName,StatisticalDataDTO.class);
+ influxQueryWrapper.select(StatisticalDataDTO::getLineId)
+ .select(StatisticalDataDTO::getClDid)
+ .last(columnName,InfluxDBTableConstant.VALUE)
+ .eq(InfluxDBTableConstant.LINE_ID,lineId)
+ .eq(InfluxDBTableConstant.PROCESS,process)
+ .groupBy(InfluxDBTableConstant.CL_DID);
+ return commonMapper.getTopTemperature(influxQueryWrapper);
+ }
+
+
+
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/DataFlickerServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/DataFlickerServiceImpl.java
new file mode 100644
index 0000000..148f49c
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/DataFlickerServiceImpl.java
@@ -0,0 +1,95 @@
+package com.njcn.influx.service.impl;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.njcn.influx.imapper.DataFlickerMapper;
+import com.njcn.influx.pojo.dto.DataFlickerDTO;
+import com.njcn.influx.pojo.po.DataFlicker;
+import com.njcn.influx.query.InfluxQueryWrapper;
+import com.njcn.influx.service.DataFlickerService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:05
+ */
+@Service
+public class DataFlickerServiceImpl implements DataFlickerService {
+
+ @Resource
+ private DataFlickerMapper dataFlickerMapper;
+
+
+ @Override
+ public List getDataFlicker(String lineIndex, String startTime, String endTime) {
+ //最小值
+ List result1 ;
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataFlicker.class, DataFlickerDTO.class);
+ influxQueryWrapper.eq(DataFlicker::getLineId, lineIndex)
+ .min(DataFlicker::getFluc)
+ .min(DataFlicker::getPlt)
+ .min(DataFlicker::getPst)
+ .groupBy(DataFlicker::getLineId,DataFlicker::getPhaseType,DataFlicker::getQualityFlag)
+ .between(DataFlicker::getTime, startTime, endTime);
+ result1 = dataFlickerMapper.getStatisticsByWraper(influxQueryWrapper);
+ result1.forEach(item -> {
+ item.setValueType("MIN");
+ });
+ //最大值
+ List result2 ;
+ influxQueryWrapper.initSql();
+ influxQueryWrapper.eq(DataFlicker::getLineId, lineIndex)
+ .max(DataFlicker::getFluc)
+ .max(DataFlicker::getPlt)
+ .max(DataFlicker::getPst)
+ .groupBy(DataFlicker::getLineId,DataFlicker::getPhaseType,DataFlicker::getQualityFlag)
+ .between(DataFlicker::getTime, startTime, endTime);
+ result2 = dataFlickerMapper.getStatisticsByWraper(influxQueryWrapper);
+ result2.forEach(item -> {
+ item.setValueType("MAX");
+ });
+ //平均值
+ List result3 ;
+ influxQueryWrapper.initSql();
+ influxQueryWrapper.eq(DataFlicker::getLineId, lineIndex)
+ .mean(DataFlicker::getFluc)
+ .mean(DataFlicker::getPlt)
+ .mean(DataFlicker::getPst)
+ .groupBy(DataFlicker::getLineId,DataFlicker::getPhaseType,DataFlicker::getQualityFlag)
+ .between(DataFlicker::getTime, startTime, endTime);
+ result3 = dataFlickerMapper.getStatisticsByWraper(influxQueryWrapper);
+ result3.forEach(item -> {
+ item.setValueType("AVG");
+ });
+ List result4 ;
+ influxQueryWrapper.initSql();
+ influxQueryWrapper.eq(DataFlicker::getLineId, lineIndex)
+ .percentile(DataFlicker::getFluc, 95)
+ .percentile(DataFlicker::getPlt, 95)
+ .percentile(DataFlicker::getPst, 95)
+ .groupBy(DataFlicker::getLineId,DataFlicker::getPhaseType,DataFlicker::getQualityFlag)
+ .between(DataFlicker::getTime, startTime, endTime);
+ //CP95值
+ result4 = dataFlickerMapper.getStatisticsByWraper(influxQueryWrapper);
+ result4.forEach(item -> {
+ item.setValueType("CP95");
+ });
+ List result = new ArrayList<>();
+ result.addAll(result1);
+ result.addAll(result2);
+ result.addAll(result3);
+ result.addAll(result4);
+ ObjectMapper objectMapper = new ObjectMapper();
+ try {
+ System.out.println(objectMapper.writeValueAsString(result));
+ } catch (JsonProcessingException e) {
+ throw new RuntimeException(e);
+ }
+ return result;
+ }
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/DataFlucServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/DataFlucServiceImpl.java
new file mode 100644
index 0000000..7f793de
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/DataFlucServiceImpl.java
@@ -0,0 +1,12 @@
+package com.njcn.influx.service.impl;
+
+import org.springframework.stereotype.Service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:10
+ */
+@Service
+public class DataFlucServiceImpl {
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/DataHarmPhasicIServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/DataHarmPhasicIServiceImpl.java
new file mode 100644
index 0000000..f9edcce
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/DataHarmPhasicIServiceImpl.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.service.impl;
+
+import com.njcn.influx.service.DataHarmPhasicIService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:46
+ */
+@Service
+public class DataHarmPhasicIServiceImpl implements DataHarmPhasicIService {
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/DataHarmPhasicVServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/DataHarmPhasicVServiceImpl.java
new file mode 100644
index 0000000..7300a2b
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/DataHarmPhasicVServiceImpl.java
@@ -0,0 +1,13 @@
+package com.njcn.influx.service.impl;
+
+import com.njcn.influx.service.DataHarmPhasicVService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:50
+ */
+@Service
+public class DataHarmPhasicVServiceImpl implements DataHarmPhasicVService {
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/DataHarmPowerPServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/DataHarmPowerPServiceImpl.java
new file mode 100644
index 0000000..d0f9b74
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/DataHarmPowerPServiceImpl.java
@@ -0,0 +1,32 @@
+package com.njcn.influx.service.impl;
+
+import com.njcn.influx.imapper.DataHarmPowerPMapper;
+import com.njcn.influx.pojo.po.DataHarmPowerP;
+import com.njcn.influx.query.InfluxQueryWrapper;
+import com.njcn.influx.service.DataHarmPowerPService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年05月05日 09:51
+ */
+@Service
+public class DataHarmPowerPServiceImpl implements DataHarmPowerPService {
+ @Resource
+ private DataHarmPowerPMapper dataHarmPowerPMapper;
+ @Override
+ public List getHarmonicPowerP(String lineIndex, String startTime, String endTime) {
+ List result1 ;
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmPowerP.class);
+ influxQueryWrapper.eq(DataHarmPowerP::getLineId, lineIndex)
+ .eq(DataHarmPowerP::getValueType, "AVG")
+ .eq(DataHarmPowerP::getPhaseType, "T")
+ .between(DataHarmPowerP::getTime, startTime, endTime);
+ result1 = dataHarmPowerPMapper.getStatisticsByWraper(influxQueryWrapper);
+ return result1;
+ }
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/DataHarmPowerQServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/DataHarmPowerQServiceImpl.java
new file mode 100644
index 0000000..d98f09f
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/DataHarmPowerQServiceImpl.java
@@ -0,0 +1,35 @@
+package com.njcn.influx.service.impl;
+
+import com.njcn.influx.imapper.DataHarmPowerQMapper;
+import com.njcn.influx.pojo.po.DataHarmPowerP;
+import com.njcn.influx.pojo.po.DataHarmPowerQ;
+import com.njcn.influx.query.InfluxQueryWrapper;
+import com.njcn.influx.service.DataHarmPowerQService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * Description:
+ * Date: 2024/2/27 14:50【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+@Service
+public class DataHarmPowerQServiceImpl implements DataHarmPowerQService {
+ @Resource
+ private DataHarmPowerQMapper dataHarmPowerQMapper;
+ @Override
+ public List getHarmonicPowerQ(String lineIndex, String startTime, String endTime) {
+ List result1 ;
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmPowerP.class);
+ influxQueryWrapper.eq(DataHarmPowerQ::getLineId, lineIndex)
+ .eq(DataHarmPowerQ::getValueType, "AVG")
+ .eq(DataHarmPowerQ::getPhaseType, "T")
+ .between(DataHarmPowerQ::getTime, startTime, endTime);
+ result1 = dataHarmPowerQMapper.getStatisticsByWraper(influxQueryWrapper);
+ return result1;
+ }
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/DataHarmRateVServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/DataHarmRateVServiceImpl.java
new file mode 100644
index 0000000..77757f3
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/DataHarmRateVServiceImpl.java
@@ -0,0 +1,26 @@
+package com.njcn.influx.service.impl;
+
+import com.njcn.influx.imapper.DataHarmRateVMapper;
+import com.njcn.influx.pojo.po.DataHarmRateV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+import com.njcn.influx.service.DataHarmRateVService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author hongawen
+ * @version 1.0.0
+ * @date 2023年07月17日 11:02
+ */
+@Service
+@RequiredArgsConstructor
+public class DataHarmRateVServiceImpl implements DataHarmRateVService {
+
+ private final DataHarmRateVMapper dataHarmRateVMapper;
+
+
+ @Override
+ public DataHarmRateV getMeanAllTimesData(InfluxQueryWrapper influxQueryWrapper) {
+ return dataHarmRateVMapper.getMeanAllTimesData(influxQueryWrapper);
+ }
+}
diff --git a/src/main/java/com/njcn/influx/service/impl/DataVServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/DataVServiceImpl.java
new file mode 100644
index 0000000..35ec33f
--- /dev/null
+++ b/src/main/java/com/njcn/influx/service/impl/DataVServiceImpl.java
@@ -0,0 +1,80 @@
+package com.njcn.influx.service.impl;
+
+import com.njcn.influx.imapper.DataVMapper;
+import com.njcn.influx.pojo.po.DataV;
+import com.njcn.influx.query.InfluxQueryWrapper;
+import com.njcn.influx.service.IDataVService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 类的介绍:
+ *
+ * @author xuyang
+ * @version 1.0.0
+ * @createTime 2023/5/5 14:38
+ */
+@Service
+public class DataVServiceImpl implements IDataVService {
+
+ @Resource
+ private DataVMapper dataVMapper;
+
+ @Override
+ public List getDataV(String lineIndex, String startTime, String endTime) {
+ //最小值
+ List result1 ;
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class);
+ influxQueryWrapper.minSamePrefixAndSuffix("v_","", this.harmonicTimesList(1,50,1));
+ influxQueryWrapper.eq(DataV::getLineId, lineIndex)
+ .eq(DataV::getValueType, "MIN")
+ .min(DataV::getFreq)
+ .min(DataV::getFreqDev)
+ .min(DataV::getRms)
+ .min(DataV::getRmsLvr)
+ .min(DataV::getVNeg)
+ .min(DataV::getVPos)
+ .min(DataV::getVThd)
+ .min(DataV::getVUnbalance)
+ .min(DataV::getVZero)
+ .min(DataV::getVlDev)
+ .min(DataV::getVuDev)
+ .groupBy(DataV::getLineId,DataV::getPhasicType,DataV::getQualityFlag,DataV::getValueType)
+ .between(DataV::getTime, startTime, endTime);
+ result1 = dataVMapper.getStatisticsByWraper(influxQueryWrapper);
+ System.out.println("result1==:" + result1);
+ return result1;
+ }
+
+ @Override
+ public List getHarmonicDataV(String lineIndex, String startTime, String endTime) {
+ List result1 ;
+ InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class);
+ influxQueryWrapper.eq(DataV::getLineId, lineIndex)
+ .eq(DataV::getValueType, "CP95")
+ .ne(DataV::getPhasicType, "T")
+ .between(DataV::getTime, startTime, endTime);;
+ result1 = dataVMapper.getStatisticsByWraper(influxQueryWrapper);
+ return result1;
+ }
+
+
+ /***
+ * 自定义需要查询的谐波次数
+ * @author xuyang
+ * @param start 起始次数@Min(value = 1) @Max(value = 100)
+ * @param end 结束次数 @Min(value = 1) @Max(value = 100)
+ * @param interval 间隔
+ * @return List