package com.iailab.module.data.influxdb.service; import com.iailab.module.data.api.dto.ApiPointValueQueryDTO; import com.iailab.module.data.influxdb.pojo.InfluxPointValuePOJO; import com.iailab.module.data.api.dto.ApiTagValueQueryDTO; import com.iailab.module.data.influxdb.pojo.InfluxTagValuePOJO; import com.iailab.module.data.point.vo.PointValueExportVO; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Date; import java.util.List; import java.util.Map; /** * InfluxDBæ“作类 */ public interface InfluxDBService { void syncWriteFloatValue(String pointNo, String dataValue, long time); void syncWriteIntValue(String pointNo, String dataValue, long time); void syncWriteBooleanValue(String pointNo, String dataValue, long time); void asyncWritePointValues(List<InfluxPointValuePOJO> pointValues); void asyncWriteTagValues(List<InfluxTagValuePOJO> tagValues); Map<String, Object> queryPointsLastValue(List<InfluxPointValuePOJO> influxParams); Map<String, List<Object>> queryTagsValues(List<InfluxTagValuePOJO> influxParams, Date startTime, Date endTime); List<Map<String, Object>> queryPointValues(InfluxPointValuePOJO pojo, Date startTime, Date endTime); Map<String, List<Map<String, Object>>> queryPointsValues(List<InfluxPointValuePOJO> influxParams, Date startTime, Date endTime); Map<String, Object> queryPointsSpread(List<InfluxPointValuePOJO> influxParams, Date startTime, Date endTime); boolean exportTagValue(HttpServletResponse response, HttpServletRequest request, ApiTagValueQueryDTO params); Object queryPointMaxValue(InfluxPointValuePOJO point, Date startTime); List<PointValueExportVO> exportPointValue(ApiPointValueQueryDTO queryDto); }