chenxiaofei 1 месяц назад
Родитель
Сommit
73333185a7

+ 1 - 1
sckw-common/sckw-common-remote/src/main/java/com/sckw/remote/annotation/SckwRemoteApplication.java

@@ -12,6 +12,6 @@ import java.lang.annotation.*;
 @Inherited
 @EnableDubbo
 @EnableFeignClients({"com.sckw.*.api.feign"})
-@ComponentScan(basePackages = {"com.sckw.message.consumer","com.sckw.file.config", "com.sckw.payment.config", "com.sckw.fleet.config", "com.sckw.remote.filter", "com.sckw.*.dao","com.sckw.*.controller", "com.sckw.*.service", "com.sckw.*.repository", "com.sckw.*.dubbo", "com.sckw.*.model", "com.sckw.transport.*", "com.sckw.*.serivce"})
+@ComponentScan(basePackages = {"com.sckw.message.consumer","com.sckw.file.config", "com.sckw.payment.config", "com.sckw.fleet.config", "com.sckw.remote.filter", "com.sckw.*.dao","com.sckw.*.controller", "com.sckw.*.service", "com.sckw.*.repository", "com.sckw.*.dubbo", "com.sckw.*.model", "com.sckw.transport.*", "com.sckw.*.serivce","com.sckw.transport.config"})
 public @interface SckwRemoteApplication {
 }

+ 94 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/config/OpenApiConfig.java

@@ -0,0 +1,94 @@
+package com.sckw.transport.config;
+
+import io.swagger.v3.oas.models.OpenAPI;
+import io.swagger.v3.oas.models.info.Contact;
+import io.swagger.v3.oas.models.info.Info;
+import io.swagger.v3.oas.models.info.License;
+import io.swagger.v3.oas.models.servers.Server;
+import org.springdoc.core.models.GroupedOpenApi;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+import java.util.List;
+
+/**
+ * @author PC
+ */
+@Configuration
+public class OpenApiConfig implements WebMvcConfigurer {
+
+    @Value("${spring.application.name:Application}")
+    private String applicationName;
+
+    @Bean
+    public OpenAPI customOpenAPI() {
+        return new OpenAPI()
+                .info(new Info()
+                        .title(applicationName + " API")
+                        .version("1.0.0")
+                        .description("物流订单运单DOC文档 - 提供订单运单管理以及相关API接口")
+                        .contact(new Contact()
+                                .name("开物物流订单开发团队")
+                                .email("iot-dev@example.com")
+                                .url("https://iot-platform.com"))
+                        .license(new License()
+                                .name("Apache 2.0")
+                                .url("https://www.apache.org/licenses/LICENSE-2.0")))
+                .servers(List.of(
+                        new Server()
+                                .url("http://localhost:10120")
+                                .description("开发环境"),
+                        new Server()
+                                .url("http://10.10.10.224:10014/")
+                                .description("测试环境"),
+                        new Server()
+                                .url("https://api.transport.example.com")
+                                .description("生产环境")
+                ));
+    }
+
+    @Bean
+    public GroupedOpenApi paymentApi() {
+        return GroupedOpenApi.builder()
+                .group("transport")
+                .packagesToScan("com.sckw.transport.controller")
+                .build();
+    }
+
+    @Bean
+    public GroupedOpenApi transportAppApi() {
+        return GroupedOpenApi.builder()
+                .group("transport-app")
+                .packagesToScan("com.sckw.transport.controller.app")
+                .build();
+    }
+
+    @Bean
+    public GroupedOpenApi transportOperateApi() {
+        return GroupedOpenApi.builder()
+                .group("transport-operate")
+                .packagesToScan("com.sckw.transport.controller.operate")
+                .build();
+    }
+
+    @Bean
+    public GroupedOpenApi transportAllApi() {
+        return GroupedOpenApi.builder()
+                .group("transport-all")
+                .packagesToScan("com.sckw.transport.controller",
+                        "com.sckw.transport.controller.app",
+                        "com.sckw.transport.controller.operate")
+                .build();
+    }
+
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry) {
+        registry.addResourceHandler("/doc.html")
+                .addResourceLocations("classpath:/META-INF/resources/");
+        registry.addResourceHandler("/webjars/**")
+                .addResourceLocations("classpath:/META-INF/resources/webjars/");
+    }
+}

+ 0 - 8
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/KwtLogisticsOrderController.java

@@ -1,11 +1,7 @@
 package com.sckw.transport.controller;
 
-import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.google.common.collect.Sets;
 import com.sckw.core.annotation.RepeatSubmit;
-import com.sckw.core.exception.BusinessException;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.response.BaseResult;
 import com.sckw.core.web.response.HttpResult;
@@ -28,10 +24,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.List;
-import java.util.Objects;
-import java.util.Set;
-import java.util.stream.Collectors;
 
 /**
  * @author lfdc

+ 20 - 0
sckw-modules/sckw-transport/src/main/resources/bootstrap.yml

@@ -10,3 +10,23 @@ spring:
   main:
     allow-bean-definition-overriding: true
     allow-circular-references: true
+mybatis-plus:
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+
+logging:
+  level:
+    root: info
+    com.sckw.payment: debug
+
+# SpringDoc OpenAPI 配置
+springdoc:
+  swagger-ui:
+    path: /swagger-ui.html
+    tags-sorter: alpha
+    operations-sorter: alpha
+  api-docs:
+    path: /v3/api-docs
+  show-actuator: true
+  cache:
+    disabled: true