From 7d03fd7d726469278b5bd1b379f0303fa55b7c3e Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期四, 17 七月 2025 11:13:32 +0800
Subject: [PATCH] 解决API调试出错

---
 /dev/null                                                                       |   86 ---------------------
 se-collect/src/main/resources/application-prod.yml                              |   17 ++++
 se-common/src/main/java/com/terra/common/config/SpringDocAutoConfiguration.java |   10 +-
 se-system/src/main/resources/application-prod.yml                               |   19 ++++
 se-gateway/src/main/java/com/terra/gateway/config/SpringDocConfig.java          |   36 ++++----
 se-system/pom.xml                                                               |   35 ++++----
 se-system/src/main/java/com/terra/system/config/WebConfig.java                  |   30 +++++++
 sm.txt                                                                          |    6 +
 8 files changed, 106 insertions(+), 133 deletions(-)

diff --git a/se-collect/src/main/resources/application-prod.yml b/se-collect/src/main/resources/application-prod.yml
index 883aa90..232abe4 100644
--- a/se-collect/src/main/resources/application-prod.yml
+++ b/se-collect/src/main/resources/application-prod.yml
@@ -67,6 +67,23 @@
 
 mybatis-plus:
   config-location: classpath:mybatis.xml
+  mapper-locations: classpath:mapper/**/*.xml
+
+# springdoc閰嶇疆
+springdoc:
+  gatewayUrl: /${spring.application.name}
+  api-docs:
+    # 鏄惁寮�鍚帴鍙f枃妗�
+    enabled: true
+  info:
+    # 鏍囬
+    title: '鏁版嵁姹囬泦鎺ュ彛鏂囨。'
+    # 鎻忚堪
+    description: '鏁版嵁姹囬泦鎺ュ彛鎻忚堪'
+    # 浣滆�呬俊鎭�
+    contact:
+      name: wuww
+      url: https://www.smartearth.cn/
 
 logging:
   config: classpath:logback.xml
diff --git a/se-common/src/main/java/com/terra/common/config/SpringDocAutoConfiguration.java b/se-common/src/main/java/com/terra/common/config/SpringDocAutoConfiguration.java
index 9be91a0..5172bd1 100644
--- a/se-common/src/main/java/com/terra/common/config/SpringDocAutoConfiguration.java
+++ b/se-common/src/main/java/com/terra/common/config/SpringDocAutoConfiguration.java
@@ -30,8 +30,8 @@
     {
         return new OpenAPI().components(new Components()
             // 璁剧疆璁よ瘉鐨勮姹傚ご
-            .addSecuritySchemes("apikey", securityScheme()))
-            .addSecurityItem(new SecurityRequirement().addList("apikey"))
+            .addSecuritySchemes("token", securityScheme())) // apikey
+            .addSecurityItem(new SecurityRequirement().addList("token")) // apikey
             .info(convertInfo(properties.getInfo()))
             .servers(servers(properties.getGatewayUrl()));
     }
@@ -39,9 +39,9 @@
     public SecurityScheme securityScheme()
     {
         return new SecurityScheme().type(SecurityScheme.Type.APIKEY)
-            .name("Authorization")
-            .in(SecurityScheme.In.HEADER)
-            .scheme("Bearer");
+                .name("token") // Authorization
+                .in(SecurityScheme.In.HEADER)
+                .scheme(""); // Bearer
     }
 
     private Info convertInfo(SpringDocProperties.InfoProperties infoProperties)
diff --git a/se-gateway/src/main/java/com/terra/gateway/config/SpringDocConfig.java b/se-gateway/src/main/java/com/terra/gateway/config/SpringDocConfig.java
index fd3c3d0..f5832b3 100644
--- a/se-gateway/src/main/java/com/terra/gateway/config/SpringDocConfig.java
+++ b/se-gateway/src/main/java/com/terra/gateway/config/SpringDocConfig.java
@@ -44,51 +44,49 @@
 /**
  * Swagger鏂囨。娉ㄥ唽鍣�
  */
