xiangpei
2024-08-31 df6bc44422110fa911c8666dfb4d97dcabb0328b
Merge remote-tracking branch 'origin/master'
3个文件已修改
22 ■■■■ 已修改文件
ycl-server/src/main/java/com/ycl/task/MonitorTask.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/task/OsdTask.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/resources/mapper/zgyw/WorkOrderMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-server/src/main/java/com/ycl/task/MonitorTask.java
@@ -160,6 +160,7 @@
        TMonitor monitor = new TMonitor();
        if (monitorVOMap.containsKey(result.getSerialNumber().getValue())) {
            monitor.setId(monitorVOMap.get(result.getSerialNumber().getValue()).getId());
            monitor.setDeviceType(monitorVOMap.get(result.getSerialNumber().getValue()).getDeviceType());
        }
        monitor.setSerialNumber(result.getSerialNumber().getValue());
ycl-server/src/main/java/com/ycl/task/OsdTask.java
@@ -62,14 +62,6 @@
    @Autowired
    private UYErrorTypeCheckService uyErrorTypeCheckService;
    private static final ExecutorService executorService = new ThreadPoolExecutor(8,
            24,
            5000,
            TimeUnit.SECONDS,
            new ArrayBlockingQueue<>(1000),
            new ThreadPoolExecutor.CallerRunsPolicy()
    );
    /**
     * 通过查mongoDB每日一机一档数据获取设备ip
     * 通过设备ip、品牌调用不同api获取osd信息
@@ -80,7 +72,7 @@
        log.info("开始获取OSD");
//            YSApi.getOsd("51.95.66.42",YSUserName,YSPassword);
        DHApi.getOsd("51.95.67.189",DHUserName,DHPassword);
//        DHApi.getOsd("51.95.67.189",DHUserName,DHPassword);
        //批量修改海康品牌集合
        List<String> hkList = new ArrayList<>();
        //批量修改大华品牌集合
@@ -94,9 +86,15 @@
        //需要考核的数据
        List<String> serialNumbers = oneMachineFileResults.stream().map(result -> result.getSerialNumber().getValue()).collect(Collectors.toList());
        if(!CollectionUtils.isEmpty(serialNumbers)) {
            ExecutorService executorService = new ThreadPoolExecutor(8,
                    24,
                    5000,
                    TimeUnit.SECONDS,
                    new ArrayBlockingQueue<>(1000),
                    new ThreadPoolExecutor.CallerRunsPolicy()
            );
            List<TMonitor> monitors = monitorMapper.selectByNumbers(serialNumbers);
            monitors = monitors.stream().filter(monitor -> !StringUtils.isEmpty(monitor.getIp()) && !"127.0.0.1".equals(monitor.getIp())).collect(Collectors.toList());
//            monitors = monitors.stream().filter(monitor -> monitor.getId() < 7000).collect(Collectors.toList());
            log.info("处理数据大小{}", monitors.size());
            for (TMonitor monitor : monitors) {
                executorService.submit(() -> {
@@ -126,6 +124,7 @@
                    }
                });
            }
            //不再接收新任务
            executorService.shutdown();
            try {
                // 等待所有任务完成,最多等待10秒(可以根据需要调整)
ycl-server/src/main/resources/mapper/zgyw/WorkOrderMapper.xml
@@ -240,7 +240,7 @@
        SELECT wo.id,wo.work_order_no,wo.unit_id,woet.error_name as errorType,woet.distribute_time,woar.create_time as auditTime
        FROM t_work_order wo
        LEFT JOIN t_work_order_error_type woet ON woet.work_order_no = wo.work_order_no
        LEFT JOIN t_work_order_auditing_record woar ON woar.work_order_id = wo.id
        LEFT JOIN t_work_order_auditing_record woar ON woar.work_order_no = wo.work_order_no
        WHERE wo.deleted = 0 AND wo.status = #{status}  AND woar.result = #{auditStatus}
        AND wo.deduct = 0 AND woar.create_time between #{startTime} and #{endTime}
    </select>