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-common/models/task.go         |   10 ++++++++++
 camera-service/controllers/camera.go |    7 +++++++
 sysinfo-service/service/proc.go      |   31 ++++++++++++++++++-------------
 3 files changed, 35 insertions(+), 13 deletions(-)

diff --git a/camera-common/models/task.go b/camera-common/models/task.go
index e17a7c7..5d8d915 100644
--- a/camera-common/models/task.go
+++ b/camera-common/models/task.go
@@ -65,3 +65,13 @@
 	}
 	return
 }
+
+// 鏍规嵁cid鏌ヨ瑙嗛
+func GetTaskTotal(cid string) (total int, err error) {
+	sql := "select count(1) as total from mal_task_video_link where video_id='" + cid + "'"
+	err = db.Raw(sql).Count(&total).Error
+	if err != nil {
+		return 0, err
+	}
+	return total, nil
+}
diff --git a/camera-service/controllers/camera.go b/camera-service/controllers/camera.go
index d3dbb24..c71d8f0 100644
--- a/camera-service/controllers/camera.go
+++ b/camera-service/controllers/camera.go
@@ -129,6 +129,13 @@
 	if cid == "" {
 		return &bhomeclient.Reply{Msg: "鍙傛暟鏈夎锛屾憚鍍忔満id涓嶈兘涓虹┖"}
 	}
+
+	//鍒ゆ柇鏄惁鏈夐厤缃换鍔�
+	total, _ := models.GetTaskTotal(cid)
+	if total > 0 {
+		return &bhomeclient.Reply{Success: false, Msg: "璇峰厛鍒犻櫎閰嶇疆鐨勪换鍔�"}
+	}
+
 	rows, _ := cam.Delete(cid)
 	if rows == 0 {
 		return &bhomeclient.Reply{Success: true, Msg: "璁板綍涓嶅瓨鍦�"}
diff --git a/sysinfo-service/service/proc.go b/sysinfo-service/service/proc.go
index bfe0d51..f1deff7 100644
--- a/sysinfo-service/service/proc.go
+++ b/sysinfo-service/service/proc.go
@@ -31,9 +31,12 @@
 }
 
 var ModleProc = map[string]string{
-	"python smart_detect.py":         "鐩爣妫�娴嬫ā鍨�",
-	"/usr/bin/python qwen_detect.py": "鍥剧墖瑙f瀽妯″瀷",
-	"python app.py":                  "瀵硅瘽妫�绱㈡ā鍨�",
+	"python smart_detect.py":          "鐩爣妫�娴嬫ā鍨�",
+	"/usr/bin/python smart_detect.py": "鐩爣妫�娴嬫ā鍨�",
+	"python qwen_detect.py":           "鍥剧墖瑙f瀽妯″瀷",
+	"/usr/bin/python qwen_detect.py":  "鍥剧墖瑙f瀽妯″瀷",
+	"python app.py":                   "瀵硅瘽妫�绱㈡ā鍨�",
+	"/usr/bin/python app.py":          "瀵硅瘽妫�绱㈡ā鍨�",
 }
 
 type UsedMap map[int]int64
@@ -79,25 +82,27 @@
 
 	ps, _ := process.Processes()
 
-	for k, v := range ModleProc {
-		proc := Proc{
-			Name: k,
-			Desc: v,
-		}
-
-		for _, p := range ps {
+	for _, p := range ps {
+		for k, v := range ModleProc {
 			if name, err := p.Cmdline(); err == nil {
+
 				if name == k {
+					proc := Proc{
+						Name: k,
+						Desc: v,
+						Cpu:  0,
+						Mem:  0,
+						Gpu:  0,
+					}
 					proc.Pid = p.Pid
 					proc.Cpu, _ = p.CPUPercent()
 					proc.Mem, _ = p.MemoryPercent()
 					proc.Gpu = gpuPer.Get(int(p.Pid))
-					break
+					rsp = append(rsp, proc)
 				}
+
 			}
 		}
-
-		rsp = append(rsp, proc)
 	}
 
 	return

--
Gitblit v1.8.0