From bc15b194742ece3ec676886a4552e415060a90b0 Mon Sep 17 00:00:00 2001 From: YGXB_net Date: Thu, 9 Jul 2026 00:21:04 +0800 Subject: [PATCH] =?UTF-8?q?feat(data):=20=E6=B7=BB=E5=8A=A0=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E4=B8=8D=E5=8E=BB=E9=87=8D=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在数据控制器中引入去重对象逻辑 - 根据去重对象配置决定是否执行去重操作 - 当去重对象为 false 时不进行去重直接写入数据库 - 在管理界面令牌管理页面添加不去重选项 - 表格中显示去重对象时将 false 显示为不去重中文描述 --- internal/controller/dataController.go | 17 ++++++++++++++++- web/src/views/admin/TokenManageView.vue | 5 ++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/internal/controller/dataController.go b/internal/controller/dataController.go index 2f75af2..831ea57 100644 --- a/internal/controller/dataController.go +++ b/internal/controller/dataController.go @@ -3,6 +3,7 @@ package controller import ( "dypid/internal/db" "dypid/internal/global" + "dypid/internal/model" "fmt" "net/http" "strings" @@ -41,12 +42,26 @@ func WriteDataHandler(c *gin.Context) { return } - //数据获取 + //获取去重对象 dedupObject, err := db.GetDedupObject(input.Token) if err != nil { c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) return } + + //判断数据是否需要去重 + //如果数据不需要去重则直接写入数据库 + if dedupObject == "false" { + global.RDB.LPush(global.RCtx, fmt.Sprintf("list:%s", input.Token), input.Data) + c.JSON(http.StatusOK, model.APIResponse{ + Code: 200, + Message: "数据写入成功", + }) + return + } + + //数据要去重,下面函数会执行 + //获取数据索引 dataIndex, err := getDataIndex(input.Token) if err != nil { c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) diff --git a/web/src/views/admin/TokenManageView.vue b/web/src/views/admin/TokenManageView.vue index 43a7a04..0c5d562 100644 --- a/web/src/views/admin/TokenManageView.vue +++ b/web/src/views/admin/TokenManageView.vue @@ -43,6 +43,7 @@ const clear = () => { } const options = [ + {value: 'false', label: '不用去重'}, {value: 'uid', label: 'uid'}, {value: 'secid', label: 'secid'}, {value: 'pid', label: 'pid'}, @@ -234,7 +235,9 @@ onMounted(() => {