iailab-module-data/iailab-module-data-biz/db/mysql/tenant.sql
@@ -444,4 +444,5 @@ UNIQUE KEY `uk_code` (`code`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='定时归档设置表'; ALTER TABLE `t_da_cumulate_point` ADD COLUMN `cumulate_unit` varchar(10) DEFAULT 'min' COMMENT '累计单位'; ALTER TABLE `t_da_cumulate_point` ADD COLUMN `cumulate_unit` varchar(10) DEFAULT 'min' COMMENT '累计单位'; ALTER TABLE `t_da_cumulate_point` ADD COLUMN `is_cumu_neg` tinyint(1) DEFAULT 0 COMMENT '是否累计负数'; iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/job/config/ScheduleJobListConfig.java
@@ -31,5 +31,6 @@ scheduleJobList.add("pointArchivingTaskNetMonth"); scheduleJobList.add("pointArchivingTaskNetShift"); scheduleJobList.add("pointArchivingTaskNetYear"); scheduleJobList.add("insertInfluxdbTask"); } } iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/job/task/InsertInfluxdbTask.java
对比新文件 @@ -0,0 +1,43 @@ package com.iailab.module.data.job.task; import com.iailab.module.data.influxdb.pojo.InfluxPointValuePOJO; import com.iailab.module.data.influxdb.pojo.InfluxPointValueSimPOJO; import com.iailab.module.data.influxdb.service.InfluxDBService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * insertInfluxdbTask */ @Component("insertInfluxdbTask") public class InsertInfluxdbTask implements ITask{ private Logger logger = LoggerFactory.getLogger(getClass()); @Resource private InfluxDBService influxDBService; @Override public void run(String params){ logger.debug("insertInfluxdbTask定时任务正在执行,参数为:{}", params); String[] split = params.split(","); // List<InfluxPointValuePOJO> pointValues = new ArrayList<>(); // InfluxPointValueSimPOJO pojo = new InfluxPointValueSimPOJO(); // pojo.setPoint(split[0]); // pojo.setType("float"); // pojo.setValue(Double.valueOf(split[1])); // pojo.setTimestamp(new Date(Long.valueOf(split[2])).toInstant()); // pointValues.add(pojo); // influxDBService.asyncWritePointValues(pointValues); influxDBService.syncWriteFloatValue(split[0],split[1],Long.valueOf(split[2])); } } iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/CumulateHandle.java
@@ -119,7 +119,18 @@ queryDto.setEnd(endTime); queryDto.setPointNo(dto.getMomentPoint()); log.info("queryDto=" + JSONObject.toJSONString(queryDto)); List<ApiPointValueDTO> dataList = dataPointApi.queryPointHistoryValue(queryDto); List<ApiPointValueDTO> dataList = new ArrayList<>(); List<ApiPointValueDTO> dataListTemp = dataPointApi.queryPointHistoryValue(queryDto); if (dto.getIsCumuNeg() != null && dto.getIsCumuNeg().equals(0)) { for(ApiPointValueDTO item : dataListTemp) { if (item.getV() > 0) { dataList.add(item); } } } else { dataList = dataListTemp; } if (CollectionUtils.isEmpty(dataList)) { log.info("dataList is empty"); if (listGood != null) { iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/dto/DaPointDTO.java
@@ -120,6 +120,9 @@ @Schema(description = "除数") private Integer divisor; @Schema(description = "是否累计负数") private Integer isCumuNeg; @Schema(description = "数据源选项") private List<String> sourceOption; iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/entity/DaCumulatePointEntity.java
@@ -49,4 +49,9 @@ * 除数 */ private Integer divisor; /** * 是否累计负数 */ private Integer isCumuNeg; } iailab-module-data/iailab-module-data-biz/src/main/resources/mapper/point/DaPointDao.xml
@@ -280,7 +280,8 @@ t2.moment_point, t2.length, t2.cumulate_unit, t2.divisor t2.divisor, t2.is_cumu_neg FROM t_da_point t1 LEFT JOIN t_da_cumulate_point t2 ON t2.point_id = t1.id <where>