From 686c587744cf0933b4022a1b741f8f50658e2632 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期日, 28 四月 2024 15:40:19 +0800
Subject: [PATCH] 视频标签提交

---
 ard-work/src/main/java/com/ruoyi/inspect/controller/TaskController.java |   87 ++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 76 insertions(+), 11 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 27cf26f..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,24 +1,28 @@
 package com.ruoyi.inspect.controller;
 
-import com.ruoyi.common.annotation.Anonymous;
+
+import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell;
+import com.ruoyi.alarmpoints.well.service.IArdAlarmpointsWellService;
 import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.inspect.domain.ArdVideoInspectTask;
+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.Map;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Set;
+import java.util.stream.Collectors;
 
 /**
- * @Description: 宸℃浠诲姟
+ * @Description: 宸℃浠诲姟controller
  * @ClassName: TaskController
  * @Author: 鍒樿嫃涔�
  * @Date: 2023骞�06鏈�01鏃�9:19
@@ -30,24 +34,59 @@
 public class TaskController {
     @Autowired
     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) {
-        // 寮�鍚贰妫�浠诲姟
-        inspectionTaskManager.startInspectionTask(taskId);
-        return AjaxResult.success();
+        boolean enablemanualTask = ardVideoInspectTaskService.isEnablemanualTask(taskId);
+        if (enablemanualTask) {
+            // 寮�鍚贰妫�浠诲姟
+            inspectionTaskManager.startInspectionTask(taskId);
+            return AjaxResult.success();
+        } else {
+            return AjaxResult.error();
+        }
+
+    }
+
+    @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();
+        }
+
     }
 
     @PreAuthorize("@ss.hasPermi('inspect:control:manual')")
     @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")
@@ -56,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