diff --git a/src/main/java/com/njcn/influx/service/CommonService.java b/src/main/java/com/njcn/influx/service/CommonService.java index 97e5f52..5de7e61 100644 --- a/src/main/java/com/njcn/influx/service/CommonService.java +++ b/src/main/java/com/njcn/influx/service/CommonService.java @@ -77,4 +77,12 @@ public interface CommonService { * @return */ List getTopTemperature(String lineId,String tableName, String columnName,String process); + + /** + * 获取监测点的指标数量,用来计算完整率 + * + */ + StatisticalDataDTO getCounts(String lineId, String tableName, String columnName,String resultName, String phasic, String dataType, String clDid, String process,String startTime, String endTime); + + } diff --git a/src/main/java/com/njcn/influx/service/impl/CommonServiceImpl.java b/src/main/java/com/njcn/influx/service/impl/CommonServiceImpl.java index 73896d7..f353cd2 100644 --- a/src/main/java/com/njcn/influx/service/impl/CommonServiceImpl.java +++ b/src/main/java/com/njcn/influx/service/impl/CommonServiceImpl.java @@ -147,6 +147,19 @@ public class CommonServiceImpl implements CommonService { return commonMapper.getTopTemperature(influxQueryWrapper); } + @Override + public StatisticalDataDTO getCounts(String lineId, String tableName, String columnName,String resultName, String phasic, String dataType, String clDid,String process,String startTime, String endTime) { + InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper(tableName,StatisticalDataDTO.class); + influxQueryWrapper.select(StatisticalDataDTO::getLineId) + .count(columnName,resultName) + .eq(InfluxDBTableConstant.LINE_ID,lineId) + .eq(InfluxDBTableConstant.PHASIC_TYPE,phasic) + .eq(InfluxDBTableConstant.VALUE_TYPE,dataType) + .eq(InfluxDBTableConstant.CL_DID,clDid) + .eq(InfluxDBTableConstant.PROCESS,process) + .between(InfluxDBTableConstant.TIME, startTime, endTime);; + return commonMapper.getLineRtData(influxQueryWrapper); + } }