From 9ee887fce2f87f7a79d0b94640cf1d341a254319 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期五, 17 五月 2024 02:55:14 +0800
Subject: [PATCH] 添加webapi, 优化模块启动

---
 controller/subscribeCtl.go |   42 +++++++++++++++++++++++++++++++++---------
 1 files changed, 33 insertions(+), 9 deletions(-)

diff --git a/controller/subscribeCtl.go b/controller/subscribeCtl.go
index 7123d4e..c5241ee 100644
--- a/controller/subscribeCtl.go
+++ b/controller/subscribeCtl.go
@@ -1,6 +1,7 @@
 package controller
 
 import (
+	"gat1400Exchange/config"
 	"gat1400Exchange/pkg/logger"
 	"gat1400Exchange/repository"
 	"gat1400Exchange/vo"
@@ -25,14 +26,15 @@
 	return controller
 }
 
-func (s SubscribeController) SubscribesList(c *gin.Context) {
-	subList, _ := s.Repository.List()
+func (s SubscribeController) VIIDSubscribesList(c *gin.Context) {
+	fromId := c.GetHeader("User-Identify")
+	subList, _ := s.Repository.ListByFromId(fromId)
 
 	c.Header("Content-Type", "application/VIID+json;charset=UTF-8")
 	c.JSON(http.StatusOK, gin.H{"SubscribeList": subList})
 }
 
-func (s SubscribeController) Subscribes(c *gin.Context) {
+func (s SubscribeController) VIIDSubscribes(c *gin.Context) {
 	var req vo.RequestSubscribe
 	if err := c.BindJSON(&req); err != nil {
 		c.AbortWithStatus(http.StatusBadRequest)
@@ -43,7 +45,7 @@
 
 	var rsp vo.ResponseStatusList
 	for idx, sub := range req.SubscribeListObject.SubscribeObject {
-		if err := s.Repository.CreateSubscribe(fromId, &req.SubscribeListObject.SubscribeObject[idx]); err == nil {
+		if err := s.Repository.SaveReceiveSubscribe(fromId, &req.SubscribeListObject.SubscribeObject[idx]); err == nil {
 			rsp.ResponseStatusObject = append(rsp.ResponseStatusObject, vo.ResponseStatus{
 				RequestURL:   c.FullPath(),
 				StatusCode:   vo.StatusSuccess,
@@ -58,7 +60,7 @@
 	c.JSON(http.StatusOK, gin.H{"ResponseStatusListObject": rsp})
 }
 
-func (s SubscribeController) UpdateSubscribes(c *gin.Context) {
+func (s SubscribeController) VIIDUpdateSubscribes(c *gin.Context) {
 	var req vo.RequestSubscribe
 	if err := c.BindJSON(&req); err != nil {
 		c.AbortWithStatus(http.StatusBadRequest)
@@ -67,7 +69,7 @@
 
 	var rsp vo.ResponseStatusList
 	for idx, sub := range req.SubscribeListObject.SubscribeObject {
-		if err := s.Repository.UpdateSubscribe(&req.SubscribeListObject.SubscribeObject[idx]); err == nil {
+		if err := s.Repository.UpdateReceiveSubscribe(&req.SubscribeListObject.SubscribeObject[idx]); err == nil {
 			rsp.ResponseStatusObject = append(rsp.ResponseStatusObject, vo.ResponseStatus{
 				RequestURL:   c.FullPath(),
 				StatusCode:   vo.StatusSuccess,
@@ -82,12 +84,12 @@
 	c.JSON(http.StatusOK, gin.H{"ResponseStatusListObject": rsp})
 }
 
-func (s SubscribeController) DeleteSubscribe(c *gin.Context) {
+func (s SubscribeController) VIIDDeleteSubscribe(c *gin.Context) {
 	idList := c.Query("IDList")
 	var rsp vo.ResponseStatusList
 
 	for _, id := range strings.Split(idList, ",") {
-		if err := s.Repository.DeleteSubscribe(id); err == nil {
+		if err := s.Repository.DeleteReceiveSubscribe(id); err == nil {
 			rsp.ResponseStatusObject = append(rsp.ResponseStatusObject, vo.ResponseStatus{
 				RequestURL:   c.FullPath(),
 				StatusCode:   vo.StatusSuccess,
@@ -122,9 +124,31 @@
 		})
 
 		// 杞彂
-		go s.Srv.FaceForward(msg.FaceObjectList.FaceObject)
+		if config.ForwardConf.SyncServer != "" {
+			go s.Srv.FaceForward(msg.FaceObjectList.FaceObject)
+		}
 	}
 
 	c.Header("Content-Type", "application/VIID+json;charset=UTF-8")
 	c.JSON(http.StatusOK, gin.H{"ResponseStatusListObject": rsp})
 }
+
+// CreateSubscribes 娣诲姞涓嬬骇骞冲彴鐨勮闃呮秷鎭�
+func (s SubscribeController) CreateSubscribes(c *gin.Context) {
+	var req vo.Subscribe
+	if err := c.BindJSON(&req); err != nil {
+		c.JSON(http.StatusBadRequest, gin.H{"msg": err.Error()})
+		return
+	}
+
+	if c.Param("id") == "" {
+		c.JSON(http.StatusBadRequest, gin.H{"msg": "涓嬬骇id涓虹┖"})
+	}
+
+	if err := s.Repository.CreateSubscribe(c.Param("id"), &req); err != nil {
+		c.JSON(http.StatusInternalServerError, gin.H{"msg": err.Error()})
+		return
+	}
+
+	c.JSON(http.StatusOK, gin.H{"msg": "ok"})
+}

--
Gitblit v1.8.0