diff --git a/src/main/java/com/xmgl/recognition/modules/admin/controller/HardWareCallbackController.java b/src/main/java/com/xmgl/recognition/modules/admin/controller/HardWareCallbackController.java index 2e52bbd..86f51dd 100644 --- a/src/main/java/com/xmgl/recognition/modules/admin/controller/HardWareCallbackController.java +++ b/src/main/java/com/xmgl/recognition/modules/admin/controller/HardWareCallbackController.java @@ -5,11 +5,11 @@ import cn.xuyanwu.spring.file.storage.FileStorageService; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.xmgl.recognition.jeecg.common.api.vo.Result; import com.xmgl.recognition.jeecg.common.util.DateUtil; +import com.xmgl.recognition.modules.admin.entity.Algorithm; import com.xmgl.recognition.modules.admin.entity.Device; +import com.xmgl.recognition.modules.admin.entity.DeviceAlgorithm; import com.xmgl.recognition.modules.admin.entity.SystemDictData; -import com.xmgl.recognition.modules.admin.service.IDeviceService; -import com.xmgl.recognition.modules.admin.service.IFileDetailService; -import com.xmgl.recognition.modules.admin.service.ISystemDictDataService; +import com.xmgl.recognition.modules.admin.service.*; import com.xmgl.recognition.modules.enterprise.entity.DeviceAlarm; import com.xmgl.recognition.modules.enterprise.service.IDeviceAlarmService; import com.xmgl.recognition.util.CommonUtil; @@ -53,7 +53,7 @@ public class HardWareCallbackController { private IDeviceAlarmService deviceAlarmService; @Autowired - private ISystemDictDataService systemDictDataService; + private IAlgorithmService algorithmService; /** * AI设备报警信息上报 @@ -63,15 +63,16 @@ public class HardWareCallbackController { @ApiOperation(value = " AI设备报警信息上报", notes = "AI设备报警信息上报" , httpMethod="POST") @PostMapping(value = "/saveHardWareAlarm") public Result saveHardWareAlarm(@RequestBody Map map) { - // 查询字典类型确认报警类型 - List systemDictDataList = systemDictDataService.getByType("ai_alarm_type"); - List dictData = systemDictDataList.stream().filter(d -> d.getDictLabel().equals(MapUtils.getInteger(map, "type"))).collect(Collectors.toList()); - if (dictData.size() == 0) { + String hardwareId = MapUtils.getString(map, "hardwareId"); + // 确认报警类型 + List algorithmList = algorithmService.list(); + List algorithm = algorithmList.stream().filter(d -> d.getSortIndex().equals(MapUtils.getInteger(map, "type"))).collect(Collectors.toList()); + if (algorithm.size() == 0) { return Result.error("报警类型错误!"); } // TODO 查询设备相关的项目信息 Device device = deviceService.getOne(Wrappers.lambdaQuery() - .eq(Device::getCode, MapUtils.getString(map, "hardwareId"))); + .eq(Device::getCode, hardwareId)); if (device == null) { return Result.error("该设备未绑定!"); } diff --git a/src/main/java/com/xmgl/recognition/modules/enterprise/controller/DeviceAlarmController.java b/src/main/java/com/xmgl/recognition/modules/enterprise/controller/DeviceAlarmController.java index cf1d474..8480599 100644 --- a/src/main/java/com/xmgl/recognition/modules/enterprise/controller/DeviceAlarmController.java +++ b/src/main/java/com/xmgl/recognition/modules/enterprise/controller/DeviceAlarmController.java @@ -6,7 +6,9 @@ import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.xmgl.recognition.annotation.OperLog; import com.xmgl.recognition.jeecg.common.util.PageUtil; +import com.xmgl.recognition.modules.admin.entity.Algorithm; import com.xmgl.recognition.modules.admin.entity.SystemDictData; +import com.xmgl.recognition.modules.admin.service.IAlgorithmService; import com.xmgl.recognition.modules.admin.service.ISystemDictDataService; import com.xmgl.recognition.util.CommonUtil; import com.xmgl.recognition.util.ParamEnum; @@ -67,7 +69,7 @@ public class DeviceAlarmController { private IDeviceAlarmService deviceAlarmService; @Autowired - private ISystemDictDataService systemDictDataService; + private IAlgorithmService algorithmService; /** * 分页列表查询 @@ -124,9 +126,10 @@ public class DeviceAlarmController { Map resultMap = new HashMap<>(); List deviceAlarmList = deviceAlarmService.getList(Wrappers.lambdaQuery() .between(DeviceAlarm::getReportTime, DateUtil.beginOfDay(new Date()), DateUtil.endOfDay(new Date()))); - List systemDictData = systemDictDataService.getByType(ParamEnum.SysDictType.AI_ALARM_TYPE.getValue()); + List algorithms = algorithmService.list(); deviceAlarmList.stream().forEach(d -> { - d.setTypeName(CommonUtil.getDictValue(systemDictData, d.getType())); + List algorithmList = algorithms.stream().filter(a -> a.getSortIndex().equals(d.getType())).collect(Collectors.toList()); + d.setTypeName(algorithmList.size() > 0 ? algorithmList.get(0).getTitle() : ""); }); resultMap.put("deviceAlarmList", deviceAlarmList); resultMap.put("todayAlarm", deviceAlarmService.count(Wrappers.lambdaQuery() @@ -156,11 +159,11 @@ public class DeviceAlarmController { Map> collect = list.stream().collect(Collectors.groupingBy(l -> l.getType())); Map resultMap = collect.entrySet().stream().collect(Collectors.toMap(Map.Entry::getKey, e -> e.getValue().size())); List> resultList = new ArrayList<>(); - List systemDictData = systemDictDataService.getByType(ParamEnum.SysDictType.AI_ALARM_TYPE.getValue()); - systemDictData.stream().forEach(s -> { + List algorithms = algorithmService.list(); + algorithms.stream().forEach(s -> { Map map1 = new HashMap<>(); - map1.put("type", s.getDictValue()); - map1.put("num", resultMap.get(s.getDictLabel())); + map1.put("type", s.getTitle()); + map1.put("num", resultMap.get(s.getSortIndex())); resultList.add(map1); }); /*resultMap.entrySet().stream().forEach(r -> {