influxdb数据迁移啊程序

This commit is contained in:
wr
2025-04-23 20:37:06 +08:00
parent e570080bfc
commit 5bec8f7ecc
132 changed files with 7009 additions and 17 deletions

View File

@@ -0,0 +1,79 @@
package com.njcn.api;
import com.njcn.api.fallback.MigrationInsertFeignClientFallbackFactory;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.OperateType;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.po.influx.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* @author denghuajun
* @version 1.0.0
* @date 2022年01月05日 15:11
*/
@FeignClient(value = "migration-influxdb-insert-boot", path = "/migration", fallbackFactory = MigrationInsertFeignClientFallbackFactory.class, contextId = "migration")
public interface MigrationInsertFeignClient {
@PostMapping("/insertDataFlicker")
HttpResult<String> insertDataFlicker(@RequestBody List<DataFlicker> list);
@PostMapping("/insertDataFluc")
HttpResult<String> insertDataFluc(@RequestBody List<DataFluc> list);
@PostMapping("/insertDataHarmphasicI")
HttpResult<String> insertDataHarmphasicI(@RequestBody List<DataHarmphasicI> list);
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.ADD)
@PostMapping("/insertDataHarmphasicV")
HttpResult<String> insertDataHarmphasicV(@RequestBody List<DataHarmphasicV> list);
@PostMapping("/insertDataHarmpowerP")
HttpResult<String> insertDataHarmpowerP(@RequestBody List<DataHarmpowerP> list);
@PostMapping("/insertDataHarmpowerQ")
HttpResult<String> insertDataHarmpowerQ(@RequestBody List<DataHarmpowerQ> list);
@PostMapping("/insertDataHarmpowerS")
HttpResult<String> insertDataHarmpowerS(@RequestBody List<DataHarmpowerS> list);
@PostMapping("/insertDataHarmrateI")
HttpResult<String> insertDataHarmrateI(@RequestBody List<DataHarmrateI> list);
@PostMapping("/insertDataHarmrateV")
HttpResult<String> insertDataHarmrateV(@RequestBody List<DataHarmrateV> list);
@PostMapping("/insertDataI")
HttpResult<String> insertDataI(@RequestBody List<DataI> list);
@PostMapping("/insertDataInharmI")
HttpResult<String> insertDataInharmI(@RequestBody List<DataInharmI> list);
@PostMapping("/insertDataInharmV")
HttpResult<String> insertDataInharmV(@RequestBody List<DataInharmV> list);
@PostMapping("/insertDataPlt")
HttpResult<String> insertDataPlt(@RequestBody List<DataPlt> list);
@PostMapping("/insertDataV")
HttpResult<String> insertDataV(@RequestBody List<DataV> list);
@PostMapping("/insertPqsCommunicate")
HttpResult<String> insertPqsCommunicate(@RequestBody List<PqsCommunicate> list);
}

View File

