Browse Source

调整接口

wangbo 6 days ago
parent
commit
2c442cbc39
1 changed files with 19 additions and 2 deletions
  1. 19 2
      cg_sdk.go

+ 19 - 2
cg_sdk.go

@@ -104,8 +104,8 @@ func (configEncode *ConfigEncode) genSegmentValueMap() error {
 				fallthrough
 			case encodeSegmentDynamicType:
 				switch inputFieldValueAny.(type) {
-				case LibraryCodeInfo:
-					configEncode.segmentValueMap[encodeSegment.EncodeSegmentID] = inputFieldValueAny.(LibraryCodeInfo)
+				case map[string]any:
+					configEncode.segmentValueMap[encodeSegment.EncodeSegmentID] = AnyMapToLibraryCodeInfo(inputFieldValueAny.(map[string]any))
 				case string:
 					configEncode.segmentValueMap[encodeSegment.EncodeSegmentID] = LibraryCodeInfo{Name: inputFieldValueAny.(string)}
 				default:
@@ -120,6 +120,23 @@ func (configEncode *ConfigEncode) genSegmentValueMap() error {
 	return nil
 }
 
+func AnyMapToLibraryCodeInfo(anyMap map[string]any) LibraryCodeInfo {
+	var libraryCodeInfo LibraryCodeInfo
+	if id, ok := anyMap["id"].(string); ok {
+		libraryCodeInfo.ID = id
+	}
+	if parentId, ok := anyMap["parentId"].(string); ok {
+		libraryCodeInfo.ParentID = parentId
+	}
+	if name, ok := anyMap["name"].(string); ok {
+		libraryCodeInfo.Name = name
+	}
+	if code, ok := anyMap["code"].(string); ok {
+		libraryCodeInfo.Code = code
+	}
+	return libraryCodeInfo
+}
+
 func (configEncode *ConfigEncode) createCreateJsonBody() CreateEncodeJsonBody {
 	return CreateEncodeJsonBody{
 		Namespace:                configEncode.codeNamespace,