zhangnaisong
2024-04-28 686c587744cf0933b4022a1b741f8f50658e2632
ard-work/src/main/java/com/ruoyi/inspect/controller/TaskController.java
@@ -74,7 +74,7 @@
    @ApiOperation("手动停止巡检")
    @GetMapping("/stopTask/{taskId}")
    AjaxResult stopTask(@PathVariable String taskId) {
        // 停止巡检任务
        // 停止巡检任务
        inspectionTaskManager.stopInspectionTask(taskId);
        return AjaxResult.success();
    }
@@ -107,21 +107,18 @@
    @ApiOperation("查询范围内的井")
    @PostMapping("/getWellListByPolygon")
    AjaxResult getWellListByPolygon(@RequestBody List<Point> points) {
        List<List<ArdAlarmpointsWell>> listOfLists = new ArrayList<>();
        List<SysDept> depts = deptService.selectDeptList(new SysDept());
        depts.stream().forEach(dept -> {
            ArdAlarmpointsWell ardAlarmpointsWell = new ArdAlarmpointsWell();
            ardAlarmpointsWell.setDeptId(dept.getDeptId());
            List<ArdAlarmpointsWell> wellList = ardAlarmpointsWellService.selectArdAlarmpointsWellList(ardAlarmpointsWell);
            List<ArdAlarmpointsWell> wells = wellList.stream()
                    .filter(well -> well.getLongitude() != null && well.getLatitude() != null)
                    .filter(well -> GisUtil.isInPolygon(new Point(well.getLongitude(), well.getLatitude()), points)
            ).collect(Collectors.toList());
            listOfLists.add(wells);
        });
        List<ArdAlarmpointsWell> inPolygonWellList = listOfLists.stream()
        List<ArdAlarmpointsWell> inPolygonWellList = deptService.selectDeptList(new SysDept()).stream()
                .map(dept -> {
                    ArdAlarmpointsWell ardAlarmpointsWell = new ArdAlarmpointsWell();
                    ardAlarmpointsWell.setDeptId(dept.getDeptId());
                    return ardAlarmpointsWellService.selectArdAlarmpointsWellList(ardAlarmpointsWell).stream()
                            .filter(well -> well.getLongitude() != null && well.getLatitude() != null)
                            .filter(well -> GisUtil.isInPolygon(new Point(well.getLongitude(), well.getLatitude()), points))
                            .collect(Collectors.toList());
                })
                .flatMap(List::stream)
                .collect(Collectors.toList());
        return AjaxResult.success(inPolygonWellList);
    }
}