53 lines
1.2 KiB
Go
53 lines
1.2 KiB
Go
|
package kafka
|
|||
|
|
|||
|
import (
|
|||
|
"context"
|
|||
|
"encoding/json"
|
|||
|
"finclip-app-manager/infrastructure/client/httpcall"
|
|||
|
"finclip-app-manager/infrastructure/config"
|
|||
|
uuid "github.com/satori/go.uuid"
|
|||
|
"strings"
|
|||
|
)
|
|||
|
|
|||
|
//通知中心
|
|||
|
type NotifyContent struct {
|
|||
|
Msg string `json:"msg"`
|
|||
|
Result string `json:"result"`
|
|||
|
Reason string `json:"reason"`
|
|||
|
Title string `json:"title"`
|
|||
|
}
|
|||
|
|
|||
|
func GenNotifyData(ctx context.Context, organId string, t int, content NotifyContent) error {
|
|||
|
data := make(map[string]interface{})
|
|||
|
data["organTraceId"] = organId
|
|||
|
data["tab"] = "work"
|
|||
|
data["type"] = t //1000-1999:应用市场使用,2000-2999:企业端使用,3000-3999:运营端使用
|
|||
|
data["content"] = content
|
|||
|
data["id"] = uuid.NewV4().String()
|
|||
|
|
|||
|
jsonBytes, _ := json.Marshal(data)
|
|||
|
|
|||
|
if producer == nil {
|
|||
|
req := &httpcall.AddNotifyReq{}
|
|||
|
req.Id = uuid.NewV4().String()
|
|||
|
req.Type = t
|
|||
|
req.Content = content
|
|||
|
req.OrganId = organId
|
|||
|
req.Tab = "system"
|
|||
|
err := hCaller.AddNotify(ctx, req)
|
|||
|
return err
|
|||
|
}
|
|||
|
|
|||
|
return sendMsg(ctx, config.GetConfig().KafkaNotifyTopic, string(jsonBytes))
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
func getAddrIp(address string) string {
|
|||
|
ipArry := strings.Split(address, ",")
|
|||
|
if len(ipArry) == 0 {
|
|||
|
return ""
|
|||
|
} else {
|
|||
|
return ipArry[0]
|
|||
|
}
|
|||
|
}
|