From 3f118683ec4079f6ff4ccca8a8ed080219c1fb8a Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期一, 04 十二月 2023 19:27:23 +0800 Subject: [PATCH] 接收bashboard消息并存储 --- nsq/msg_handler.go | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/nsq/msg_handler.go b/nsq/msg_handler.go index a45aed8..423011f 100644 --- a/nsq/msg_handler.go +++ b/nsq/msg_handler.go @@ -433,3 +433,28 @@ } return nil } + +type Dashboard struct { + Topic string +} + +func (slf *Dashboard) HandleMessage(data []byte) (err error) { + logx.Infof("dashboard message: %s", data) + var dashboard model.Dashboard + err = json.Unmarshal(data, &dashboard) + if err != nil { + logx.Infof("unmarshal msg err :%s", err) + return err + } + old, err := model.NewDashboardSearch(nil).SetVersion(dashboard.Version).First() + if err == gorm.ErrRecordNotFound { + err = model.NewDashboardSearch(nil).SetVersion(dashboard.Version).Create(&dashboard) + } else { + err = model.NewDashboardSearch(nil).SetId(old.ID).Updates(&dashboard) + } + if err != nil { + logx.Infof("process pull data err :%s", err) + return err + } + return nil +} -- Gitblit v1.8.0