From 381de5e0884e601c1d09852922c38e9b623b800c Mon Sep 17 00:00:00 2001 From: huangzj <826100833@qq.com> Date: Thu, 31 Aug 2023 08:56:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=9A=82=E9=99=8D=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../njcn/influx/imapper/EvtDataMapper.java | 23 +++++++++ .../njcn/influx/pojo/dto/EventQueryDTO.java | 19 ++++++++ .../com/njcn/influx/pojo/po/cs/EntData.java | 47 +++++++++++++++++++ .../njcn/influx/service/EvtDataService.java | 28 +++++++++++ .../service/impl/EvtDataServiceImpl.java | 41 ++++++++++++++++ 5 files changed, 158 insertions(+) create mode 100644 pqs-influx/src/main/java/com/njcn/influx/imapper/EvtDataMapper.java create mode 100644 pqs-influx/src/main/java/com/njcn/influx/pojo/dto/EventQueryDTO.java create mode 100644 pqs-influx/src/main/java/com/njcn/influx/pojo/po/cs/EntData.java create mode 100644 pqs-influx/src/main/java/com/njcn/influx/service/EvtDataService.java create mode 100644 pqs-influx/src/main/java/com/njcn/influx/service/impl/EvtDataServiceImpl.java diff --git a/pqs-influx/src/main/java/com/njcn/influx/imapper/EvtDataMapper.java b/pqs-influx/src/main/java/com/njcn/influx/imapper/EvtDataMapper.java new file mode 100644 index 000000000..35ee9b1a8 --- /dev/null +++ b/pqs-influx/src/main/java/com/njcn/influx/imapper/EvtDataMapper.java @@ -0,0 +1,23 @@ +package com.njcn.influx.imapper; + + +import com.njcn.influx.base.InfluxDbBaseMapper; + +import com.njcn.influx.pojo.po.cs.EntData; +import com.njcn.influx.query.InfluxQueryWrapper; + +import java.util.List; + +/** + * 类的介绍: + * + * @author xuyang + * @version 1.0.0 + * @createTime 2023/5/5 14:39 + */ + +public interface EvtDataMapper extends InfluxDbBaseMapper { + + + List getEventData(InfluxQueryWrapper influxQueryWrapper); +} diff --git a/pqs-influx/src/main/java/com/njcn/influx/pojo/dto/EventQueryDTO.java b/pqs-influx/src/main/java/com/njcn/influx/pojo/dto/EventQueryDTO.java new file mode 100644 index 000000000..a5f831a42 --- /dev/null +++ b/pqs-influx/src/main/java/com/njcn/influx/pojo/dto/EventQueryDTO.java @@ -0,0 +1,19 @@ +package com.njcn.influx.pojo.dto; + +import lombok.Data; + +import java.util.List; + +/** + * Description: + * Date: 2023/8/30 18:38【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +public class EventQueryDTO { + private String devId; + private List lineIds; + private List target; +} diff --git a/pqs-influx/src/main/java/com/njcn/influx/pojo/po/cs/EntData.java b/pqs-influx/src/main/java/com/njcn/influx/pojo/po/cs/EntData.java new file mode 100644 index 000000000..cd3b753ec --- /dev/null +++ b/pqs-influx/src/main/java/com/njcn/influx/pojo/po/cs/EntData.java @@ -0,0 +1,47 @@ +package com.njcn.influx.pojo.po.cs; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.njcn.common.utils.serializer.InstantDateSerializer; +import lombok.Data; +import org.influxdb.annotation.Column; +import org.influxdb.annotation.Measurement; + +import java.time.Instant; + +/** + * 类的介绍: + * + * @author xuyang + * @version 1.0.0 + * @createTime 2022/4/7 10:00 + */ +@Data +@Measurement(name = "evt_data") +public class EntData { + + @Column(name = "time") + @JsonSerialize(using = InstantDateSerializer.class) + private Instant time; + + @Column(name = "line_id") + private String lineId; + + @Column(name = "sec") + private String sec; + + @Column(name = "target") + private String target; + + @Column(name = "evt_vva") + private Double evtVva; + + @Column(name = "evt_vvadepth") + private Double evtVvadepth; + + @Column(name = "evt_vvaphase") + private String evtVvaphase; + + @Column(name = "evt_vvatm") + private Double evtVvatm; + +} diff --git a/pqs-influx/src/main/java/com/njcn/influx/service/EvtDataService.java b/pqs-influx/src/main/java/com/njcn/influx/service/EvtDataService.java new file mode 100644 index 000000000..222f12866 --- /dev/null +++ b/pqs-influx/src/main/java/com/njcn/influx/service/EvtDataService.java @@ -0,0 +1,28 @@ +package com.njcn.influx.service; + +import com.njcn.influx.pojo.dto.EventQueryDTO; +import com.njcn.influx.pojo.dto.StatisticalDataDTO; +import com.njcn.influx.pojo.po.cs.EntData; + +import java.util.List; + +/** + * Description: + * Date: 2023/6/2 16:00【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface EvtDataService { + + + + /** + * @Description: getEventData + * @Param: + * @return: java.util.List + * @Author: clam + * @Date: 2023/8/30 + */ + List getEventData(EventQueryDTO eventQueryDTO); +} diff --git a/pqs-influx/src/main/java/com/njcn/influx/service/impl/EvtDataServiceImpl.java b/pqs-influx/src/main/java/com/njcn/influx/service/impl/EvtDataServiceImpl.java new file mode 100644 index 000000000..5a99c1454 --- /dev/null +++ b/pqs-influx/src/main/java/com/njcn/influx/service/impl/EvtDataServiceImpl.java @@ -0,0 +1,41 @@ +package com.njcn.influx.service.impl; + +import com.njcn.influx.imapper.CommonMapper; +import com.njcn.influx.imapper.EvtDataMapper; +import com.njcn.influx.pojo.constant.InfluxDBTableConstant; +import com.njcn.influx.pojo.dto.EventQueryDTO; +import com.njcn.influx.pojo.dto.StatisticalDataDTO; +import com.njcn.influx.pojo.po.cs.EntData; +import com.njcn.influx.query.InfluxQueryWrapper; +import com.njcn.influx.service.EvtDataService; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.List; + +/** + * Description: + * Date: 2023/8/30 19:08【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +@RequiredArgsConstructor +public class EvtDataServiceImpl implements EvtDataService { + private final EvtDataMapper commonMapper; + @Override + public List getEventData(EventQueryDTO eventQueryDTO) { + InfluxQueryWrapper influxQueryWrapper = new InfluxQueryWrapper("evt_data", EntData.class); + influxQueryWrapper.select(EntData::getLineId,EntData::getTarget,EntData::getTime,EntData::getTime, + EntData::getEvtVva,EntData::getSec,EntData::getEvtVvaphase,EntData::getEvtVvadepth, + EntData::getEvtVvatm) + .or(InfluxDBTableConstant.LINE_ID,eventQueryDTO.getLineIds()) + .or("target",eventQueryDTO.getTarget()); + + + return commonMapper.getEventData(influxQueryWrapper); + + } +}