diff --git a/continew-starter-api-doc/pom.xml b/continew-starter-api-doc/pom.xml
index be55cab2..9aa4ca51 100644
--- a/continew-starter-api-doc/pom.xml
+++ b/continew-starter-api-doc/pom.xml
@@ -28,5 +28,11 @@
nextdoc4j-springboot3-starter
+
+
+ top.nextdoc4j
+ nextdoc4j-plugin-enums
+
+
\ No newline at end of file
diff --git a/continew-starter-api-doc/src/main/java/top/continew/starter/apidoc/autoconfigure/SpringDocAutoConfiguration.java b/continew-starter-api-doc/src/main/java/top/continew/starter/apidoc/autoconfigure/SpringDocAutoConfiguration.java
index 6f423b74..f2edf67f 100644
--- a/continew-starter-api-doc/src/main/java/top/continew/starter/apidoc/autoconfigure/SpringDocAutoConfiguration.java
+++ b/continew-starter-api-doc/src/main/java/top/continew/starter/apidoc/autoconfigure/SpringDocAutoConfiguration.java
@@ -31,6 +31,7 @@ import org.springframework.context.annotation.PropertySource;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+import top.continew.starter.apidoc.processor.BaseEnumProcessor;
import top.continew.starter.core.autoconfigure.application.ApplicationProperties;
import top.continew.starter.core.util.GeneralPropertySourceFactory;
@@ -74,6 +75,17 @@ public class SpringDocAutoConfiguration implements WebMvcConfigurer {
return openApi;
}
+ /**
+ * 基础枚举处理器
+ *
+ * @return {@link BaseEnumProcessor }
+ */
+ @Bean
+ @ConditionalOnMissingBean
+ public BaseEnumProcessor baseEnumProcessor() {
+ return new BaseEnumProcessor();
+ }
+
@PostConstruct
public void postConstruct() {
log.debug("[ContiNew Starter] - Auto Configuration 'ApiDoc' completed initialization.");
diff --git a/continew-starter-api-doc/src/main/java/top/continew/starter/apidoc/processor/BaseEnumProcessor.java b/continew-starter-api-doc/src/main/java/top/continew/starter/apidoc/processor/BaseEnumProcessor.java
new file mode 100644
index 00000000..829c9708
--- /dev/null
+++ b/continew-starter-api-doc/src/main/java/top/continew/starter/apidoc/processor/BaseEnumProcessor.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2022-present Charles7c Authors. All Rights Reserved.
+ *
+ * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE 3.0;
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.gnu.org/licenses/lgpl.html
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package top.continew.starter.apidoc.processor;
+
+import cn.hutool.core.util.ClassUtil;
+import org.springframework.stereotype.Component;
+import top.continew.starter.core.enums.BaseEnum;
+import top.nextdoc4j.enums.resolver.EnumMetadataResolver;
+
+/**
+ * 基础枚举处理器 - nextdoc4j 枚举插件展示枚举值
+ *
+ * @author echo
+ * @since 2.15.0
+ */
+@Component
+public class BaseEnumProcessor implements EnumMetadataResolver {
+ @Override
+ public boolean supports(Class> aClass) {
+ return aClass != null && aClass.isEnum() && ClassUtil.isAssignable(BaseEnum.class, aClass);
+ }
+
+ @Override
+ public Class> getEnumInterfaceType() {
+ return BaseEnum.class;
+ }
+
+}