nodeid.go 877 B

12345678910111213141516171819202122232425262728293031
  1. package graph
  2. import (
  3. "encoding/base64"
  4. "encoding/json"
  5. "git.wecise.com/wecise/util/merrs"
  6. "github.com/spf13/cast"
  7. )
  8. func GetNodeId(classaliasname string, data map[string]any) (oid, suid string, err error) {
  9. uid := data["uniqueId"]
  10. if uid == nil {
  11. uid = data["UNIQUEID"]
  12. if uid == nil {
  13. databs, _ := json.MarshalIndent(data, "", " ")
  14. return "", "", merrs.NewError("not found uniqueid in data ", merrs.SSMap{"data": string(databs)})
  15. }
  16. }
  17. suid = cast.ToString(uid)
  18. if suid == "" {
  19. databs, _ := json.MarshalIndent(data, "", " ")
  20. return "", "", merrs.NewError("not found valid uniqueid in data ", merrs.SSMap{"data": string(databs)})
  21. }
  22. return ToNodeId(classaliasname, suid), suid, nil
  23. }
  24. func ToNodeId(classaliasname string, suid string) string {
  25. suid64 := base64.RawURLEncoding.EncodeToString([]byte(suid))
  26. return classaliasname + ":" + suid64
  27. }