From c3fd4effdef0cc5955f89b5df279b14841e857f5 Mon Sep 17 00:00:00 2001
From: qixiaoning <jony.kee@outlook.com>
Date: 星期二, 11 十一月 2025 11:21:36 +0800
Subject: [PATCH] 修改权限,修复删除rag记录问题

---
 chanmanage-service/models/camera.go |  108 +++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 75 insertions(+), 33 deletions(-)

diff --git a/chanmanage-service/models/camera.go b/chanmanage-service/models/camera.go
index 953c452..09f9a1d 100644
--- a/chanmanage-service/models/camera.go
+++ b/chanmanage-service/models/camera.go
@@ -1,33 +1,75 @@
-package models
-
-import (
-	"fmt"
-	"strings"
-	"vamicro/camera-common/models"
-)
-
-// 鏌ヨ鍒楄〃鏁版嵁
-func GetListTask(ids []string) (items []models.Task, err error) {
-
-	//idList := strings.Join(ids, ",")
-	idList := "'" + strings.Join(ids, "','") + "'"
-	// 涓绘煡璇QL
-	//sqlStr := `select c.task_id, c.task_name from mal_task_video_link a left join mal_smart_task c on a.task_id = c.task_id where a.video_id in(?) ORDER BY a.task_id desc`
-	sqlStr := fmt.Sprintf(`
-	    SELECT c.task_id, c.task_name
-	    FROM mal_task_video_link a
-	    LEFT JOIN mal_smart_task c ON a.task_id = c.task_id
-	    WHERE a.video_id IN (%s)
-	    ORDER BY a.task_id DESC
-	`, idList)
-	if err := db2.Raw(sqlStr).Scan(&items).Error; err != nil {
-		fmt.Println(err.Error())
-		return nil, err
-	}
-	return
-}
-
-// 鑾峰彇浠诲姟缁熻
-func GetTasks() (items []models.Task, err error) {
-
-}
+package models
+
+import (
+	"fmt"
+	"strings"
+	"vamicro/camera-common/models"
+)
+
+// 鏌ヨ鍒楄〃鏁版嵁
+func GetListTask(ids []string) (items []models.TaskM, err error) {
+
+	//idList := strings.Join(ids, ",")
+	idList := "'" + strings.Join(ids, "','") + "'"
+	// 涓绘煡璇QL
+	//sqlStr := `select c.task_id, c.task_name from mal_task_video_link a left join mal_smart_task c on a.task_id = c.task_id where a.video_id in(?) ORDER BY a.task_id desc`
+	sqlStr := fmt.Sprintf(`
+	    SELECT c.task_id, c.task_name,c.task_description,b.dict_value as event_name
+	    FROM mal_task_video_link a
+	    LEFT JOIN mal_smart_task c ON a.task_id = c.task_id
+		LEFT JOIN mal_dict_type b ON b.dict_id = c.event_level
+	    WHERE a.video_id IN (%s)
+	    ORDER BY a.task_id DESC
+	`, idList)
+	if err := db2.Raw(sqlStr).Scan(&items).Error; err != nil {
+		fmt.Println(err.Error())
+		return nil, err
+	}
+	return
+}
+
+func GetAllRule() map[int64]string {
+	var items []models.RuleOption
+	sqlStr := `
+	    SELECT a.file_name,a.rule_id,b.task_id
+	    FROM mal_warning_rule a
+	    LEFT JOIN mal_task_rule_link b ON a.rule_id = b.rule_id
+		WHERE task_id>0
+	`
+	if err := db2.Raw(sqlStr).Scan(&items).Error; err != nil {
+		fmt.Println(err.Error())
+		return nil
+	}
+
+	ruleMap := make(map[int64]string)
+	for _, d2 := range items {
+		if d2.TaskId > 0 {
+			ruleMap[d2.TaskId] = d2.FileName
+		}
+	}
+	return ruleMap
+}
+
+type VideoLink struct {
+	ID      int    `gorm:"column:id"       json:"id"`
+	VideoId string `gorm:"column:video_id" json:"videoId"`
+	TaskId  int    `gorm:"column:task_id"  json:"taskId"`
+}
+
+func GetTasks() map[string][]interface{} {
+
+	var lists []VideoLink
+	sqlStr := `select id,video_id,task_id from mal_task_video_link`
+	if err := db2.Raw(sqlStr).Scan(&lists).Error; err != nil {
+		fmt.Println(err.Error())
+		return nil
+	}
+
+	checkMap := make(map[string][]interface{})
+	for _, d2 := range lists {
+		if d2.VideoId != "" {
+			checkMap[d2.VideoId] = append(checkMap[d2.VideoId], d2)
+		}
+	}
+	return checkMap
+}

--
Gitblit v1.8.0