feat(log): 新增日志分析功能模块
- 添加日志分析控制器,提供日志分析、实时日志获取、日志搜索和旧日志清理接口 - 新增日志分析工具类,支持记录请求详情、异常信息、性能数据和安全事件- 在JWT认证过滤器中集成安全日志记录功能 - 移除菜单控制器中的流处理工具类引用 - 移除公司和订单控制器中对商户申请服务的依赖及相关业务逻辑 - 移除支付控制器中的余额支付接口及相关实体类引用- 删除OA应用控制器整个文件 - 注释Mybatis配置中的cms_domain表名 - 新增菜单导入参数实体类,支持Excel菜单数据导入功能
This commit is contained in:
84
scripts/migrate-swagger-to-springdoc.sh
Executable file
84
scripts/migrate-swagger-to-springdoc.sh
Executable file
@@ -0,0 +1,84 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Swagger 到 SpringDoc OpenAPI 注解迁移脚本
|
||||
|
||||
echo "开始 Swagger 到 SpringDoc OpenAPI 注解迁移..."
|
||||
|
||||
# 查找所有 Java 文件
|
||||
find src/main/java -name "*.java" -type f | while read file; do
|
||||
echo "处理文件: $file"
|
||||
|
||||
# 替换 import 语句
|
||||
sed -i '' 's/import io\.swagger\.annotations\.Api;/import io.swagger.v3.oas.annotations.tags.Tag;/g' "$file"
|
||||
sed -i '' 's/import io\.swagger\.annotations\.ApiModel;/import io.swagger.v3.oas.annotations.media.Schema;/g' "$file"
|
||||
sed -i '' 's/import io\.swagger\.annotations\.ApiModelProperty;/import io.swagger.v3.oas.annotations.media.Schema;/g' "$file"
|
||||
sed -i '' 's/import io\.swagger\.annotations\.ApiOperation;/import io.swagger.v3.oas.annotations.Operation;/g' "$file"
|
||||
sed -i '' 's/import io\.swagger\.annotations\.ApiParam;/import io.swagger.v3.oas.annotations.Parameter;/g' "$file"
|
||||
|
||||
# 替换注解
|
||||
sed -i '' 's/@Api(tags = \([^)]*\))/@Tag(name = \1)/g' "$file"
|
||||
sed -i '' 's/@ApiModel(value = \([^,]*\), description = \([^)]*\))/@Schema(name = \1, description = \2)/g' "$file"
|
||||
sed -i '' 's/@ApiModel(description = \([^)]*\))/@Schema(description = \1)/g' "$file"
|
||||
sed -i '' 's/@ApiModelProperty(value = \([^)]*\))/@Schema(description = \1)/g' "$file"
|
||||
sed -i '' 's/@ApiModelProperty(\([^)]*\))/@Schema(description = \1)/g' "$file"
|
||||
sed -i '' 's/@ApiOperation(\([^)]*\))/@Operation(summary = \1)/g' "$file"
|
||||
sed -i '' 's/@ApiParam(\([^)]*\))/@Parameter(\1)/g' "$file"
|
||||
|
||||
done
|
||||
|
||||
echo "注解迁移完成!"
|
||||
|
||||
# 更新 SwaggerConfig.java
|
||||
echo "更新 SwaggerConfig.java..."
|
||||
|
||||
cat > src/main/java/com/gxwebsoft/common/core/config/OpenApiConfig.java << 'EOF'
|
||||
package com.gxwebsoft.common.core.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.security.SecurityRequirement;
|
||||
import io.swagger.v3.oas.models.security.SecurityScheme;
|
||||
import io.swagger.v3.oas.models.Components;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* OpenAPI 配置
|
||||
*
|
||||
* @author WebSoft
|
||||
* @since 2025-09-11
|
||||
*/
|
||||
@Configuration
|
||||
public class OpenApiConfig {
|
||||
|
||||
@Resource
|
||||
private ConfigProperties config;
|
||||
|
||||
@Bean
|
||||
public OpenAPI customOpenAPI() {
|
||||
return new OpenAPI()
|
||||
.info(new Info()
|
||||
.title(config.getSwaggerTitle())
|
||||
.description(config.getSwaggerDescription())
|
||||
.version(config.getSwaggerVersion())
|
||||
.contact(new Contact()
|
||||
.name("科技小王子")
|
||||
.url("https://websoft.top")
|
||||
.email("170083662@qq.com")))
|
||||
.addSecurityItem(new SecurityRequirement().addList("Authorization"))
|
||||
.components(new Components()
|
||||
.addSecuritySchemes("Authorization",
|
||||
new SecurityScheme()
|
||||
.type(SecurityScheme.Type.HTTP)
|
||||
.scheme("bearer")
|
||||
.bearerFormat("JWT")
|
||||
.description("JWT 认证")));
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
echo "OpenAPI 配置文件创建完成!"
|
||||
echo "迁移脚本执行完成!请检查编译结果。"
|
||||
Reference in New Issue
Block a user