-class SwaggerDocRegister extends Subscriber<InstancesChangeEvent>
-{
+class SwaggerDocRegister extends Subscriber<InstancesChangeEvent> {
     @Autowired
     private SwaggerUiConfigProperties swaggerUiConfigProperties;
 
     @Autowired
     private DiscoveryClient discoveryClient;
 
-    private final static String[] EXCLUDE_ROUTES = new String[] { "se-gateway" };
+    private final static String[] EXCLUDE_ROUTES = new String[]{"se-gateway"};
 
-    public SwaggerDocRegister(SwaggerUiConfigProperties swaggerUiConfigProperties, DiscoveryClient discoveryClient)
-    {
+    public SwaggerDocRegister(SwaggerUiConfigProperties swaggerUiConfigProperties, DiscoveryClient discoveryClient) {
         this.swaggerUiConfigProperties = swaggerUiConfigProperties;
         this.discoveryClient = discoveryClient;
     }
 
     /**
      * 浜嬩欢鍥炶皟鏂规硶锛屽鐞咺nstancesChangeEvent浜嬩欢
+     *
      * @param event 浜嬩欢瀵硅薄
      */
     @Override
-    public void onEvent(InstancesChangeEvent event)
-    {
+    public void onEvent(InstancesChangeEvent event) {
         Set<AbstractSwaggerUiConfigProperties.SwaggerUrl> swaggerUrlSet = discoveryClient.getServices()
-            .stream()
-            .flatMap(serviceId -> discoveryClient.getInstances(serviceId).stream())
-            .filter(instance -> !StringUtils.equalsAnyIgnoreCase(instance.getServiceId(), EXCLUDE_ROUTES))
-            .map(instance -> {
-                AbstractSwaggerUiConfigProperties.SwaggerUrl swaggerUrl = new AbstractSwaggerUiConfigProperties.SwaggerUrl();
-                swaggerUrl.setName(instance.getServiceId());
-                swaggerUrl.setUrl(String.format("/%s/v3/api-docs", instance.getServiceId()));
-                return swaggerUrl;
-            })
-            .collect(Collectors.toSet());
+                .stream()
+                .flatMap(serviceId -> discoveryClient.getInstances(serviceId).stream())
+                .filter(instance -> !StringUtils.equalsAnyIgnoreCase(instance.getServiceId(), EXCLUDE_ROUTES))
+                .map(instance -> {
+                    AbstractSwaggerUiConfigProperties.SwaggerUrl swaggerUrl = new AbstractSwaggerUiConfigProperties.SwaggerUrl();
+                    swaggerUrl.setName(instance.getServiceId());
+                    swaggerUrl.setUrl(String.format("/%s/v3/api-docs", instance.getServiceId()));
+                    return swaggerUrl;
+                })
+                .collect(Collectors.toSet());
 
         swaggerUiConfigProperties.setUrls(swaggerUrlSet);
     }
 
     /**
      * 璁㈤槄绫诲瀷鏂规硶锛岃繑鍥炶闃呯殑浜嬩欢绫诲瀷
+     *
      * @return 璁㈤槄鐨勪簨浠剁被鍨�
      */
     @Override
-    public Class<? extends Event> subscribeType()
-    {
+    public Class<? extends Event> subscribeType() {
         return InstancesChangeEvent.class;
     }
 }
diff --git a/se-system/pom.xml b/se-system/pom.xml
index a4926b3..007da5e 100644
--- a/se-system/pom.xml
+++ b/se-system/pom.xml
@@ -58,11 +58,11 @@
         </dependency>
 
         <!--mybatis-plus-->
-        <dependency>
-            <groupId>com.baomidou</groupId>
-            <artifactId>mybatis-plus-boot-starter</artifactId>
-            <version>3.5.1</version>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>com.baomidou</groupId>-->
+<!--            <artifactId>mybatis-plus-boot-starter</artifactId>-->
+<!--            <version>3.5.1</version>-->
+<!--        </dependency>-->
 
         <!--redis-->
         <dependency>
@@ -87,12 +87,11 @@
             <artifactId>spring-boot-starter-aop</artifactId>
         </dependency>
 
-        <!--fastjson-->
-        <dependency>
-            <groupId>com.alibaba</groupId>
-            <artifactId>fastjson</artifactId>
-            <version>1.2.47</version>
-        </dependency>
+        <!-- Alibaba Fastjson -->
+<!--        <dependency>-->
+<!--            <groupId>com.alibaba.fastjson2</groupId>-->
+<!--            <artifactId>fastjson2</artifactId>-->
+<!--        </dependency>-->
 
         <!--鏁村悎druid鏁版嵁婧�-->
         <dependency>
@@ -114,11 +113,11 @@
         </dependency>
 
         <!-- SpringDoc webmvc -->
-        <dependency>
-            <groupId>org.springdoc</groupId>
-            <artifactId>springdoc-openapi-ui</artifactId>
-            <version>${springdoc.version}</version>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.springdoc</groupId>-->
+<!--            <artifactId>springdoc-openapi-ui</artifactId>-->
+<!--            <version>${springdoc.version}</version>-->
+<!--        </dependency>-->
 
         <!--httpclient-->
         <dependency>
@@ -221,12 +220,12 @@
         </dependency>
 
         <!-- se-common -->
-        <!--dependency>
+        <dependency>
             <groupId>com.terra</groupId>
             <artifactId>se-common</artifactId>
             <version>1.0.2</version>
             <scope>compile</scope>
-        </dependency-->
+        </dependency>
 
     </dependencies>
 
diff --git a/se-system/src/main/java/com/terra/system/config/MybatisPlusConfig.java b/se-system/src/main/java/com/terra/system/config/MybatisPlusConfig.java
deleted file mode 100644
index 344a64e..0000000
--- a/se-system/src/main/java/com/terra/system/config/MybatisPlusConfig.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package com.terra.system.config;
-
-import com.baomidou.mybatisplus.annotation.DbType;
-import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
-import com.baomidou.mybatisplus.core.MybatisConfiguration;
-import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
-import com.terra.system.extend.CustomizedSqlInjector;
-import org.apache.ibatis.type.JdbcType;
-import org.mybatis.spring.annotation.MapperScan;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.transaction.annotation.EnableTransactionManagement;
-
-/**
- * Mybatis-Plus鍒嗛〉閰嶇疆
- * @author WWW
- */
-@EnableTransactionManagement
-@Configuration
-@MapperScan("com.terra.system.mapper")
-public class MybatisPlusConfig {
-    /**
-     * 鏂扮殑鍒嗛〉鎻掍欢,涓�缂撳拰浜岀紦閬靛惊mybatis鐨勮鍒�,闇�瑕佽缃�
-     * MybatisConfiguration#useDeprecatedExecutor = false
-     * 閬垮厤缂撳瓨鍑虹幇闂(璇ュ睘鎬т細鍦ㄦ棫鎻掍欢绉婚櫎鍚庝竴鍚岀Щ闄�)
-     */
-    @Bean
-    public MybatisPlusInterceptor mybatisPlusInterceptor() {
-        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
-        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.POSTGRE_SQL));
-        return interceptor;
-    }
-
-    @Bean
-    public ConfigurationCustomizer configurationCustomizer() {
-        return new ConfigurationCustomizer() {
-            @Override
-            public void customize(MybatisConfiguration configuration) {
-                configuration.setCacheEnabled(true);
-                configuration.setMapUnderscoreToCamelCase(true);
-                configuration.setCallSettersOnNulls(true);
-                configuration.setJdbcTypeForNull(JdbcType.NULL);
-            }
-        };
-    }
-
-    @Bean
-    public CustomizedSqlInjector customizedSqlInjector() {
-        return new CustomizedSqlInjector();
-    }
-}
diff --git a/se-system/src/main/java/com/terra/system/config/WebConfig.java b/se-system/src/main/java/com/terra/system/config/WebConfig.java
index 3b05800..e95e229 100644
--- a/se-system/src/main/java/com/terra/system/config/WebConfig.java
+++ b/se-system/src/main/java/com/terra/system/config/WebConfig.java
@@ -3,16 +3,23 @@
 import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.alibaba.fastjson.support.config.FastJsonConfig;
 import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
+import com.alibaba.fastjson2.JSON;
 import com.terra.system.interceptor.AuthInterceptor;
 import com.terra.system.service.all.SysService;
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+
 import org.springframework.context.annotation.Configuration;
 import org.springframework.core.Ordered;
 import org.springframework.http.MediaType;
 import org.springframework.http.converter.HttpMessageConverter;
 import org.springframework.util.AntPathMatcher;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
 import org.springframework.web.servlet.config.annotation.*;
+import reactor.core.Exceptions;
 
+import java.io.IOException;
 import java.nio.charset.Charset;
 import java.nio.charset.StandardCharsets;
 import java.util.Collections;
@@ -50,7 +57,8 @@
     @Override
     protected void addResourceHandlers(ResourceHandlerRegistry registry) {
         registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
-        registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
+        //registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
+        registry.addResourceHandler("/swagger-ui/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
         registry.addResourceHandler("/druid/**").addResourceLocations("classpath:/META-INF/resources/druid/");
         registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
         super.addResourceHandlers(registry);
@@ -87,6 +95,7 @@
     protected void addInterceptors(InterceptorRegistry registry) {
         registry.addInterceptor(getAuthBean())
                 // .excludePathPatterns("/swagger", "/webjars/**", "/v2/**", "/sign/**")
+                //.excludePathPatterns("/v3/api-docs")
                 .addPathPatterns("/**");
         super.addInterceptors(registry);
     }
@@ -96,7 +105,24 @@
      */
     @Override
     public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
-        FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
+        //FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
+        FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter() {
+            @Override
+            protected void writeInternal(Object object, org.springframework.http.HttpOutputMessage outputMessage)
+                    throws IOException, org.springframework.http.converter.HttpMessageNotWritableException {
+                ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+                if (attributes != null) {
+                    String requestURI = attributes.getRequest().getRequestURI();
+                    if ("/v3/api-docs".equals(requestURI)) { // 鎺掗櫎 /v3/api-docs 璺緞
+                        // 浣跨敤榛樿鐨� JSON 搴忓垪鍖栵紙濡� Jackson锛夛紝杩欓噷闇�瑕佹墜鍔ㄥ鐞嗭紝涓嶈兘鐩存帴璋冪敤 super.writeInternal
+                        outputMessage.getBody().write(String.valueOf(object).getBytes());
+                        return;
+                    }
+                }
+                super.writeInternal(object, outputMessage); // 鍏朵粬璺緞浣跨敤 Fastjson2 澶勭悊
+            }
+        };
+
         FastJsonConfig config = new FastJsonConfig();
         config.setSerializerFeatures(
                 SerializerFeature.WriteNullListAsEmpty,
diff --git a/se-system/src/main/java/com/terra/system/extend/CustomizedSqlInjector.java b/se-system/src/main/java/com/terra/system/extend/CustomizedSqlInjector.java
deleted file mode 100644
index c3bc2c6..0000000
--- a/se-system/src/main/java/com/terra/system/extend/CustomizedSqlInjector.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.terra.system.extend;
-
-import com.baomidou.mybatisplus.core.injector.AbstractMethod;
-import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
-import com.baomidou.mybatisplus.core.metadata.TableInfo;
-
-import java.util.List;
-
-/**
- * 鑷畾涔夋柟娉昐QL娉ㄥ叆鍣�
- * @author WWW
- */
-public class CustomizedSqlInjector extends DefaultSqlInjector {
-    /**
-     * 濡傛灉鍙渶澧炲姞鏂规硶锛屼繚鐣檓ybatis plus鑷甫鏂规硶锛�
-     * 鍙互鍏堣幏鍙杝uper.getMethodList()锛屽啀娣诲姞add
-     */
-    @Override
-    public List<AbstractMethod> getMethodList(Class<?> mapperClass, TableInfo tableInfo) {
-        List<AbstractMethod> methodList = super.getMethodList(mapperClass, tableInfo);
-        methodList.add(new InsertBatchMethod());
-        methodList.add(new UpdateBatchMethod());
-
-        return methodList;
-    }
-}
diff --git a/se-system/src/main/java/com/terra/system/extend/InsertBatchMethod.java b/se-system/src/main/java/com/terra/system/extend/InsertBatchMethod.java
deleted file mode 100644
index 762e694..0000000
--- a/se-system/src/main/java/com/terra/system/extend/InsertBatchMethod.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package com.terra.system.extend;
-
-import com.baomidou.mybatisplus.core.injector.AbstractMethod;
-import com.baomidou.mybatisplus.core.metadata.TableFieldInfo;
-import com.baomidou.mybatisplus.core.metadata.TableInfo;
-import com.terra.system.entity.all.StaticData;
-import org.apache.ibatis.executor.keygen.NoKeyGenerator;
-import org.apache.ibatis.mapping.MappedStatement;
-import org.apache.ibatis.mapping.SqlSource;
-
-/**
- * 鎵归噺鎻掑叆鏂规硶
- * @author WWW
- */
-@SuppressWarnings("ALL")
-public class InsertBatchMethod extends AbstractMethod {
-    /**
-     * insert into user(id, name, age) values (1, "a", 17), (2, "b", 18);
-     * <script>
-     * insert into user(id, name, age) values
-     * <foreach collection="list" item="item" index="index" open="(" separator="),(" close=")">
-     * #{item.id}, #{item.name}, #{item.age}
-     * </foreach>
-     * </script>
-     */
-    @Override
-    public MappedStatement injectMappedStatement(Class<?> mapperClass, Class<?> modelClass, TableInfo tableInfo) {
-        final String sql = "<script>insert into %s %s values %s</script>";
-        final String fieldSql = prepareFieldSql(tableInfo);
-        final String valueSql = prepareValuesSql(tableInfo);
-        final String sqlResult = String.format(sql, tableInfo.getTableName(), fieldSql, valueSql);
-
-        SqlSource sqlSource = languageDriver.createSqlSource(configuration, sqlResult, modelClass);
-
-        // 绗笁涓弬鏁板繀椤诲拰RootMapper鐨勮嚜瀹氫箟鏂规硶鍚嶄竴鑷�
-        return this.addInsertMappedStatement(mapperClass, modelClass, "insertBatch", sqlSource, new NoKeyGenerator(), null, null);
-    }
-
-    private String prepareFieldSql(TableInfo tableInfo) {
-        StringBuilder fieldSql = new StringBuilder();
-        // fieldSql.append(tableInfo.getKeyColumn()).append(",")
-        // tableInfo.getFieldList().forEach(x -> fieldSql.append(x.getColumn()).append(","))
-        for (TableFieldInfo f : tableInfo.getFieldList()) {
-            if (StaticData.INSERT_EXCLUDE_FIELDS.contains(f.getProperty())) {
-                continue;
-            }
-
-            fieldSql.append(f.getColumn()).append(",");
-        }
-
-        fieldSql.delete(fieldSql.length() - 1, fieldSql.length());
-        fieldSql.insert(0, "(");
-        fieldSql.append(")");
-
-        return fieldSql.toString();
-    }
-
-    private String prepareValuesSql(TableInfo tableInfo) {
-        final StringBuilder valueSql = new StringBuilder();
-        valueSql.append("<foreach collection=\"list\" item=\"item\" index=\"index\" open=\"(\" separator=\"),(\" close=\")\">");
-        // valueSql.append("#{item.").append(tableInfo.getKeyProperty()).append("},")
-        // tableInfo.getFieldList().forEach(x -> valueSql.append("#{item.").append(x.getProperty()).append("},"))
-        for (TableFieldInfo f : tableInfo.getFieldList()) {
-            if (StaticData.INSERT_EXCLUDE_FIELDS.contains(f.getProperty())) {
-                continue;
-            }
-
-            valueSql.append("geom".equals(f.getProperty()) ? "${item." : "#{item.").append(f.getProperty()).append("},");
-        }
-
-        valueSql.delete(valueSql.length() - 1, valueSql.length());
-        valueSql.append("</foreach>");
-
-        return valueSql.toString();
-    }
-}
diff --git a/se-system/src/main/java/com/terra/system/extend/UpdateBatchMethod.java b/se-system/src/main/java/com/terra/system/extend/UpdateBatchMethod.java
deleted file mode 100644
index c045054..0000000
--- a/se-system/src/main/java/com/terra/system/extend/UpdateBatchMethod.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package com.terra.system.extend;
-
-import com.baomidou.mybatisplus.core.injector.AbstractMethod;
-import com.baomidou.mybatisplus.core.metadata.TableFieldInfo;
-import com.baomidou.mybatisplus.core.metadata.TableInfo;
-import com.baomidou.mybatisplus.core.toolkit.sql.SqlScriptUtils;
-import com.terra.system.entity.all.StaticData;
-import org.apache.ibatis.mapping.MappedStatement;
-import org.apache.ibatis.mapping.SqlSource;
-
-/**
- * 鎵归噺鏇存柊鏂规硶
- * @author WWW
- */
-@SuppressWarnings("ALL")
-public class UpdateBatchMethod extends AbstractMethod {
-    /**
-     * update user set name = "a", age = 17 where id = 1;
-     * update user set name = "b", age = 18 where id = 2;
-     * <script>
-     * <foreach collection="list" item="item" separator=";">
-     * update user
-     * <set>
-     * <if test="item.name != null and item.name != ''">
-     * name = #{item.name,jdbcType=VARCHAR},
-     * </if>
-     * <if test="item.age != null">
-     * age = #{item.age,jdbcType=INTEGER},
-     * </if>
-     * </set>
-     * where id = #{item.id,jdbcType=INTEGER}
-     * </foreach>
-     * </script>
-     */
-    @Override
-    public MappedStatement injectMappedStatement(Class<?> mapperClass, Class<?> modelClass, TableInfo tableInfo) {
-        String sql = "<script>\n<foreach collection=\"list\" item=\"item\" separator=\";\">\nupdate %s %s where %s=#{%s} %s\n</foreach>\n</script>";
-        String additional = tableInfo.isWithVersion() ? tableInfo.getVersionFieldInfo().getVersionOli("item", "item.") : "" + tableInfo.getLogicDeleteSql(true, true);
-        //String setSql = sqlSet(tableInfo.isWithLogicDelete(), false, tableInfo, false, "item", "item.");
-        String setSql = getSqlSet(tableInfo.isWithLogicDelete(), false, tableInfo, false, "item", "item.");
-        String sqlResult = String.format(sql, tableInfo.getTableName(), setSql, tableInfo.getKeyColumn(), "item." + tableInfo.getKeyProperty(), additional);
-
-        // update %s %s where %s=#{%s} %s
-        // update tab set a=#{a} where gid=1
-
-        SqlSource sqlSource = languageDriver.createSqlSource(configuration, sqlResult, modelClass);
-
-        // 绗笁涓弬鏁板繀椤诲拰RootMapper鐨勮嚜瀹氫箟鏂规硶鍚嶄竴鑷�
-        return this.addUpdateMappedStatement(mapperClass, modelClass, "updateBatch", sqlSource);
-    }
-
-    private String getSqlSet(boolean logic, boolean ew, TableInfo table, boolean judgeAliasNull, final String alias, final String prefix) {
-        // String sqlScript = table.getAllSqlSet(logic, prefix);
-        String sqlScript = getSqlSet(table);
-        if (judgeAliasNull) {
-            sqlScript = SqlScriptUtils.convertIf(sqlScript, String.format("%s != null", alias), true);
-        }
-        if (ew) {
-            sqlScript = sqlScript + "\n";
-            sqlScript = sqlScript + this.convertIfEwParam("ew.sqlSet", false);
-        }
-
-        sqlScript = SqlScriptUtils.convertSet(sqlScript);
-
-        return sqlScript;
-    }
-
-    private String getSqlSet(TableInfo tableInfo) {
-        StringBuilder sb = new StringBuilder();
-        for (TableFieldInfo f : tableInfo.getFieldList()) {
-            if (StaticData.UPDATE_EXCLUDE_FIELDS.contains(f.getProperty())) {
-                continue;
-            }
-
-            if ("geom".equals(f.getProperty())) {
-                sb.append("<if test=\"item['geom'] != null\">geom=${item.geom},</if>\n");
-                continue;
-            }
-
-            sb.append(String.format("<if test=\"item['%s'] != null\">%s=#{item.%s},</if>\n", f.getProperty(), f.getColumn(), f.getProperty()));
-        }
-        sb.deleteCharAt(sb.length() - 1);
-
-        return sb.toString();
-    }
-}
diff --git a/se-system/src/main/resources/application-prod.yml b/se-system/src/main/resources/application-prod.yml
index 22516ae..308eca4 100644
--- a/se-system/src/main/resources/application-prod.yml
+++ b/se-system/src/main/resources/application-prod.yml
@@ -85,6 +85,23 @@
 
 mybatis-plus:
   type-aliases-package: com.terra.system.entity
+  mapper-locations: classpath:mapper/**/*.xml
+
+# springdoc閰嶇疆
+springdoc:
+  gatewayUrl: /${spring.application.name}
+  api-docs:
+    # 鏄惁寮�鍚帴鍙f枃妗�
+    enabled: true
+  info:
+    # 鏍囬
+    title: '绯荤粺妯″潡鎺ュ彛鏂囨。'
+    # 鎻忚堪
+    description: '绯荤粺妯″潡鎺ュ彛鎻忚堪'
+    # 浣滆�呬俊鎭�
+    contact:
+      name: wuww
+      url: https://www.smartearth.cn/
 
 # logging
 logging:
@@ -99,8 +116,6 @@
 
 # 绯荤粺閰嶇疆
 sys:
-  # 鍚敤swagger
-  swaggerEnable: true
   # 鑷姩鏌ヨ
   autoQuery: 0
   # 绠$悊鍛業D
diff --git a/sm.txt b/sm.txt
index f670dee..ce68f9d 100644
--- a/sm.txt
+++ b/sm.txt
@@ -7,7 +7,11 @@
 
 
 
-
+springfox:
+  documentation:
+    swagger-ui:
+      enabled: false
+    auto-startup: false
 ------------------------------------------------------------------- 鍔熻兘妯″潡锛屾敮鎸佺嫭绔嬮儴缃�
   se-common锛�      閫氱敤妯″潡
  se-gateway锛�8001锛岀郴缁熺綉鍏�

--
Gitblit v1.9.3