@@ -0,0 +1,133 @@
package com.njcn.api.fallback;
import com.njcn.api.MigrationInsertFeignClient;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.dataProcess.util.DataProcessingEnumUtil;
import com.njcn.po.influx.*;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @Description:
* @Author: wr
* @Date: 2025/3/19 10:19
*/
@Slf4j
@Component
public class MigrationInsertFeignClientFallbackFactory implements FallbackFactory<MigrationInsertFeignClient> {
/**
* 输出远程请求接口异常日志
* @param cause RPC请求异常
*/
@Override
public MigrationInsertFeignClient create(Throwable cause) {
//判断抛出异常是否为解码器抛出的业务异常
Enum<?> exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK;
if(cause.getCause() instanceof BusinessException){
BusinessException businessException = (BusinessException) cause.getCause();
exceptionEnum = DataProcessingEnumUtil.getExceptionEnum(businessException.getResult());
}
Enum<?> finalExceptionEnum = exceptionEnum;
return new MigrationInsertFeignClient() {
@Override
public HttpResult<String> insertDataFlicker(List<DataFlicker> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataFlicker批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataFluc(List<DataFluc> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataFluc批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataHarmphasicI(List<DataHarmphasicI> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataHarmphasicI批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataHarmphasicV(List<DataHarmphasicV> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataHarmphasicV批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataHarmpowerP(List<DataHarmpowerP> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataHarmpowerP批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataHarmpowerQ(List<DataHarmpowerQ> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataHarmpowerQ批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataHarmpowerS(List<DataHarmpowerS> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataHarmpowerS批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataHarmrateI(List<DataHarmrateI> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataHarmrateI批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataHarmrateV(List<DataHarmrateV> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataHarmrateV批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataI(List<DataI> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataI批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataInharmI(List<DataInharmI> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataInharmI批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataInharmV(List<DataInharmV> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataInharmV批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataPlt(List<DataPlt> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataPlt批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertDataV(List<DataV> list) {
log.error("{}异常,降级处理,异常为:{}","insertDataV批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
@Override
public HttpResult<String> insertPqsCommunicate(List<PqsCommunicate> list) {
log.error("{}异常,降级处理,异常为:{}","insertPqsCommunicate批量插入数据",cause.toString());
throw new BusinessException(finalExceptionEnum);
}
};
}
}

View File

@@ -0,0 +1,19 @@
package com.njcn.param;
import lombok.Data;
import java.io.Serializable;
/**
* @author hongawen
* @version 1.0
* @data 2024/11/7 10:08
*/
@Data
public class BaseParam implements Serializable {
private String startTime;
private String endTime;
}

View File

@@ -0,0 +1,23 @@
package com.njcn.param;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @author xy
*/
@Data
public class DataCleanParam implements Serializable {
@ApiModelProperty("系统类型")
private String systemType;
@ApiModelProperty("数据来源")
private String dataSource;
@ApiModelProperty("表名")
private String tableName;
}

View File

@@ -0,0 +1,64 @@
package com.njcn.param;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
/**
* 监测点有效数值统计数据评估入参
*
* @author hongawen
* @version 1.0
* @data 2024/11/6 20:36
*/
@Data
public class LineCountEvaluateParam extends BaseParam implements Serializable {
/**
* 监测点编号集合
*/
private List<String> lineId;
/**
* 表名
*/
private String tableName;
/**
* 相别集合
*/
private List<String> phasicType;
/**
* 值类型
*/
private List<String> valueType;
/**
* 异常数据时间集合
* Map<String,List<String>> key:监测点id value:异常时间集合
*/
private Map<String, List<String>> abnormalTime;
/**
* 列名
*/
private String columnName;
/**
* 最小值 >=
*/
private String ge;
/**
* 最大值 <=
*/
private String lt;
/**
* 是否时手动补招
*/
private Boolean isManual;
}

View File

@@ -0,0 +1,50 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "fluc")
private Double fluc=0.00;
@Column(name = "plt")
private Double plt=0.00;
@Column(name = "pst")
private Double pst=0.00;
@Column(name = "quality_flag",tag = true)
private String qualityFlag ="0";
}

View File

@@ -0,0 +1,48 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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_fluc")
public class DataFluc {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "fluc")
private Double fluc=0.00;
@Column(name = "fluccf")
private Double fluccf=0.00;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
}

View File

@@ -0,0 +1,195 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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_harmphasic_i")
public class DataHarmphasicI {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,196 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,203 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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_harmpower_p")
public class DataHarmpowerP {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,199 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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_harmpower_q")
public class DataHarmpowerQ {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,198 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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_harmpower_s")
public class DataHarmpowerS {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,193 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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_harmrate_i")
public class DataHarmrateI {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,193 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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_harmrate_v")
public class DataHarmrateV {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,213 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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 {
@Column(name = "time",tag =true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
@TimeColumn
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,194 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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_i")
public class DataInharmI {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,195 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@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;
}

View File

@@ -0,0 +1,47 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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 {
@Column(name = "time",tag =true)
@TimeColumn
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "line_id",tag = true)
private String lineId;
@Column(name = "phasic_type",tag = true)
private String phasicType;
@Column(name = "quality_flag",tag = true)
private String qualityFlag="0";
@Column(name = "plt")
private Double plt;
}

View File

@@ -0,0 +1,235 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
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 org.springframework.format.annotation.DateTimeFormat;
import java.time.Instant;
import java.time.LocalDateTime;
/**
* 类的介绍:
*
* @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)
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonIgnore
private Instant time;
private String timeId;
@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 = "quality_flag", tag = true)
private String qualityFlag="0";
//是否是异常指标数据0否1是
@Column(name = "abnormal_flag")
private Integer abnormalFlag;
@Column(name = "freq")
private Double freq;
@Column(name = "freq_dev")
private Double freqDev;
@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_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 = "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;
}

View File

@@ -0,0 +1,45 @@
package com.njcn.po.influx;
import com.fasterxml.jackson.annotation.JsonIgnore;
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;
import java.time.ZoneId;
/**
* 类的介绍:
*
* @author xuyang
* @version 1.0.0
*/
@Data
@Measurement(name = "pqs_communicate")
public class PqsCommunicate {
@TimeColumn
@Column(name = "time",tag = true)
@JsonSerialize(using = InstantDateSerializer.class)
@JsonIgnore
private Instant time;
private String timeId;
@Column(name = "dev_id",tag = true)
private String devId;
@Column(name = "description")
private String description;
@Column(name = "type")
private Integer type;
}

View File

@@ -0,0 +1,124 @@
package com.njcn.po.mysql;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 暂降明细实体类
*
* @author yzh
* @since 2022-10-12 18:34:55
*/
@Data
@TableName("r_mp_event_detail")
@ApiModel(value="RmpEventDetail对象")
public class RmpEventDetail implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "暂时事件ID")
@TableId(value = "event_id", type = IdType.ASSIGN_ID)
private String eventId;
@ApiModelProperty(value = "监测点ID(复制)")
@TableField("measurement_point_id")
private String measurementPointId;
@ApiModelProperty(value = "统计类型")
private String eventType;
@ApiModelProperty(value = "暂降原因Event_Reason")
@TableField("advance_reason")
private String advanceReason;
@ApiModelProperty(value = "暂降类型Event_Type")
@TableField("advance_type")
private String advanceType;
@ApiModelProperty(value = "事件关联分析表Guid")
private String eventassIndex;
@ApiModelProperty(value = "dq计算持续时间 ")
private Double dqTime;
@ApiModelProperty(value = "特征值计算更新时间外键PQS_Relevance的Time字段")
private LocalDateTime dealTime;
@ApiModelProperty(value = "默认事件个数为0")
private Integer num;
@ApiModelProperty(value = "波形文件是否从装置招到本地(0未招1已招)默认值为0")
private Integer fileFlag;
@ApiModelProperty(value = "特征值计算标志0未处理1已处理; 2已处理无结果;3计算失败默认值为0")
private Integer dealFlag;
@ApiModelProperty(value = "处理结果第一条事件发生时间(读comtra文件获取)")
private LocalDateTime firstTime;
@ApiModelProperty(value = "处理结果第一条事件暂降类型字典表PQS_Dicdata")
private String firstType;
@ApiModelProperty(value = "处理结果第一条事件发生时间毫秒(读comtra文件获取)")
private Double firstMs;
@ApiModelProperty(value = "暂降能量")
private Double energy;
@ApiModelProperty(value = "暂降严重度")
private Double severity;
@ApiModelProperty(value = "暂降源与监测位置关系 Upper:上游Lower :下游Unknown :未知;为空则是未计算")
private String sagsource;
@ApiModelProperty(value = "开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS")
private LocalDateTime startTime;
@ApiModelProperty(value = "格式化开始时间")
@TableField(exist = false)
private String formatTime;
@ApiModelProperty(value = "持续时间,单位秒")
private Double duration;
@ApiModelProperty(value = "特征幅值")
private Double featureAmplitude;
@ApiModelProperty(value = "相别")
private String phase;
@ApiModelProperty(value = "事件描述")
private String eventDescribe;
@ApiModelProperty(value = "波形路径")
private String wavePath;
@ApiModelProperty(value = "暂降核实原因")
@TableField("verify_reason")
private String verifyReason;
@ApiModelProperty(value = "暂降核实原因详情")
@TableField("verify_reason_detail")
private String verifyReasonDetail;
private Double transientValue;
private LocalDateTime createTime;
@ApiModelProperty(value = "用于计算数量")
@TableField(exist = false)
private Integer count;
}

View File

@@ -5,12 +5,12 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>com.njcn.platform</groupId> <groupId>com.njcn.platform</groupId>
<artifactId>migration-influxDB</artifactId> <artifactId>migration-influxdb</artifactId>
<version>1.0.0</version> <version>1.0.0</version>
</parent> </parent>
<artifactId>migration-influxDB-boot</artifactId> <artifactId>migration-influxdb-insert-boot</artifactId>
<name>migration-influxDB-boot</name>
<properties> <properties>
<maven.compiler.source>8</maven.compiler.source> <maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target> <maven.compiler.target>8</maven.compiler.target>
@@ -33,10 +33,10 @@
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.mybatis</groupId> <groupId>com.njcn.platform</groupId>
<artifactId>mybatis-spring</artifactId> <artifactId>migration-influxdb-api</artifactId>
<version>2.0.5</version> <version>1.0.0</version>
<scope>compile</scope>
</dependency> </dependency>
</dependencies> </dependencies>
</project> </project>

View File

@@ -0,0 +1,25 @@
package com.njcn.insert;
import lombok.extern.slf4j.Slf4j;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.DependsOn;
/**
* @author xy
*/
@Slf4j
@DependsOn("proxyMapperRegister")
@MapperScan("com.njcn.**.mapper")
@EnableFeignClients(basePackages = "com.njcn")
@SpringBootApplication(scanBasePackages = "com.njcn")
public class MigrationInsertBootApplication {
public static void main(String[] args) {
SpringApplication.run(MigrationInsertBootApplication.class, args);
}
}

View File

@@ -0,0 +1,202 @@
package com.njcn.insert.controller;
import cn.hutool.core.collection.CollUtil;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.OperateType;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.insert.service.*;
import com.njcn.po.influx.*;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author hongawen
* @version 1.0
* @data 2024/11/6 19:48
*/
@Controller
@RestController
@RequestMapping("/migration")
@RequiredArgsConstructor
public class MigrationInsertController extends BaseController {
private final InsertIDataFlicker dataFlicker;
private final InsertIDataFluc dataFluc;
private final InsertIDataHarmphasicI dataHarmphasicI;
private final InsertIDataHarmphasicV dataHarmphasicV;
private final InsertIDataHarmpowerP dataHarmpowerP;
private final InsertIDataHarmpowerQ dataHarmpowerQ;
private final InsertIDataHarmpowerS dataHarmpowerS;
private final InsertIDataHarmRateI dataHarmRateI;
private final InsertIDataHarmRateV dataHarmRateV;
private final InsertIDataI dataI;
private final InsertIDataInharmI dataInharmI;
private final InsertIDataInharmV dataInharmV;
private final InsertIDataPlt dataPlt;
private final InsertIDataV dataV;
private final InsertIPqsCommunicate pqsCommunicate;
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataFlicker")
@ApiOperation("数据插入")
public HttpResult<String> insertDataFlicker(@RequestBody List<DataFlicker> list) {
String methodDescribe = getMethodDescribe("insertDataFlicker");
if(CollUtil.isNotEmpty(list)){
dataFlicker.insertDataFlicker(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataFluc")
@ApiOperation("数据插入")
public HttpResult<String> insertDataFluc(@RequestBody List<DataFluc> list) {
String methodDescribe = getMethodDescribe("insertDataFluc");
if(CollUtil.isNotEmpty(list)){
dataFluc.insertDataFluc(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataHarmphasicI")
@ApiOperation("数据插入")
public HttpResult<String> insertDataHarmphasicI(@RequestBody List<DataHarmphasicI> list) {
String methodDescribe = getMethodDescribe("insertDataHarmphasicI");
if(CollUtil.isNotEmpty(list)){
dataHarmphasicI.insertDataHarmphasicI(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataHarmphasicV")
@ApiOperation("数据插入")
public HttpResult<String> insertDataHarmphasicV(@RequestBody List<DataHarmphasicV> list) {
String methodDescribe = getMethodDescribe("insertDataHarmphasicV");
if(CollUtil.isNotEmpty(list)){
dataHarmphasicV.insertDataHarmphasicV(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataHarmpowerP")
@ApiOperation("数据插入")
public HttpResult<String> insertDataHarmpowerP(@RequestBody List<DataHarmpowerP> list) {
String methodDescribe = getMethodDescribe("insertDataHarmpowerP");
if(CollUtil.isNotEmpty(list)){
dataHarmpowerP.insertDataHarmpowerP(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataHarmpowerQ")
@ApiOperation("数据插入")
public HttpResult<String> insertDataHarmpowerQ(@RequestBody List<DataHarmpowerQ> list) {
String methodDescribe = getMethodDescribe("insertDataHarmpowerQ");
if(CollUtil.isNotEmpty(list)){
dataHarmpowerQ.insertDataHarmpowerQ(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataHarmpowerS")
@ApiOperation("数据插入")
public HttpResult<String> insertDataHarmpowerS(@RequestBody List<DataHarmpowerS> list) {
String methodDescribe = getMethodDescribe("insertDataHarmpowerS");
if(CollUtil.isNotEmpty(list)){
dataHarmpowerS.insertDataHarmpowerS(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataHarmrateI")
@ApiOperation("数据插入")
public HttpResult<String> insertDataHarmrateI(@RequestBody List<DataHarmrateI> list) {
String methodDescribe = getMethodDescribe("insertDataHarmrateI");
if(CollUtil.isNotEmpty(list)){
dataHarmRateI.insertDataHarmrateI(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataHarmrateV")
@ApiOperation("数据插入")
public HttpResult<String> insertDataHarmrateV(@RequestBody List<DataHarmrateV> list) {
String methodDescribe = getMethodDescribe("insertDataHarmrateV");
if(CollUtil.isNotEmpty(list)){
dataHarmRateV.insertDataHarmrateV(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataI")
@ApiOperation("数据插入")
public HttpResult<String> insertDataI(@RequestBody List<DataI> list) {
String methodDescribe = getMethodDescribe("insertDataI");
if(CollUtil.isNotEmpty(list)){
dataI.insertDataI(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataInharmI")
@ApiOperation("数据插入")
public HttpResult<String> insertDataInharmI(@RequestBody List<DataInharmI> list) {
String methodDescribe = getMethodDescribe("insertDataInharmI");
if(CollUtil.isNotEmpty(list)){
dataInharmI.insertDataInharmI(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataInharmV")
@ApiOperation("数据插入")
public HttpResult<String> insertDataInharmV(@RequestBody List<DataInharmV> list) {
String methodDescribe = getMethodDescribe("insertDataInharmV");
if(CollUtil.isNotEmpty(list)){
dataInharmV.insertDataInharmV(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataPlt")
@ApiOperation("数据插入")
public HttpResult<String> insertDataPlt(@RequestBody List<DataPlt> list) {
String methodDescribe = getMethodDescribe("insertDataPlt");
if(CollUtil.isNotEmpty(list)){
dataPlt.insertDataPlt(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertDataV")
@ApiOperation("数据插入")
public HttpResult<String> insertDataV(@RequestBody List<DataV> list) {
String methodDescribe = getMethodDescribe("insertDataV");
if(CollUtil.isNotEmpty(list)){
dataV.insertDataV(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD)
@PostMapping("/insertPqsCommunicate")
@ApiOperation("数据插入")
public HttpResult<String> insertPqsCommunicate(@RequestBody List<PqsCommunicate> list) {
String methodDescribe = getMethodDescribe("insertPqsCommunicate");
if(CollUtil.isNotEmpty(list)){
pqsCommunicate.insertPqsCommunicate(list);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataFlicker;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataFlickerMapper extends InfluxDbBaseMapper<DataFlicker> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataFluc;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataFlucMapper extends InfluxDbBaseMapper<DataFluc> {
}

View File

@@ -0,0 +1,11 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmrateI;
/**
* @author xy
*/
public interface InsertDataHarmRateIMapper extends InfluxDbBaseMapper<DataHarmrateI> {
}

View File

@@ -0,0 +1,11 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmrateV;
/**
* @author xy
*/
public interface InsertDataHarmRateVMapper extends InfluxDbBaseMapper<DataHarmrateV> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmphasicI;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataHarmphasicIMapper extends InfluxDbBaseMapper<DataHarmphasicI> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmphasicV;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataHarmphasicVMapper extends InfluxDbBaseMapper<DataHarmphasicV> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmpowerP;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataHarmpowerPMapper extends InfluxDbBaseMapper<DataHarmpowerP> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmpowerQ;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataHarmpowerQMapper extends InfluxDbBaseMapper<DataHarmpowerQ> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmpowerS;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataHarmpowerSMapper extends InfluxDbBaseMapper<DataHarmpowerS> {
}

View File

@@ -0,0 +1,16 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataI;
/**
* @author hongawen
* @version 1.0
* @data 2024/11/7 18:49
*/
public interface InsertDataIMapper extends InfluxDbBaseMapper<DataI> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataInharmI;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataInharmIMapper extends InfluxDbBaseMapper<DataInharmI> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataInharmV;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataInharmVMapper extends InfluxDbBaseMapper<DataInharmV> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataPlt;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface InsertDataPltMapper extends InfluxDbBaseMapper<DataPlt> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataV;
/**
* @author hongawen
* @version 1.0
* @data 2024/11/7 18:49
*/
public interface InsertDataVMapper extends InfluxDbBaseMapper<DataV> {
}

View File

@@ -0,0 +1,16 @@
package com.njcn.insert.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.PqsCommunicate;
/**
* @Description:
* @Author: wr
* @Date: 2025/3/10 9:49
*/
public interface InsertPqsCommunicateMapper extends InfluxDbBaseMapper<PqsCommunicate> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.insert.mapper;
import com.njcn.db.mapper.BatchBaseMapper;
import com.njcn.po.mysql.RmpEventDetail;
/**
* pqs
*
* @author cdf
* @date 2023/6/19
*/
public interface EventDetailMapper extends BatchBaseMapper<RmpEventDetail> {
}

View File

@@ -0,0 +1,21 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataFlicker {
List<DataFlicker> listDataFlicker(LineCountEvaluateParam lineParam);
void insertDataFlicker(List<DataFlicker> list);
}

View File

@@ -0,0 +1,21 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFluc;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataFluc {
List<DataFluc> listDataFluc(LineCountEvaluateParam lineParam);
void insertDataFluc(List<DataFluc> list);
}

View File

@@ -0,0 +1,20 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataHarmrateI;
import java.util.List;
/**
* @author xy
*/
public interface InsertIDataHarmRateI {
List<DataHarmrateI> listDataHarmrateI(LineCountEvaluateParam lineParam);
void insertDataHarmrateI(List<DataHarmrateI> list);
}

View File

@@ -0,0 +1,18 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataHarmrateV;
import java.util.List;
/**
* @author xy
*/
public interface InsertIDataHarmRateV {
List<DataHarmrateV> listDataHarmrateV(LineCountEvaluateParam lineParam);
void insertDataHarmrateV(List<DataHarmrateV> list);
}

View File

@@ -0,0 +1,23 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataHarmphasicI;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataHarmphasicI {
List<DataHarmphasicI> listDataHarmphasicI(LineCountEvaluateParam lineParam);
void insertDataHarmphasicI(List<DataHarmphasicI> list);
}

View File

@@ -0,0 +1,21 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataHarmphasicV;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataHarmphasicV {
List<DataHarmphasicV> listDataHarmphasicV(LineCountEvaluateParam lineParam);
void insertDataHarmphasicV(List<DataHarmphasicV> list);
}

View File

@@ -0,0 +1,22 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataHarmpowerP;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataHarmpowerP {
List<DataHarmpowerP> listDataHarmpowerP(LineCountEvaluateParam lineParam);
void insertDataHarmpowerP(List<DataHarmpowerP> list);
}

View File

@@ -0,0 +1,23 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataHarmpowerQ;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataHarmpowerQ {
List<DataHarmpowerQ> listDataHarmpowerQ(LineCountEvaluateParam lineParam);
void insertDataHarmpowerQ(List<DataHarmpowerQ> list);
}

View File

@@ -0,0 +1,23 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataHarmpowerS;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataHarmpowerS {
List<DataHarmpowerS> listDataHarmpowerS(LineCountEvaluateParam lineParam);
void insertDataHarmpowerS(List<DataHarmpowerS> list);
}

View File

@@ -0,0 +1,28 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataI;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataI {
/**
* 查询数据信息
* @param lineParam @return: java.util.List<com.njcn.po.influx.DataV>
* @Author: wr
* @Date: 2025/4/23 13:06
*/
List<DataI> listDataI(LineCountEvaluateParam lineParam);
void insertDataI(List<DataI> list);
}

View File

@@ -0,0 +1,21 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataInharmI;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 13:27【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataInharmI {
List<DataInharmI> listDataInharmI(LineCountEvaluateParam lineParam);
void insertDataInharmI(List<DataInharmI> list);
}

View File

@@ -0,0 +1,22 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataInharmV;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 13:27【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataInharmV {
List<DataInharmV> listDataInharmV(LineCountEvaluateParam lineParam);
void insertDataInharmV(List<DataInharmV> list);
}

View File

@@ -0,0 +1,22 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataPlt;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIDataPlt {
List<DataPlt> listDataPlt(LineCountEvaluateParam lineParam);
void insertDataPlt(List<DataPlt> list);
}

View File

@@ -0,0 +1,28 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataV;
import java.util.List;
/**
* @author hongawen
* @version 1.0
* @data 2024/11/7 10:54
*/
public interface InsertIDataV {
/**
* 查询数据信息
* @param lineParam @return: java.util.List<com.njcn.po.influx.DataV>
* @Author: wr
* @Date: 2025/4/23 13:06
*/
List<DataV> listDataV(LineCountEvaluateParam lineParam);
List<DataV> listDataVDesc(LineCountEvaluateParam lineParam);
void insertDataV(List<DataV> list);
}

View File

@@ -0,0 +1,19 @@
package com.njcn.insert.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.PqsCommunicate;
import java.util.List;
/**
* @Description:
* @Author: wr
* @Date: 2025/3/6 10:22
*/
public interface InsertIPqsCommunicate {
List<PqsCommunicate> listPqsCommunicate(LineCountEvaluateParam lineParam);
void insertPqsCommunicate(List<PqsCommunicate> list);
}

View File

@@ -0,0 +1,14 @@
package com.njcn.insert.service;
/**
* Description:
* Date: 2024/11/28 9:04【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface InsertIRmpEventDetail {
}

View File

@@ -0,0 +1,68 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataFlickerMapper;
import com.njcn.insert.service.InsertIDataFlicker;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataV;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataFlickerImpl implements InsertIDataFlicker {
private final InsertDataFlickerMapper dataFlickerMapper;
@Override
public List<DataFlicker> listDataFlicker(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataFlicker.class);
influxQueryWrapper
.select(DataFlicker::getLineId)
.select(DataFlicker::getPhasicType)
.select(DataFlicker::getFluc)
.select(DataFlicker::getPst)
.select(DataFlicker::getPlt)
.select(DataFlicker::getQualityFlag)
.between(DataFlicker::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataFlicker::getLineId, lineParam.getLineId());
}
return dataFlickerMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataFlicker(List<DataFlicker> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataFlicker>> partition = ListUtils.partition(list, 100000);
for (List<DataFlicker> dataFlickerList : partition) {
for (DataFlicker data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataFlicker> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataFlickerMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,67 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataFlucMapper;
import com.njcn.insert.service.InsertIDataFluc;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataFluc;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataFlucImpl implements InsertIDataFluc {
private final InsertDataFlucMapper dataFlucMapper;
@Override
public List<DataFluc> listDataFluc(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataFluc.class);
influxQueryWrapper
.select(DataFluc::getLineId)
.select(DataFluc::getPhasicType)
.select(DataFluc::getFluc)
.select(DataFluc::getFluccf)
.select(DataFluc::getQualityFlag)
.between(DataFluc::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataFluc::getLineId, lineParam.getLineId());
}
return dataFlucMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataFluc(List<DataFluc> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataFluc>> partition = ListUtils.partition(list, 100000);
for (List<DataFluc> dataFlickerList : partition) {
for (DataFluc data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataFluc> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataFlucMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,64 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataHarmRateIMapper;
import com.njcn.insert.service.InsertIDataHarmRateI;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmrateI;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* @author xy
*/
@Service
@RequiredArgsConstructor
public class InsertDataHarmRateIImpl implements InsertIDataHarmRateI {
private final InsertDataHarmRateIMapper dataHarmRateIMapper;
@Override
public List<DataHarmrateI> listDataHarmrateI(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmrateI.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.I, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataHarmrateI::getLineId)
.select(DataHarmrateI::getPhasicType)
.select(DataHarmrateI::getValueType)
.select(DataHarmrateI::getQualityFlag)
.between(DataHarmrateI::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataHarmrateI::getLineId, lineParam.getLineId());
}
return dataHarmRateIMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataHarmrateI(List<DataHarmrateI> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataHarmrateI>> partition = ListUtils.partition(list, 100000);
for (List<DataHarmrateI> dataFlickerList : partition) {
for (DataHarmrateI data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataHarmrateI> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataHarmRateIMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,67 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataHarmRateVMapper;
import com.njcn.insert.service.InsertIDataHarmRateV;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmrateV;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* @author xy
*/
@Service
@RequiredArgsConstructor
public class InsertDataHarmRateVImpl implements InsertIDataHarmRateV {
private final InsertDataHarmRateVMapper dataHarmRateVMapper;
@Override
public List<DataHarmrateV> listDataHarmrateV(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmrateV.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.V, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataHarmrateV::getLineId)
.select(DataHarmrateV::getPhasicType)
.select(DataHarmrateV::getValueType)
.select(DataHarmrateV::getQualityFlag)
.between(DataHarmrateV::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataHarmrateV::getLineId, lineParam.getLineId());
}
if(CollUtil.isNotEmpty(lineParam.getPhasicType())){
influxQueryWrapper.regular(DataHarmrateV::getPhasicType,lineParam.getPhasicType());
}
return dataHarmRateVMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataHarmrateV(List<DataHarmrateV> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataHarmrateV>> partition = ListUtils.partition(list, 100000);
for (List<DataHarmrateV> dataFlickerList : partition) {
for (DataHarmrateV data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataHarmrateV> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataHarmRateVMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,70 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataHarmphasicIMapper;
import com.njcn.insert.service.InsertIDataHarmphasicI;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmphasicI;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataHarmphasicIImpl implements InsertIDataHarmphasicI {
private final InsertDataHarmphasicIMapper dataHarmphasicIMapper;
@Override
public List<DataHarmphasicI> listDataHarmphasicI(LineCountEvaluateParam lineParam) {
List<DataHarmphasicI> result = new ArrayList<>();
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmphasicI.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.I, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataHarmphasicI::getLineId)
.select(DataHarmphasicI::getPhasicType)
.select(DataHarmphasicI::getValueType)
.select(DataHarmphasicI::getQualityFlag)
.between(DataHarmphasicI::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataHarmphasicI::getLineId, lineParam.getLineId());
}
return dataHarmphasicIMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataHarmphasicI(List<DataHarmphasicI> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataHarmphasicI>> partition = ListUtils.partition(list, 100000);
for (List<DataHarmphasicI> dataFlickerList : partition) {
for (DataHarmphasicI data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataHarmphasicI> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataHarmphasicIMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,69 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataHarmphasicVMapper;
import com.njcn.insert.service.InsertIDataHarmphasicV;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmphasicV;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataHarmphasicVImpl implements InsertIDataHarmphasicV {
private final InsertDataHarmphasicVMapper dataHarmphasicVMapper;
@Override
public List<DataHarmphasicV> listDataHarmphasicV(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmphasicV.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.V, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataHarmphasicV::getLineId)
.select(DataHarmphasicV::getPhasicType)
.select(DataHarmphasicV::getValueType)
.select(DataHarmphasicV::getQualityFlag)
.between(DataHarmphasicV::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataHarmphasicV::getLineId, lineParam.getLineId());
}
return dataHarmphasicVMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataHarmphasicV(List<DataHarmphasicV> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataHarmphasicV>> partition = ListUtils.partition(list, 100000);
for (List<DataHarmphasicV> dataFlickerList : partition) {
for (DataHarmphasicV data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataHarmphasicV> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataHarmphasicVMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,72 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataHarmpowerPMapper;
import com.njcn.insert.service.InsertIDataHarmpowerP;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmpowerP;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataHarmpowerPImpl implements InsertIDataHarmpowerP {
private final InsertDataHarmpowerPMapper dataHarmpowerPMapper;
@Override
public List<DataHarmpowerP> listDataHarmpowerP(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmpowerP.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.P, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataHarmpowerP::getLineId)
.select(DataHarmpowerP::getPhasicType)
.select(DataHarmpowerP::getValueType)
.select(DataHarmpowerP::getP)
.select(DataHarmpowerP::getDf)
.select(DataHarmpowerP::getPf)
.select(DataHarmpowerP::getQualityFlag)
.between(DataHarmpowerP::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataHarmpowerP::getLineId, lineParam.getLineId());
}
return dataHarmpowerPMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataHarmpowerP(List<DataHarmpowerP> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataHarmpowerP>> partition = ListUtils.partition(list, 100000);
for (List<DataHarmpowerP> dataFlickerList : partition) {
for (DataHarmpowerP data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataHarmpowerP> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataHarmpowerPMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,69 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataHarmpowerQMapper;
import com.njcn.insert.service.InsertIDataHarmpowerQ;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmpowerQ;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataHarmpowerQImpl implements InsertIDataHarmpowerQ {
private final InsertDataHarmpowerQMapper dataHarmpowerQMapper;
@Override
public List<DataHarmpowerQ> listDataHarmpowerQ(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmpowerQ.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.Q, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataHarmpowerQ::getLineId)
.select(DataHarmpowerQ::getPhasicType)
.select(DataHarmpowerQ::getValueType)
.select(DataHarmpowerQ::getQ)
.select(DataHarmpowerQ::getQualityFlag)
.between(DataHarmpowerQ::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataHarmpowerQ::getLineId, lineParam.getLineId());
}
return dataHarmpowerQMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataHarmpowerQ(List<DataHarmpowerQ> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataHarmpowerQ>> partition = ListUtils.partition(list, 100000);
for (List<DataHarmpowerQ> dataFlickerList : partition) {
for (DataHarmpowerQ data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataHarmpowerQ> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataHarmpowerQMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,69 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataHarmpowerSMapper;
import com.njcn.insert.service.InsertIDataHarmpowerS;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmpowerS;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataHarmpowerSImpl implements InsertIDataHarmpowerS {
private final InsertDataHarmpowerSMapper dataHarmpowerSMapper;
@Override
public List<DataHarmpowerS> listDataHarmpowerS(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataHarmpowerS.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.S, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataHarmpowerS::getLineId)
.select(DataHarmpowerS::getPhasicType)
.select(DataHarmpowerS::getValueType)
.select(DataHarmpowerS::getS)
.select(DataHarmpowerS::getQualityFlag)
.between(DataHarmpowerS::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataHarmpowerS::getLineId, lineParam.getLineId());
}
return dataHarmpowerSMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataHarmpowerS(List<DataHarmpowerS> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataHarmpowerS>> partition = ListUtils.partition(list, 100000);
for (List<DataHarmpowerS> dataFlickerList : partition) {
for (DataHarmpowerS data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataHarmpowerS> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataHarmpowerSMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,78 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataIMapper;
import com.njcn.insert.service.InsertIDataI;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataI;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataIImpl implements InsertIDataI {
private final InsertDataIMapper dataIMapper;
@Override
public List<DataI> listDataI(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataI.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.I, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataI::getLineId)
.select(DataI::getPhasicType)
.select(DataI::getValueType)
.select(DataI::getINeg)
.select(DataI::getIPos)
.select(DataI::getIThd)
.select(DataI::getIUnbalance)
.select(DataI::getIZero)
.select(DataI::getRms)
.select(DataI::getQualityFlag)
.between(DataI::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataI::getLineId, lineParam.getLineId());
}
if(CollUtil.isNotEmpty(lineParam.getPhasicType())){
influxQueryWrapper.regular(DataI::getPhasicType,lineParam.getPhasicType());
}
return dataIMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataI(List<DataI> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataI>> partition = ListUtils.partition(list, 100000);
for (List<DataI> dataFlickerList : partition) {
for (DataI data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataI> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataIMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,68 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataInharmIMapper;
import com.njcn.insert.service.InsertIDataInharmI;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataInharmI;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 13:27【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataInharmIImpl implements InsertIDataInharmI {
private final InsertDataInharmIMapper dataInharmIMapper;
@Override
public List<DataInharmI> listDataInharmI(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataInharmI.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.I, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataInharmI::getLineId)
.select(DataInharmI::getPhasicType)
.select(DataInharmI::getValueType)
.select(DataInharmI::getQualityFlag)
.between(DataInharmI::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataInharmI::getLineId, lineParam.getLineId());
}
return dataInharmIMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataInharmI(List<DataInharmI> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataInharmI>> partition = ListUtils.partition(list, 100000);
for (List<DataInharmI> dataFlickerList : partition) {
for (DataInharmI data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataInharmI> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataInharmIMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,71 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataInharmVMapper;
import com.njcn.insert.service.InsertIDataInharmV;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataInharmV;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 13:27【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataInharmVImpl implements InsertIDataInharmV {
private final InsertDataInharmVMapper dataInharmVMapper;
@Override
public List<DataInharmV> listDataInharmV(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataInharmV.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.V, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataInharmV::getLineId)
.select(DataInharmV::getPhasicType)
.select(DataInharmV::getValueType)
.select(DataInharmV::getQualityFlag)
.between(DataInharmV::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataInharmV::getLineId, lineParam.getLineId());
}
if(CollUtil.isNotEmpty(lineParam.getPhasicType())){
influxQueryWrapper.regular(DataInharmV::getPhasicType,lineParam.getPhasicType());
}
return dataInharmVMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataInharmV(List<DataInharmV> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataInharmV>> partition = ListUtils.partition(list, 100000);
for (List<DataInharmV> dataFlickerList : partition) {
for (DataInharmV data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataInharmV> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataInharmVMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,65 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataPltMapper;
import com.njcn.insert.service.InsertIDataPlt;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataPlt;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
@Service
@RequiredArgsConstructor
public class InsertDataPltImpl implements InsertIDataPlt {
private final InsertDataPltMapper dataPltMapper;
@Override
public List<DataPlt> listDataPlt(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataPlt.class);
influxQueryWrapper
.select(DataPlt::getLineId)
.select(DataPlt::getPhasicType)
.select(DataPlt::getPlt)
.select(DataPlt::getQualityFlag)
.between(DataPlt::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataPlt::getLineId, lineParam.getLineId());
}
return dataPltMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataPlt(List<DataPlt> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataPlt>> partition = ListUtils.partition(list, 100000);
for (List<DataPlt> dataFlickerList : partition) {
for (DataPlt data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<DataPlt> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataPltMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,113 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertDataVMapper;
import com.njcn.insert.service.InsertIDataV;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataV;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* @author hongawen
* @version 1.0
* @data 2024/11/7 10:54
*/
@Service
@RequiredArgsConstructor
public class InsertDataVImpl implements InsertIDataV {
private final InsertDataVMapper dataVMapper;
@Override
public List<DataV> listDataV(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.V, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataV::getLineId)
.select(DataV::getPhasicType)
.select(DataV::getValueType)
.select(DataV::getFreq)
.select(DataV::getFreqDev)
.select(DataV::getRms)
.select(DataV::getRmsLvr)
.select(DataV::getVNeg)
.select(DataV::getVPos)
.select(DataV::getVThd)
.select(DataV::getVUnbalance)
.select(DataV::getVZero)
.select(DataV::getVlDev)
.select(DataV::getVuDev)
.select(DataV::getQualityFlag)
.between(DataV::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataV::getLineId, lineParam.getLineId());
}
if (CollUtil.isNotEmpty(lineParam.getPhasicType())) {
influxQueryWrapper.regular(DataV::getPhasicType, lineParam.getPhasicType());
}
return dataVMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public List<DataV> listDataVDesc(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(DataV.class);
influxQueryWrapper.samePrefixAndSuffix(InfluxDbSqlConstant.V, "", HarmonicTimesUtil.harmonicTimesList(1, 50, 1));
influxQueryWrapper
.select(DataV::getLineId)
.select(DataV::getPhasicType)
.select(DataV::getValueType)
.select(DataV::getFreq)
.select(DataV::getFreqDev)
.select(DataV::getRms)
.select(DataV::getRmsLvr)
.select(DataV::getVNeg)
.select(DataV::getVPos)
.select(DataV::getVThd)
.select(DataV::getVUnbalance)
.select(DataV::getVZero)
.select(DataV::getVlDev)
.select(DataV::getVuDev)
.select(DataV::getQualityFlag)
.groupBy(DataV::getLineId)
.timeDesc()
.limit(1);
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(DataV::getLineId, lineParam.getLineId());
}
if (CollUtil.isNotEmpty(lineParam.getPhasicType())) {
influxQueryWrapper.regular(DataV::getPhasicType, lineParam.getPhasicType());
}
return dataVMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertDataV(List<DataV> list) {
if(CollUtil.isNotEmpty(list)){
List<List<DataV>> partition = ListUtils.partition(list, 100000);
for (List<DataV> dataFlickerList : partition) {
for (DataV dataV : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(dataV.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
dataV.setTime(instant);
}
List<DataV> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
dataVMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,63 @@
package com.njcn.insert.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.influx.query.InfluxQueryWrapper;
import com.njcn.insert.imapper.InsertPqsCommunicateMapper;
import com.njcn.insert.service.InsertIPqsCommunicate;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.PqsCommunicate;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.List;
/**
* @Description:
* @Author: wr
* @Date: 2025/3/6 10:22
*/
@Service
@RequiredArgsConstructor
public class InsertPqsCommunicateImpl implements InsertIPqsCommunicate {
private final InsertPqsCommunicateMapper pqsCommunicateMapper;
@Override
public List<PqsCommunicate> listPqsCommunicate(LineCountEvaluateParam lineParam) {
InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(PqsCommunicate.class);
influxQueryWrapper
.select(PqsCommunicate::getTime)
.select(PqsCommunicate::getDevId)
.select(PqsCommunicate::getDescription)
.select(PqsCommunicate::getType)
.between(PqsCommunicate::getTime, lineParam.getStartTime(), lineParam.getEndTime())
.timeDesc()
;
if(CollUtil.isNotEmpty(lineParam.getLineId())){
influxQueryWrapper.regular(PqsCommunicate::getDevId, lineParam.getLineId());
}
return pqsCommunicateMapper.selectByQueryWrapper(influxQueryWrapper);
}
@Override
public void insertPqsCommunicate(List<PqsCommunicate> list) {
if(CollUtil.isNotEmpty(list)){
List<List<PqsCommunicate>> partition = ListUtils.partition(list, 100000);
for (List<PqsCommunicate> dataFlickerList : partition) {
for (PqsCommunicate data : dataFlickerList) {
Instant instant = LocalDateTimeUtil.parse(data.getTimeId(), DatePattern.NORM_DATETIME_PATTERN) .atZone(ZoneId.systemDefault()).toInstant();
data.setTime(instant);
}
List<PqsCommunicate> sublistAsOriginalListType = new ArrayList<>(dataFlickerList);
pqsCommunicateMapper.insertBatch(sublistAsOriginalListType);
}
}
}
}

View File

@@ -0,0 +1,16 @@
package com.njcn.insert.service.impl;
import com.njcn.insert.service.InsertIRmpEventDetail;
/**
* Description:
* Date: 2024/11/28 9:04【需求编号】
*
* @author clam
* @version V1.0.0
*/
public class InsertRmpEventDetailImpl implements InsertIRmpEventDetail {
}

View File

@@ -0,0 +1,68 @@
#当前服务的基本信息
microservice:
ename: @artifactId@
name: '@name@'
version: @version@
sentinel:
url: @sentinel.url@
gateway:
url: @gateway.url@
server:
port: 10407
#feign接口开启服务熔断降级处理
feign:
sentinel:
enabled: true
spring:
application:
name: @artifactId@
#nacos注册中心以及配置中心的指定
cloud:
nacos:
discovery:
ip: @service.server.url@
server-addr: @nacos.url@
namespace: @nacos.namespace@
config:
server-addr: @nacos.url@
namespace: @nacos.namespace@
file-extension: yaml
shared-configs:
- data-id: share-config.yaml
refresh: true
- data-Id: share-config-datasource-insert-db.yaml
refresh: true
main:
allow-bean-definition-overriding: true
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
jackson:
time-zone: GMT+8
#项目日志的配置
logging:
config: http://@nacos.url@/nacos/v1/cs/configs?tenant=@nacos.namespace@&group=DEFAULT_GROUP&dataId=logback.xml
level:
root: info
mqtt:
client-id: @artifactId@${random.value}
#mybatis配置信息
mybatis-plus:
configuration:
#配置sql日志输出
log-impl: org.apache.ibatis.logging.nologging.NoLoggingImpl
# type-aliases-package: com.njcn.harmonic.pojo
# type-handlers-package: com.njcn.db.handler
# global-config:
# db-config:
# date-format: yyyy-MM-dd HH:mm:ss
# global-config:
# enable-sql-runner: true

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.njcn.platform</groupId>
<artifactId>migration-influxdb</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>migration-influxdb-read-boot</artifactId>
<name>migration-influxdb-boot</name>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>common-web</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>common-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>common-swagger</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn.platform</groupId>
<artifactId>migration-influxdb-api</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@@ -1,4 +1,4 @@
package com.njcn.migration; package com.njcn.read;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.annotation.MapperScan;
@@ -16,10 +16,10 @@ import org.springframework.context.annotation.DependsOn;
@MapperScan("com.njcn.**.mapper") @MapperScan("com.njcn.**.mapper")
@EnableFeignClients(basePackages = "com.njcn") @EnableFeignClients(basePackages = "com.njcn")
@SpringBootApplication(scanBasePackages = "com.njcn") @SpringBootApplication(scanBasePackages = "com.njcn")
public class MigrationBootApplication { public class MigrationReadBootApplication {
public static void main(String[] args) { public static void main(String[] args) {
SpringApplication.run(MigrationBootApplication.class, args); SpringApplication.run(MigrationReadBootApplication.class, args);
} }
} }

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataFlicker;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataFlickerMapper extends InfluxDbBaseMapper<DataFlicker> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataFluc;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataFlucMapper extends InfluxDbBaseMapper<DataFluc> {
}

View File

@@ -0,0 +1,11 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmrateI;
/**
* @author xy
*/
public interface DataHarmRateIMapper extends InfluxDbBaseMapper<DataHarmrateI> {
}

View File

@@ -0,0 +1,11 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmrateV;
/**
* @author xy
*/
public interface DataHarmRateVMapper extends InfluxDbBaseMapper<DataHarmrateV> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmphasicI;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataHarmphasicIMapper extends InfluxDbBaseMapper<DataHarmphasicI> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmphasicV;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataHarmphasicVMapper extends InfluxDbBaseMapper<DataHarmphasicV> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmpowerP;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataHarmpowerPMapper extends InfluxDbBaseMapper<DataHarmpowerP> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmpowerQ;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataHarmpowerQMapper extends InfluxDbBaseMapper<DataHarmpowerQ> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataHarmpowerS;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataHarmpowerSMapper extends InfluxDbBaseMapper<DataHarmpowerS> {
}

View File

@@ -0,0 +1,16 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataI;
/**
* @author hongawen
* @version 1.0
* @data 2024/11/7 18:49
*/
public interface DataIMapper extends InfluxDbBaseMapper<DataI> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataInharmI;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataInharmIMapper extends InfluxDbBaseMapper<DataInharmI> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataInharmV;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataInharmVMapper extends InfluxDbBaseMapper<DataInharmV> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataPlt;
/**
* <p>
* Mapper 接口
* </p>
*
* @author hongawen
* @since 2023-12-28
*/
public interface DataPltMapper extends InfluxDbBaseMapper<DataPlt> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.DataV;
/**
* @author hongawen
* @version 1.0
* @data 2024/11/7 18:49
*/
public interface DataVMapper extends InfluxDbBaseMapper<DataV> {
}

View File

@@ -0,0 +1,16 @@
package com.njcn.read.imapper;
import com.njcn.influx.base.InfluxDbBaseMapper;
import com.njcn.po.influx.PqsCommunicate;
/**
* @Description:
* @Author: wr
* @Date: 2025/3/10 9:49
*/
public interface PqsCommunicateMapper extends InfluxDbBaseMapper<PqsCommunicate> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.read.mapper;
import com.njcn.db.mapper.BatchBaseMapper;
import com.njcn.po.mysql.RmpEventDetail;
/**
* pqs
*
* @author cdf
* @date 2023/6/19
*/
public interface RmpEventDetailMapper extends BatchBaseMapper<RmpEventDetail> {
}

View File

@@ -0,0 +1,21 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface IDataFlicker {
List<DataFlicker> listDataFlicker(LineCountEvaluateParam lineParam);
void insertDataFlicker(List<DataFlicker> list);
}

View File

@@ -0,0 +1,22 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataFluc;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface IDataFluc {
List<DataFluc> listDataFluc(LineCountEvaluateParam lineParam);
void insertDataFluc(List<DataFluc> list);
}

View File

@@ -0,0 +1,21 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmrateI;
import java.util.List;
/**
* @author xy
*/
public interface IDataHarmRateI {
List<DataHarmrateI> listDataHarmrateI(LineCountEvaluateParam lineParam);
void insertDataHarmrateI(List<DataHarmrateI> list);
}

View File

@@ -0,0 +1,20 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmrateI;
import com.njcn.po.influx.DataHarmrateV;
import java.util.List;
/**
* @author xy
*/
public interface IDataHarmRateV {
List<DataHarmrateV> listDataHarmrateV(LineCountEvaluateParam lineParam);
void insertDataHarmrateV(List<DataHarmrateV> list);
}

View File

@@ -0,0 +1,24 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmphasicI;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface IDataHarmphasicI {
List<DataHarmphasicI> listDataHarmphasicI(LineCountEvaluateParam lineParam);
void insertDataHarmphasicI(List<DataHarmphasicI> list);
}

View File

@@ -0,0 +1,23 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmphasicI;
import com.njcn.po.influx.DataHarmphasicV;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface IDataHarmphasicV {
List<DataHarmphasicV> listDataHarmphasicV(LineCountEvaluateParam lineParam);
void insertDataHarmphasicV(List<DataHarmphasicV> list);
}

View File

@@ -0,0 +1,24 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmphasicI;
import com.njcn.po.influx.DataHarmpowerP;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface IDataHarmpowerP {
List<DataHarmpowerP> listDataHarmpowerP(LineCountEvaluateParam lineParam);
void insertDataHarmpowerP(List<DataHarmpowerP> list);
}

View File

@@ -0,0 +1,25 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmpowerP;
import com.njcn.po.influx.DataHarmpowerQ;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface IDataHarmpowerQ {
List<DataHarmpowerQ> listDataHarmpowerQ(LineCountEvaluateParam lineParam);
void insertDataHarmpowerQ(List<DataHarmpowerQ> list);
}

View File

@@ -0,0 +1,25 @@
package com.njcn.read.service;
import com.njcn.param.LineCountEvaluateParam;
import com.njcn.po.influx.DataFlicker;
import com.njcn.po.influx.DataHarmpowerP;
import com.njcn.po.influx.DataHarmpowerS;
import java.util.List;
/**
* Description:
* Date: 2024/11/18 11:17【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface IDataHarmpowerS {
List<DataHarmpowerS> listDataHarmpowerS(LineCountEvaluateParam lineParam);
void insertDataHarmpowerS(List<DataHarmpowerS> list);
}

Some files were not shown because too many files have changed in this diff Show More