fuliqi
2024-09-13 25163bd6852fdc8ace11fd5c3f60260b7e25798e
ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
@@ -28,10 +28,8 @@
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.time.LocalDate;
import java.util.*;
/**
 * 设备资产Service业务层处理
@@ -70,22 +68,21 @@
    @Override
    @DataScope(deptAlias = "d",userAlias = "u")
    public List<TMonitorVO> selectTMonitorList(TMonitorVO tMonitor) {
        List<TMonitorVO> monitors = tMonitorMapper.selectTMonitorList(tMonitor);
        // 异常设备
        // 异常恢复监控
        if (Objects.equals(tMonitor.getRecovery(), 1L)) {
            String time = configService.selectConfigByKey("abnormal.equipment.continuous.attention.time");
            if (StringUtils.isBlank(time)) {
                throw new RuntimeException("请配置异常设备连续关注时间");
            }
            List<TMonitorVO> recoveryMonitors = tMonitorMapper.selectRecoveryMonitor(time);
            monitors.addAll(recoveryMonitors);
            tMonitor.setTime(time);
        }
        List<TMonitorVO> monitors = tMonitorMapper.selectTMonitorList(tMonitor);
        // 视频监控设备
        if (Objects.equals(tMonitor.getCameraFunType(), "1")) {
            monitors.forEach(monitor -> {
                Query query = new Query();
                query.addCriteria(Criteria.where("deviceId").is(monitor.getSerialNumber())
                        // .and("mongoCreateTime").is(LocalDate.now())
                         .and("mongoCreateTime").is(LocalDate.now())
                );
                VideoOnlineResult one = mongoTemplate.findOne(query, VideoOnlineResult.class);
                if (one != null) {
@@ -101,7 +98,7 @@
            monitors.forEach(monitor -> {
                Query query = new Query();
                query.addCriteria(Criteria.where("externalIndexCode").is(monitor.getSerialNumber())
                        // .and("mongoCreateTime").is(LocalDate.now())
                         .and("mongoCreateTime").is(LocalDate.now())
                );
                VehicleDeviceInspectionResult one = mongoTemplate.findOne(query, VehicleDeviceInspectionResult.class);
                VehicleDeviceSamplingResult two = mongoTemplate.findOne(query, VehicleDeviceSamplingResult.class);
@@ -123,7 +120,7 @@
            monitors.forEach(monitor -> {
                Query query = new Query();
                query.addCriteria(Criteria.where("externalIndexCode").is(monitor.getSerialNumber())
                        // .and("mongoCreateTime").is(LocalDate.now())
                         .and("mongoCreateTime").is(LocalDate.now())
                );
                FaceDeviceInspectionResult one = mongoTemplate.findOne(query, FaceDeviceInspectionResult.class);
                FaceDeviceSamplingResult two = mongoTemplate.findOne(query, FaceDeviceSamplingResult.class);
@@ -199,8 +196,8 @@
    @Override
    @DataScope(deptAlias = "d",userAlias = "u")
    public Map<String, String> recoveryException(TMonitorVO monitor) {
        String time = configService.selectConfigByKey("abnormal.equipment.continuous.attention.time");
        monitor.setTime(time);
//        String time = configService.selectConfigByKey("abnormal.equipment.continuous.attention.time");
//        monitor.setTime(time);
        return tMonitorMapper.recoveryException(monitor);
    }