From 397468ddc1191bf0ce9339e544ff345d1d4e6786 Mon Sep 17 00:00:00 2001
From: qixiaoning <jony.kee@outlook.com>
Date: 星期四, 11 九月 2025 11:33:10 +0800
Subject: [PATCH] 删除摄像机增加限制

---
 camera-service/controllers/area.go |   24 ++++++++++++++----------
 1 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/camera-service/controllers/area.go b/camera-service/controllers/area.go
index 07cd938..7cab804 100644
--- a/camera-service/controllers/area.go
+++ b/camera-service/controllers/area.go
@@ -1,17 +1,18 @@
 package controllers
 
 import (
-	"basic.com/pubsub/protomsg.git"
-	"basic.com/valib/bhomeclient.git"
-	"basic.com/valib/bhomedbapi.git"
-	"basic.com/valib/logger.git"
-	"github.com/satori/go.uuid"
 	"sort"
 	"strconv"
 	"strings"
 	"vamicro/camera-common/models"
 	"vamicro/camera-service/cache"
 	"vamicro/extend/util"
+
+	"basic.com/pubsub/protomsg.git"
+	"basic.com/valib/bhomeclient.git"
+	"basic.com/valib/bhomedbapi.git"
+	"basic.com/valib/logger.git"
+	uuid "github.com/satori/go.uuid"
 )
 
 type AreaController struct {
@@ -104,11 +105,14 @@
 		}
 	}
 
+	//鑾峰彇鐫f煡浠诲姟
+	tasks := models.GetTasks()
+
 	var totalAreas models.AreaList
 	totalAreas = rAreas
 	sort.Sort(totalAreas)
 	logger.Debug("len(rAreas):", len(rAreas))
-	arr := menuFormat(totalAreas, parentId, totalCams, treeType, ruleM)
+	arr := menuFormat(totalAreas, parentId, totalCams, treeType, tasks)
 
 	for _, camE := range totalCams {
 		if camE.Areaid == "0" {
@@ -119,7 +123,7 @@
 
 			if rows > 0 && e == nil {
 				isRunnig = camera.IsRunning
-				if crInfo, ok := ruleM[camera.Id]; ok && crInfo.Rules != nil && len(crInfo.Rules) > 0 && (camera.RunType == models.TYPE_RUNTYPE_POLL || camera.RunType == models.TYPE_RUNTYPE_REALTIME) {
+				if taskInfo, ok := tasks[camera.Id]; ok && taskInfo != nil && len(taskInfo) > 0 && (camera.RunType == models.TYPE_RUNTYPE_POLL || camera.RunType == models.TYPE_RUNTYPE_REALTIME) {
 					isAI = true
 				}
 			}
@@ -138,7 +142,7 @@
 }
 
 // 灏嗗尯鍩熷拰鎽勫儚鏈烘暟缁勮浆鎹㈢洰褰曟爲褰㈢粨鏋�
-func menuFormat(dbArr []models.Area, parentId string, dbCams []models.CameraTreeNode, treeType int, ruleM map[string]protomsg.CameraAndRules) []models.TreeMenu {
+func menuFormat(dbArr []models.Area, parentId string, dbCams []models.CameraTreeNode, treeType int, tasks map[string][]interface{}) []models.TreeMenu {
 	var arr []models.TreeMenu
 	for _, area := range dbArr {
 		if parentId == area.Parentid {
@@ -147,7 +151,7 @@
 			tmp.Type = "MENU"
 			tmp.Name = area.Name
 
-			sontmp := menuFormat(dbArr, area.Id, dbCams, treeType, ruleM)
+			sontmp := menuFormat(dbArr, area.Id, dbCams, treeType, tasks)
 			tmp.Areanodes = sontmp
 
 			for _, val := range dbCams {
@@ -162,7 +166,7 @@
 					rows, e := camera.SelectById(val.Id)
 					if rows > 0 && e == nil {
 						isRunnig = camera.IsRunning
-						if crInfo, ok := ruleM[camera.Id]; ok && crInfo.Rules != nil && len(crInfo.Rules) > 0 && (camera.RunType == models.TYPE_RUNTYPE_POLL || camera.RunType == models.TYPE_RUNTYPE_REALTIME) {
+						if taskInfo, ok := tasks[camera.Id]; ok && taskInfo != nil && len(taskInfo) > 0 && (camera.RunType == models.TYPE_RUNTYPE_POLL || camera.RunType == models.TYPE_RUNTYPE_REALTIME) {
 							isAI = true
 						}
 						//if camera.RunType == models.TYPE_RUNTYPE_POLL || camera.RunType == models.TYPE_RUNTYPE_REALTIME {

--
Gitblit v1.8.0