From c94422ecc7a5805be70aff43ee2df81e5db22835 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8A=9B?= Date: Mon, 1 Aug 2022 15:35:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/storeroom/utils/TimestampTool.java | 6 ++++++ .../modules/storeroom3d/domain/GetCurAlarm.java | 14 ++++++++++++++ .../repository/GetCurAlarmRepository.java | 8 ++++++++ .../storeroom3d/service/dto/GetCurAlarmDto.java | 3 ++- .../service/impl/AlarmInfoServiceImpl.java | 9 ++++++++- .../service/impl/ThirdApiServiceImpl.java | 5 ++++- .../service/impl/mapstruct/GetCurAlarmMapper.java | 11 +++++++++++ 7 files changed, 53 insertions(+), 3 deletions(-) create mode 100644 common/src/main/java/com/storeroom/utils/TimestampTool.java create mode 100644 storeroom/src/main/java/com/storeroom/modules/storeroom3d/repository/GetCurAlarmRepository.java create mode 100644 storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/mapstruct/GetCurAlarmMapper.java diff --git a/common/src/main/java/com/storeroom/utils/TimestampTool.java b/common/src/main/java/com/storeroom/utils/TimestampTool.java new file mode 100644 index 0000000..7972462 --- /dev/null +++ b/common/src/main/java/com/storeroom/utils/TimestampTool.java @@ -0,0 +1,6 @@ +package com.storeroom.utils; + +public class TimestampTool { + + +} diff --git a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/domain/GetCurAlarm.java b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/domain/GetCurAlarm.java index 5d9baa0..e7bfa94 100644 --- a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/domain/GetCurAlarm.java +++ b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/domain/GetCurAlarm.java @@ -13,6 +13,7 @@ import javax.persistence.Table; import javax.validation.constraints.NotNull; import java.io.Serializable; import java.sql.Timestamp; +import java.util.Objects; @Entity @Getter @@ -59,4 +60,17 @@ public class GetCurAlarm implements Serializable { @Column(name = "alarm_value") @ApiModelProperty(value = "告警值",hidden = true) private String alarm_value; + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GetCurAlarm that = (GetCurAlarm) o; + return Objects.equals(event_id, that.event_id) && Objects.equals(event_name, that.event_name) && Objects.equals(device_id, that.device_id) && Objects.equals(device_name, that.device_name) && Objects.equals(category_name, that.category_name) && Objects.equals(area_name, that.area_name) && Objects.equals(event_level_name, that.event_level_name) && Objects.equals(alarm_time, that.alarm_time) && Objects.equals(alarm_value, that.alarm_value); + } + + @Override + public int hashCode() { + return Objects.hash(event_id, event_name, device_id, device_name, category_name, area_name, event_level_name, alarm_time, alarm_value); + } } diff --git a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/repository/GetCurAlarmRepository.java b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/repository/GetCurAlarmRepository.java new file mode 100644 index 0000000..69b02c4 --- /dev/null +++ b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/repository/GetCurAlarmRepository.java @@ -0,0 +1,8 @@ +package com.storeroom.modules.storeroom3d.repository; + +import com.storeroom.modules.storeroom3d.domain.GetCurAlarm; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.JpaSpecificationExecutor; + +public interface GetCurAlarmRepository extends JpaRepository, JpaSpecificationExecutor { +} diff --git a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/dto/GetCurAlarmDto.java b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/dto/GetCurAlarmDto.java index 0603063..9b554fc 100644 --- a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/dto/GetCurAlarmDto.java +++ b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/dto/GetCurAlarmDto.java @@ -5,6 +5,7 @@ import lombok.Getter; import lombok.Setter; import java.io.Serializable; +import java.sql.Timestamp; import java.util.Objects; @Getter @@ -52,7 +53,7 @@ public class GetCurAlarmDto implements Serializable { /** * 更新时间 */ - private String alarm_time; + private Timestamp alarm_time; /** * 告警值 diff --git a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/AlarmInfoServiceImpl.java b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/AlarmInfoServiceImpl.java index b86cea4..0dcb2e8 100644 --- a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/AlarmInfoServiceImpl.java +++ b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/AlarmInfoServiceImpl.java @@ -2,9 +2,12 @@ package com.storeroom.modules.storeroom3d.service.impl; import com.storeroom.modules.device.domain.DeviceInfo; import com.storeroom.modules.device.repository.DeviceInfoRepository; +import com.storeroom.modules.storeroom3d.domain.GetCurAlarm; +import com.storeroom.modules.storeroom3d.repository.GetCurAlarmRepository; import com.storeroom.modules.storeroom3d.service.AlarmInfoService; import com.storeroom.modules.storeroom3d.service.ThirdApiService; import com.storeroom.modules.storeroom3d.service.dto.GetCurAlarmDto; +import com.storeroom.modules.storeroom3d.service.impl.mapstruct.GetCurAlarmMapper; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -21,6 +24,8 @@ public class AlarmInfoServiceImpl implements AlarmInfoService { private final DeviceInfoRepository deviceInfoRepository; private final ThirdApiService thirdApiService; + private final GetCurAlarmMapper getCurAlarmMapper; + private final GetCurAlarmRepository getCurAlarmRepository; @Override public Object getAllAlarmInfo() { @@ -28,10 +33,12 @@ public class AlarmInfoServiceImpl implements AlarmInfoService { List alarmDtos = thirdApiService.getAllDeviceAlarm(); List alarmDtos1 = new ArrayList<>(); List alarmDtos2 = alarmDtos.stream().filter(getCurAlarmDto -> Objects.equals(getCurAlarmDto.getDevice_id(), "")).collect(Collectors.toList()); - for (int i = 0; i < alarmDtos2.size(); i++) { + for (int i = 0; i < alarmDtos.size(); i++) { for (int k = 0; k < deviceInfoList.size(); k++) { if (Objects.equals(alarmDtos.get(i).getDevice_id(), deviceInfoList.get(k).getDeviceId())) { alarmDtos1.add(alarmDtos.get(i)); + GetCurAlarm getCurAlarm = getCurAlarmMapper.toEntity(alarmDtos.get(i)); + getCurAlarmRepository.save(getCurAlarm); } } } diff --git a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/ThirdApiServiceImpl.java b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/ThirdApiServiceImpl.java index 937ca20..25a920d 100644 --- a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/ThirdApiServiceImpl.java +++ b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/ThirdApiServiceImpl.java @@ -20,6 +20,7 @@ import org.springframework.cache.annotation.CacheConfig; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; +import java.sql.Timestamp; import java.util.*; import java.util.concurrent.TimeUnit; @@ -126,7 +127,8 @@ public class ThirdApiServiceImpl implements ThirdApiService { getCurAlarmDto.setArea_name(jsonObject.get("area_name") == null ? null : jsonObject.get("area_name").toString()); getCurAlarmDto.setEvent_id(jsonObject.get("event_id") == null ? null : jsonObject.get("event_id").toString()); getCurAlarmDto.setEvent_level_name(jsonObject.get("event_level_name") == null ? null : jsonObject.get("event_level_name").toString()); - getCurAlarmDto.setAlarm_time(jsonObject.get("alarm_time") == null ? null : jsonObject.get("alarm_time").toString()); + Timestamp ts = Timestamp.valueOf(jsonObject.get("alarm_time") == null ? null : jsonObject.get("alarm_time").toString()); + getCurAlarmDto.setAlarm_time(ts); getCurAlarmDto.setCategory_name(jsonObject.get("category_name") == null ? null : jsonObject.get("category_name").toString()); getCurAlarmDto.setAlarm_value_descript(jsonObject.get("alarm_value_descript") == null ? null : jsonObject.get("alarm_value_descript").toString()); getCurAlarmDto.setDevice_name(jsonObject.get("device_name") == null ? null : jsonObject.get("device_name").toString()); @@ -146,6 +148,7 @@ public class ThirdApiServiceImpl implements ThirdApiService { /** * 查询第三方token是否存在 + * * @return */ private String findApiToken() { diff --git a/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/mapstruct/GetCurAlarmMapper.java b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/mapstruct/GetCurAlarmMapper.java new file mode 100644 index 0000000..74bc0bf --- /dev/null +++ b/storeroom/src/main/java/com/storeroom/modules/storeroom3d/service/impl/mapstruct/GetCurAlarmMapper.java @@ -0,0 +1,11 @@ +package com.storeroom.modules.storeroom3d.service.impl.mapstruct; + +import com.storeroom.base.BaseMapper; +import com.storeroom.modules.storeroom3d.domain.GetCurAlarm; +import com.storeroom.modules.storeroom3d.service.dto.GetCurAlarmDto; +import org.mapstruct.Mapper; +import org.mapstruct.ReportingPolicy; + +@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) +public interface GetCurAlarmMapper extends BaseMapper { +}