From 9e8d8b630affc4a4be428c775264ef4b0e5104b3 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期五, 17 五月 2024 15:25:45 +0800 Subject: [PATCH] 添加取消订阅接口 --- repository/subscribeRepo.go | 37 +++++++++++++++++++++++++++++++++++++ 1 files changed, 37 insertions(+), 0 deletions(-) diff --git a/repository/subscribeRepo.go b/repository/subscribeRepo.go index ec3bb73..c924b80 100644 --- a/repository/subscribeRepo.go +++ b/repository/subscribeRepo.go @@ -53,6 +53,43 @@ return err } + +func (s *SubscribeRepository) CancelSubscribe(sid string, req *vo.Subscribe) error { + var subscribeMsg vo.RequestCancelSubscribe + subscribeMsg.SubscribeObject = *req + + if req.SubscribeID == "" { + return errors.New("璁㈤槄娑堟伅涓婚涓虹┖") + } + + // 鏌ユ壘涓嬬骇 + var platform models.SubPlatform + err := platform.FindById(sid) + if err != nil { + return err + } + + uri := fmt.Sprintf("http://%s:%d/VIID/Subscribes/%s", platform.RemoteIP, platform.RemotePort, req.SubscribeID) + body, _ := json.Marshal(subscribeMsg) + if client.UpdateSubscribe(uri, body) != vo.StatusSuccess { + return errors.New("鍙戦�佽闃呮秷鎭け璐�") + } + + var sub = models.Subscribe{ + Id: req.SubscribeID, + Status: req.SubscribeStatus, + FromId: sid, + Ext: *req, + } + + err = sub.Save() + if err != nil { + return err + } + + return err +} + func (s *SubscribeRepository) UpdateSubscribe(sid string, req *vo.Subscribe) error { var subscribeMsg vo.RequestSubscribe subscribeMsg.SubscribeListObject.SubscribeObject = []vo.Subscribe{*req} -- Gitblit v1.8.0