zxl
2025-12-02 4f2c9b54c8d0f358f3b7c6821f091a493b24e006
ycl-server/src/main/java/com/ycl/task/UYTask.java
@@ -194,6 +194,10 @@
        }
        // 先查出设备IP集合,剔除掉在线情况是未知的,并且只检测正在考核的设备避免多余工单
        // Todo
        //  1.个别录像不存在是否是因因为点位同步优云后,一部分点位被改为了未在运营范围的原因,
        //  2.导致pingOnline时查询运维点位获得ip时不包含在内,导致没有对应设备的数据
        //  3.当前问题暂无能解决的方法,
        List<TMonitorResult> monitorList = monitorMapper.getDistinctIP();
        //补充错误时间点
        Query onlineQuery = new Query(Criteria.where("mongoCreateTime").gte(DateUtils.getDayStart(new Date())).lt(DateUtils.getDayEnd(new Date())));
@@ -251,10 +255,10 @@
        //查出数据库纯车辆或纯人脸设备
//        List<String> serialNumbers = monitorMapper.selectCarOrFace().stream().map(TMonitor::getSerialNumber).collect(Collectors.toList());
        dataList.forEach(item->{
            if ("DX_长征大道贡兴路路口东南方向_枪机_细节".equals(item.getName())){
                log.info("2.数据流入:{}",item);
                log.info("打印状态pingOnline:{}",item.getPingOnline());
            }
//            if ("DX_长征大道贡兴路路口东南方向_枪机_细节".equals(item.getName())){
//                log.info("2.数据流入:{}",item);
//                log.info("打印状态pingOnline:{}",item.getPingOnline());
//            }
            if(item.getPingOnline()) {
                onLineList.add(item.getIp());
            } else if(!item.getPingOnline()) {
@@ -324,6 +328,13 @@
                .values()
                .stream()
                .map(TMonitorResult::getWorkOrder)
                .collect(Collectors.toMap(
                        WorkOrder::getSerialNumber,  // 按serialNumber去重
                        Function.identity(),
                        (existing, replacement) -> replacement  // 重复时保留最后一个,可根据业务调整
                ))
                .values()
                .stream()
                .collect(Collectors.toList());
        if (!CollectionUtils.isEmpty(workOrderList)) {
            log.error("pointOnline获得插入工单:{}",workOrderList);