Browse Source

删除图表时,删除引用关系

xyxie 8 months ago
parent
commit
c41a0db1c9

+ 2 - 0
controllers/data_manage/chart_classify.go

@@ -709,6 +709,8 @@ func (this *ChartClassifyController) DeleteChartClassify() {
 				}
 			}
 		}
+		// 删除图表中的指标引用
+		_ = data_manage.DeleteEdbRelationByObjectId(req.ChartInfoId, utils.EDB_RELATION_CHART)
 		//新增操作日志
 		{
 			chartLog := new(data_manage.ChartInfoLog)

+ 2 - 1
controllers/sandbox/sandbox.go

@@ -637,7 +637,8 @@ func (this *SandboxController) Delete() {
 		br.Msg = err.Error()
 		return
 	}
-
+	// 删除图表中的指标引用
+	_ = data_manage.DeleteEdbRelationByObjectId(req.SandboxId, utils.EDB_RELATION_SANDBOX)
 	msg := "删除成功"
 	br.Ret = 200
 	br.Success = true

+ 8 - 0
models/data_manage/edb_info_relation.go

@@ -219,6 +219,14 @@ func DeleteEdbRelationByObjectIds(referObjectIds []int, referObjectType int) (er
 	return
 }
 
+// DeleteEdbRelationByObjectId 删除指标引用内容
+func DeleteEdbRelationByObjectId(referObjectId int, referObjectType int) (err error) {
+	o := orm.NewOrm()
+	sql := ` DELETE FROM edb_info_relation WHERE refer_object_id =? AND refer_object_type=?`
+	_, err = o.Raw(sql, referObjectId, referObjectType).Exec()
+	return
+}
+
 type BaseRelationEdbInfo struct {
 	EdbInfoId       int
 	ClassifyId      int    `description:"指标分类id"`