From 38f29e38fcc668171dc05c53d40a36b895c86102 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: 星期四, 10 十月 2024 13:34:28 +0800
Subject: [PATCH] init

---
 ard-work/src/main/java/com/ruoyi/inspect/controller/TaskController.java |   74 +++++++++++++++++++++++++++++++++----
 1 files changed, 66 insertions(+), 8 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/inspect/controller/TaskController.java b/ard-work/src/main/java/com/ruoyi/inspect/controller/TaskController.java
index c3ab320..550ce20 100644
--- a/ard-work/src/main/java/com/ruoyi/inspect/controller/TaskController.java
+++ b/ard-work/src/main/java/com/ruoyi/inspect/controller/TaskController.java
@@ -1,18 +1,25 @@
 package com.ruoyi.inspect.controller;
 
 
+import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell;
+import com.ruoyi.alarmpoints.well.service.IArdAlarmpointsWellService;
 import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.inspect.service.IArdVideoInspectTaskService;
 import com.ruoyi.inspect.service.impl.InspectionTaskManager;
+import com.ruoyi.system.service.ISysDeptService;
+import com.ruoyi.utils.gis.GisUtil;
+import com.ruoyi.utils.gis.Point;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Set;
+import java.util.stream.Collectors;
 
 /**
  * @Description: 宸℃浠诲姟controller
@@ -29,19 +36,35 @@
     private InspectionTaskManager inspectionTaskManager;
     @Autowired
     IArdVideoInspectTaskService ardVideoInspectTaskService;
+    @Autowired
+    IArdAlarmpointsWellService ardAlarmpointsWellService;
+    @Autowired
+    private ISysDeptService deptService;
+
     @PreAuthorize("@ss.hasPermi('inspect:control:manual')")
     @GetMapping("/startTask/{taskId}")
     @ApiOperation("鎵嬪姩寮�鍚贰妫�")
     AjaxResult startTask(@PathVariable String taskId) {
         boolean enablemanualTask = ardVideoInspectTaskService.isEnablemanualTask(taskId);
-        if (enablemanualTask)
-        {
+        if (enablemanualTask) {
             // 寮�鍚贰妫�浠诲姟
             inspectionTaskManager.startInspectionTask(taskId);
             return AjaxResult.success();
+        } else {
+            return AjaxResult.error();
         }
-        else
-        {
+
+    }
+
+    @GetMapping("/startTask/{taskId}/noPerm")
+    @ApiOperation("鎵嬪姩寮�鍚贰妫�-涓嶆牎楠屾潈闄�")
+    AjaxResult startTaskNoPerm(@PathVariable String taskId) {
+        boolean enablemanualTask = ardVideoInspectTaskService.isEnablemanualTask(taskId);
+        if (enablemanualTask) {
+            // 寮�鍚贰妫�浠诲姟
+            inspectionTaskManager.startInspectionTask(taskId);
+            return AjaxResult.success();
+        } else {
             return AjaxResult.error();
         }
 
@@ -51,10 +74,19 @@
     @ApiOperation("鎵嬪姩鍋滄宸℃")
     @GetMapping("/stopTask/{taskId}")
     AjaxResult stopTask(@PathVariable String taskId) {
+        // 鍋滄宸℃浠诲姟 
+        inspectionTaskManager.stopInspectionTask(taskId);
+        return AjaxResult.success();
+    }
+
+    @ApiOperation("鎵嬪姩鍋滄宸℃-涓嶆牎楠屾潈闄�")
+    @GetMapping("/stopTask/{taskId}/noPerm")
+    AjaxResult stopTaskNoPerm(@PathVariable String taskId) {
         // 鍋滄宸℃浠诲姟
         inspectionTaskManager.stopInspectionTask(taskId);
         return AjaxResult.success();
     }
+
     @PreAuthorize("@ss.hasPermi('inspect:control:manual')")
     @ApiOperation("鏌ヨ宸插惎鍔ㄤ换鍔�")
     @GetMapping("/getTaskList")
@@ -63,4 +95,30 @@
         Set<String> taskIds = inspectionTaskManager.getTaskMap().keySet();
         return AjaxResult.success(taskIds);
     }
+
+    @ApiOperation("鏌ヨ宸插惎鍔ㄤ换鍔�-涓嶆牎楠屾潈闄�")
+    @GetMapping("/getTaskList/noPerm")
+    AjaxResult getTaskListNoPerm() {
+        // 鍋滄宸℃浠诲姟
+        Set<String> taskIds = inspectionTaskManager.getTaskMap().keySet();
+        return AjaxResult.success(taskIds);
+    }
+
+    @ApiOperation("鏌ヨ鑼冨洿鍐呯殑浜�")
+    @PostMapping("/getWellListByPolygon")
+    AjaxResult getWellListByPolygon(@RequestBody List<Point> points) {
+        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);
+    }
 }

--
Gitblit v1.9.3