liujie
2026-02-05 b5a5e43e2ea7af773dba1ee99c2194be61515df8
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/DeviceUsageServiceImpl.java
@@ -156,6 +156,12 @@
                        .in(Task::getId, checkTaskIds)
                        .isNotNull(Task::getProjectId))
                .stream().collect(Collectors.groupingBy(Task::getProjectId));
        Map<Integer, Task> taskRecordMap = taskMapper.selectList(new LambdaQueryWrapper<Task>()
                        .ge(Task::getCreateTime, startTime)
                        .le(Task::getCreateTime, LocalDateTime.now())
                        .in(Task::getId, checkTaskIds)
                        .isNotNull(Task::getProjectId))
                .stream().collect(Collectors.toMap(Task::getId,e->e));
        Map<Integer, List<EvalResult>> resultMap = evalResultMapper.selectList(new LambdaQueryWrapper<EvalResult>()
                .in(EvalResult::getCheckTaskId, checkTaskIds)
        ).stream().collect(Collectors.groupingBy(EvalResult::getProjectId));
@@ -209,7 +215,10 @@
                List<Record> recordList = records.stream().filter(e -> taskIds.contains(e.getCheckTaskId())).toList();
                Record record = recordList.stream().max(Comparator.comparing(Record::getCreateTime)).orElse(null);
                if (record != null) {
                    deviceListVo.setCheckTime(record.getCreateTime());
                    Task task = taskRecordMap.get(record.getCheckTaskId());
                    if (task!=null){
                        deviceListVo.setCheckTime(task.getCreateTime());
                    }
                    deviceListVo.setCheckResult("已检查");
                } else {
                    deviceListVo.setCheckTime(null);
@@ -351,13 +360,17 @@
                .eq(Record::getDeleted, false);
        List<Record> records = recordMapper.selectList(recordWrapper);
        List<Integer> deviceIdsRecord = records.stream().map(Record::getDeviceId).distinct().collect(Collectors.toList());
        for (EntrustDeviceListVo deviceListVo : deviceList) {
            if (deviceIdsRecord.contains(deviceListVo.getId())) {
                Record record = records.stream().filter(e -> e.getDeviceId().equals(deviceListVo.getId())).findFirst()
                        .orElse(null);
                if (record != null) {
                    Task task = taskMapper.selectById(record.getCheckTaskId());
                    if (task != null){
                        deviceListVo.setCheckTime(task.getCreateTime());
                    }
                    deviceListVo.setCheckResult("已检查");
                    deviceListVo.setCheckTime(record.getCreateTime());
                }
            } else {
                deviceListVo.setCheckResult("未检查");