增加枚举值描述解析

This commit is contained in:
2025-02-18 23:02:46 +08:00
parent e1191b8c05
commit f6c3e0380d
4 changed files with 100 additions and 62 deletions

View File

@ -354,11 +354,13 @@ func (g *Generate) ParseReadConfigParam(requestCfg *define.UriBaseConfig, baseRe
Required: ValidateRule.IsRequired(inputType.Field(i)),
Deprecated: ParseStructFieldTag.Deprecated(inputType.Field(i)),
Schema: &define.Schema{
Minimum: ValidateRule.Minimum(inputType.Field(i)),
Maximum: ValidateRule.Maximum(inputType.Field(i)),
Type: convertBaseType,
Format: realInputTypeFormat,
Default: ParseStructFieldTag.GetDefaultValue(inputType.Field(i)),
Minimum: ValidateRule.Minimum(inputType.Field(i)),
Maximum: ValidateRule.Maximum(inputType.Field(i)),
Type: convertBaseType,
Format: realInputTypeFormat,
Default: ParseStructFieldTag.GetDefaultValue(inputType.Field(i)),
Enum: ValidateRule.Enum(inputType.Field(i)),
XEnumDescription: ParseStructFieldTag.EnumDescription(inputType.Field(i)),
},
AllowEmptyValue: false,
Style: "",
@ -402,10 +404,12 @@ func (g *Generate) ParseReadConfigParam(requestCfg *define.UriBaseConfig, baseRe
Required: ValidateRule.IsRequired(inputType.Field(i)),
Deprecated: ParseStructFieldTag.Deprecated(inputType.Field(i)),
Schema: &define.Schema{
Type: convertBaseType,
Items: nil,
Ref: "",
Format: realInputTypeFormat,
Type: convertBaseType,
Items: nil,
Ref: "",
Format: realInputTypeFormat,
Enum: ValidateRule.Enum(inputType.Field(i)),
XEnumDescription: ParseStructFieldTag.EnumDescription(inputType.Field(i)),
},
AllowEmptyValue: false,
Style: "",
@ -521,12 +525,14 @@ func (g *Generate) AddComponentsSchema(rootSchemaName string, pkgPath string, in
// 当做默认基础类型, 默认不会出现 *map *[]
convertBaseType, _ := g.realBaseType2SwaggerType(inputType.Field(i).Type.String())
g.docData.Components.Schemas[schemaName].Properties[propertyName] = &define.Property{
Type: convertBaseType,
Format: inputType.Field(i).Type.String(),
Maximum: ValidateRule.Maximum(inputType.Field(i)),
Minimum: ValidateRule.Minimum(inputType.Field(i)),
Default: ParseStructFieldTag.GetDefaultValue(inputType.Field(i)),
Description: ParseStructFieldTag.GetParamDesc(inputType.Field(i)),
Type: convertBaseType,
Format: inputType.Field(i).Type.String(),
Enum: ValidateRule.Enum(inputType.Field(i)),
XEnumDescription: ParseStructFieldTag.EnumDescription(inputType.Field(i)),
Maximum: ValidateRule.Maximum(inputType.Field(i)),
Minimum: ValidateRule.Minimum(inputType.Field(i)),
Default: ParseStructFieldTag.GetDefaultValue(inputType.Field(i)),
Description: ParseStructFieldTag.GetParamDesc(inputType.Field(i)),
}
}
continue
@ -624,11 +630,12 @@ func (g *Generate) handleAnonymousField(schemaName string, field reflect.StructF
} else {
paramName := ParseStructFieldTag.GetParamName(itemField)
g.docData.Components.Schemas[schemaName].Properties[paramName] = &define.Property{
Type: baseConvertType,
Format: itemField.Type.String(),
Enum: ValidateRule.Enum(itemField),
Default: ParseStructFieldTag.GetDefaultValue(handleType.Field(i)),
Description: ParseStructFieldTag.GetParamDesc(handleType.Field(i)),
Type: baseConvertType,
Format: itemField.Type.String(),
Enum: ValidateRule.Enum(itemField),
XEnumDescription: ParseStructFieldTag.EnumDescription(itemField),
Default: ParseStructFieldTag.GetDefaultValue(handleType.Field(i)),
Description: ParseStructFieldTag.GetParamDesc(handleType.Field(i)),
}
if ValidateRule.IsRequired(itemField) {
g.docData.Components.Schemas[schemaName].Required = append(g.docData.Components.Schemas[schemaName].Required, paramName)