Skip to content
This repository was archived by the owner on Dec 4, 2025. It is now read-only.

Commit 4472a0a

Browse files
committed
fix(enum): Fix the json request enumeration identification error
1 parent bd314f3 commit 4472a0a

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

src/main/java/com/ly/doc/helper/ParamsBuildHelper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -505,7 +505,7 @@ else if (JavaClassValidateUtil.isCollection(subTypeName)
505505
param.setType(ParamTypeConstants.PARAM_TYPE_ARRAY);
506506

507507
EnumInfoAndValues enumInfoAndValue = JavaClassUtil.getEnumInfoAndValue(arraySubClass,
508-
projectBuilder, Boolean.TRUE);
508+
projectBuilder, jsonRequest || isResp);
509509
if (Objects.nonNull(enumInfoAndValue)) {
510510
param.setValue("[" + enumInfoAndValue.getValue() + "]")
511511
.setEnumInfoAndValues(enumInfoAndValue);

src/main/java/com/ly/doc/template/IRestDocTemplate.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1033,6 +1033,7 @@ default ApiMethodReqParam requestParams(final DocJavaMethod docJavaMethod, Proje
10331033
String strRequired = "false";
10341034
boolean required = false;
10351035
boolean isRequestPart = false;
1036+
boolean jsonRequest = false;
10361037
ApiParamEnum apiParamEnum = null;
10371038
if (paramAnnotations.isEmpty() && (Methods.GET.getValue().equals(docJavaMethod.getMethodType())
10381039
|| Methods.DELETE.getValue().equals(docJavaMethod.getMethodType()))) {
@@ -1096,6 +1097,7 @@ else if (frameworkAnnotations.getRequestPartAnnotation()
10961097
new HashMap<>(16), groupClasses, docJavaMethod.getJsonViewClasses(), builder);
10971098
requestBodyCounter++;
10981099
apiParamEnum = ApiParamEnum.BODY;
1100+
jsonRequest = true;
10991101
}
11001102
required = Boolean.parseBoolean(strRequired);
11011103
}
@@ -1168,7 +1170,7 @@ else if (frameworkAnnotations.getRequestPartAnnotation()
11681170
.setId(paramList.size() + 1)
11691171
.setType(ParamTypeConstants.PARAM_TYPE_ARRAY);
11701172
EnumInfoAndValues enumInfoAndValue = JavaClassUtil.getEnumInfoAndValue(gicJavaClass, builder,
1171-
Boolean.FALSE);
1173+
jsonRequest);
11721174
if (Objects.nonNull(enumInfoAndValue)) {
11731175
param.setValue(StringUtil.removeDoubleQuotes(String.valueOf(enumInfoAndValue.getValue())))
11741176
.setEnumInfoAndValues(enumInfoAndValue);
@@ -1276,8 +1278,7 @@ else if (javaClass.isEnum()) {
12761278
.setRequired(required)
12771279
.setVersion(DocGlobalConstants.DEFAULT_VERSION);
12781280

1279-
EnumInfoAndValues enumInfoAndValue = JavaClassUtil.getEnumInfoAndValue(javaClass, builder,
1280-
ApiParamEnum.BODY.equals(apiParamEnum));
1281+
EnumInfoAndValues enumInfoAndValue = JavaClassUtil.getEnumInfoAndValue(javaClass, builder, jsonRequest);
12811282
if (Objects.nonNull(enumInfoAndValue)) {
12821283
param.setValue(StringUtil.removeDoubleQuotes(String.valueOf(enumInfoAndValue.getValue())))
12831284
.setEnumInfoAndValues(enumInfoAndValue)
@@ -1302,12 +1303,12 @@ else if (isRequestPart) {
13021303
paramList.add(param);
13031304
paramList.addAll(ParamsBuildHelper.buildParams(typeName, DocGlobalConstants.PARAM_PREFIX, 1,
13041305
String.valueOf(required), Boolean.FALSE, new HashMap<>(16), builder, groupClasses,
1305-
docJavaMethod.getJsonViewClasses(), 1, ApiParamEnum.BODY.equals(apiParamEnum), null));
1306+
docJavaMethod.getJsonViewClasses(), 1, jsonRequest, null));
13061307
}
13071308
else {
13081309
List<ApiParam> apiParams = ParamsBuildHelper.buildParams(typeName, DocGlobalConstants.EMPTY, 0,
13091310
String.valueOf(required), Boolean.FALSE, new HashMap<>(16), builder, groupClasses,
1310-
docJavaMethod.getJsonViewClasses(), 0, ApiParamEnum.BODY.equals(apiParamEnum), null);
1311+
docJavaMethod.getJsonViewClasses(), 0, jsonRequest, null);
13111312

13121313
boolean hasFile = apiParams.stream()
13131314
.anyMatch(param -> ParamTypeConstants.PARAM_TYPE_FILE.equals(param.getType()));

0 commit comments

Comments
 (0)