diff --git a/src/main/java/com/zsc/edu/gateway/modules/iot/device/dto/DeviceDto.java b/src/main/java/com/zsc/edu/gateway/modules/iot/device/dto/DeviceDto.java index 19d2e91..b065962 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/iot/device/dto/DeviceDto.java +++ b/src/main/java/com/zsc/edu/gateway/modules/iot/device/dto/DeviceDto.java @@ -64,5 +64,14 @@ public class DeviceDto { */ public String previewId; + /** + * 设备经度 + */ + public Double longitude; + + /** + * 设备纬度 + */ + public Double latitude; } diff --git a/src/main/java/com/zsc/edu/gateway/modules/iot/device/entity/Device.java b/src/main/java/com/zsc/edu/gateway/modules/iot/device/entity/Device.java index 7c673bb..3bb6d06 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/iot/device/entity/Device.java +++ b/src/main/java/com/zsc/edu/gateway/modules/iot/device/entity/Device.java @@ -121,7 +121,11 @@ public class Device extends BaseEntity { * 设备预览图附件ID */ public String previewId; -//TODO 设备运行状态 + + /** + * 设备是否正常运行 + */ + public Boolean deviceState; public enum Status implements IEnum, IState { UNACTIVATED(0, "未激活"), @@ -147,5 +151,6 @@ public class Device extends BaseEntity { return this.description; } } + } diff --git a/src/main/java/com/zsc/edu/gateway/modules/iot/record/service/impl/RecordDataServiceImpl.java b/src/main/java/com/zsc/edu/gateway/modules/iot/record/service/impl/RecordDataServiceImpl.java index 53e9fd3..640e1f8 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/iot/record/service/impl/RecordDataServiceImpl.java +++ b/src/main/java/com/zsc/edu/gateway/modules/iot/record/service/impl/RecordDataServiceImpl.java @@ -3,6 +3,7 @@ package com.zsc.edu.gateway.modules.iot.record.service.impl; import com.alibaba.fastjson2.JSONException; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -36,8 +37,6 @@ import java.util.List; @Service public class RecordDataServiceImpl extends ServiceImpl implements RecordDataService { - @Resource - private final ApplicationEventPublisher eventPublisher; @Resource private final DeviceRepository deviceRepository; @Resource @@ -60,7 +59,10 @@ public class RecordDataServiceImpl extends ServiceImpl processParam(recordData, param, event)); + for (CompareParam param : event.getOutputs()) { + boolean isProcessed = processParam(recordData, param, event); + if (isProcessed) { + processed = true; + break; // 找到并处理完第一个参数后跳出内层循环 + } + } + if (processed) { + break; // 如果已经处理过参数,跳出外层循环 + } } + + return processed; } /** @@ -123,11 +140,11 @@ public class RecordDataServiceImpl extends ServiceImpl value.doubleValue() > defaultValue.doubleValue(); @@ -169,7 +186,14 @@ public class RecordDataServiceImpl extends ServiceImpl() + .eq(Device::getClientId, clientId) + .set(Device::getDeviceState, isDeviceState)); + } } diff --git a/src/main/java/com/zsc/edu/gateway/modules/iot/tsl/controller/EventController.java b/src/main/java/com/zsc/edu/gateway/modules/iot/tsl/controller/EventController.java index 4e6c09d..8c581ec 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/iot/tsl/controller/EventController.java +++ b/src/main/java/com/zsc/edu/gateway/modules/iot/tsl/controller/EventController.java @@ -79,7 +79,7 @@ public class EventController { public IPage eventLogPage(Page page, @PathVariable("clientId") String clientId) { return eventLogRepository.selectPage(page, new LambdaQueryWrapper().eq(EventLog::getRecordId, clientId)); } -//TODO 详情接口 + /** * 删除事件 diff --git a/src/main/java/com/zsc/edu/gateway/modules/iot/tsl/repo/EventLogRepository.java b/src/main/java/com/zsc/edu/gateway/modules/iot/tsl/repo/EventLogRepository.java index 74c7409..52b3e6d 100644 --- a/src/main/java/com/zsc/edu/gateway/modules/iot/tsl/repo/EventLogRepository.java +++ b/src/main/java/com/zsc/edu/gateway/modules/iot/tsl/repo/EventLogRepository.java @@ -11,4 +11,5 @@ public interface EventLogRepository extends BaseMapper { @Select("select * from iot_event_log where client_id=#{clientId}") List selectByClientId(@Param("clientId") String clientId); + } diff --git a/src/main/resources/db/gateway.sql b/src/main/resources/db/gateway.sql index 968f005..4ec0671 100644 --- a/src/main/resources/db/gateway.sql +++ b/src/main/resources/db/gateway.sql @@ -943,3 +943,8 @@ ALTER TABLE iot_param ALTER TABLE iot_param ADD COLUMN default_value DOUBLE PRECISION; + + +ALTER TABLE iot_event + ALTER COLUMN enabled SET DEFAULT true; + diff --git a/src/main/resources/mappers/iot/EventLogMapper.xml b/src/main/resources/mappers/iot/EventLogMapper.xml index 0c783f2..0859425 100644 --- a/src/main/resources/mappers/iot/EventLogMapper.xml +++ b/src/main/resources/mappers/iot/EventLogMapper.xml @@ -23,4 +23,5 @@ iot_record_data ird where iel.record_id = ird.id + \ No newline at end of file