合并升级3.9.0

This commit is contained in:
JEECG
2025-12-09 11:45:38 +08:00
740 changed files with 33732 additions and 181938 deletions

View File

@ -11,7 +11,7 @@ import org.jeecgframework.codegenerate.window.CodeWindow;
*/
public class JeecgOneGUI {
/** 使用手册: https://help.jeecg.com/vue3/codegen/gui.html */
/** 使用手册: https://help.jeecg.com/java/codegen/gui */
public static void main(String[] args) {
new CodeWindow().pack();
}

View File

@ -1,7 +1,10 @@
package org.jeecg.config.flyway;
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
import jakarta.annotation.PostConstruct;
import lombok.extern.slf4j.Slf4j;
import org.flywaydb.core.Flyway;
import org.flywaydb.core.api.FlywayException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@ -13,11 +16,11 @@ import javax.sql.DataSource;
import java.util.Map;
/**
* @Description: 初始化flyway配置 修改之后支持多数据源,当出现异常时打印日志,不影响项目启动
*
* @author: wangshuai
* @date: 2024/3/12 10:03
*/
* @Description: 初始化flyway配置 修改之后支持多数据源,当出现异常时打印日志,不影响项目启动
*
* @author: wangshuai
* @date: 2024/3/12 10:03
*/
@Slf4j
@Configuration
public class FlywayConfig {
@ -93,42 +96,42 @@ public class FlywayConfig {
*/
@Value("${spring.flyway.clean-disabled:true}")
private Boolean cleanDisabled;
// @Bean
// public void migrate() {
// if(!enabled){
// return;
// }
//
// DynamicRoutingDataSource ds = (DynamicRoutingDataSource) dataSource;
// Map<String, DataSource> dataSources = ds.getDataSources();
// dataSources.forEach((k, v) -> {
// if("master".equals(k)){
// String databaseType = environment.getProperty("spring.datasource.dynamic.datasource." + k + ".url");
// if (databaseType != null && databaseType.contains("mysql")) {
// try {
// Flyway flyway = Flyway.configure()
// .dataSource(v)
// .locations(locations)
// .encoding(encoding)
// .sqlMigrationPrefix(sqlMigrationPrefix)
// .sqlMigrationSeparator(sqlMigrationSeparator)
// .placeholderPrefix(placeholderPrefix)
// .placeholderSuffix(placeholderSuffix)
// .sqlMigrationSuffixes(sqlMigrationSuffixes)
// .validateOnMigrate(validateOnMigrate)
// .baselineOnMigrate(baselineOnMigrate)
// .cleanDisabled(cleanDisabled)
// .load();
// flyway.migrate();
// log.info("【升级提示】平台集成了MySQL库的Flyway数据库版本自动升级! ");
// } catch (FlywayException e) {
// log.error("【升级提示】flyway执行sql脚本失败", e);
// }
// } else {
// log.warn("【升级提示】平台只集成了MySQL库的Flyway实现了数据库版本自动升级! 其他类型的数据库,您可以考虑手工升级~");
// }
// }
// });
// }
@PostConstruct
public void migrate() {
if(!enabled){
return;
}
DynamicRoutingDataSource ds = (DynamicRoutingDataSource) dataSource;
Map<String, DataSource> dataSources = ds.getDataSources();
dataSources.forEach((k, v) -> {
if("master".equals(k)){
String databaseType = environment.getProperty("spring.datasource.dynamic.datasource." + k + ".url");
if (databaseType != null && databaseType.contains("mysql")) {
try {
Flyway flyway = Flyway.configure()
.dataSource(v)
.locations(locations)
.encoding(encoding)
.sqlMigrationPrefix(sqlMigrationPrefix)
.sqlMigrationSeparator(sqlMigrationSeparator)
.placeholderPrefix(placeholderPrefix)
.placeholderSuffix(placeholderSuffix)
.sqlMigrationSuffixes(sqlMigrationSuffixes)
.validateOnMigrate(validateOnMigrate)
.baselineOnMigrate(baselineOnMigrate)
.cleanDisabled(cleanDisabled)
.load();
flyway.migrate();
log.info("【数据库升级】平台集成了MySQL库的Flyway数据库版本自动升级! ");
} catch (FlywayException e) {
log.error("【数据库升级】flyway执行sql脚本失败", e);
}
} else {
log.warn("【数据库升级】平台只集成了MySQL库的Flyway实现了数据库版本自动升级! 其他类型的数据库,您可以考虑手工升级~");
}
}
});
}
}

View File

@ -50,7 +50,9 @@ spring:
# lazy-initialization: true
flyway:
# 是否启用flyway
enabled: true
enabled: false
# 迁移sql脚本存放路径
locations: classpath:flyway/sql/mysql
# 是否关闭要清除已有库下的表功能,生产环境必须为true,否则会删库,非常重要!!!
clean-disabled: true
servlet:
@ -201,7 +203,7 @@ mybatis-plus:
# 默认数据库表下划线命名
table-underline: true
configuration:
# # 这个配置会将执行的sql打印出来在开发或测试的时候可以用
# 这个配置会将执行的sql打印出来在开发或测试的时候可以用
#log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
# 返回类型为Map,显示null对应的字段
call-setters-on-nulls: true
@ -225,6 +227,9 @@ jeecg:
user: postgres
password: postgres
table: embeddings
# Unipush配置 云函数调用 URL 化地址
unicloud:
pushUrl:
# 平台上线安全配置
firewall:
# 数据源安全 (开启后Online报表和图表的数据源为必填)
@ -248,6 +253,8 @@ jeecg:
webapp: /opt/webapp
shiro:
excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/bigscreen/category/**,/bigscreen/visual/**,/bigscreen/map/**,/jmreport/bigscreen2/**
# 短信发送方式 aliyun阿里云短信 tencent腾讯云短信
smsSendType: aliyun
#阿里云oss存储和大鱼短信秘钥配置
oss:
accessKey: ??
@ -266,6 +273,16 @@ jeecg:
SMS_465391221:
# 注册账号短信模板编码
SMS_175430166:
#腾讯短信秘钥配置
tencent:
# 接入域名
endpoint: sms.tencentcloudapi.com
secretId: ??
secretKey: ??
# 应用ID
sdkAppId: ??
# 地域信息
region: ap-beijing
# 在线预览文件服务器地址配置
file-view-domain: http://fileview.jeecg.com
# minio文件上传

View File

@ -141,9 +141,8 @@ spring:
web-stat-filter:
enabled: true
dynamic:
druid: # 全局druid参数绝大部分值和默认保持一致。(现已支持的参数如下,不清楚含义不要乱设置)
druid:
# 连接池的配置信息
# 初始化大小,最小,最大
initial-size: 5
min-idle: 5
maxActive: 1000

View File

@ -48,6 +48,8 @@ spring:
flyway:
# 是否启用flyway
enabled: false
# 迁移sql脚本存放路径
locations: classpath:flyway/sql/mysql
# 是否关闭要清除已有库下的表功能,生产环境必须为true,否则会删库,非常重要!!!
clean-disabled: true
servlet:
@ -70,7 +72,7 @@ spring:
quartz:
job-store-type: jdbc
jdbc:
initialize-schema: embedded
initialize-schema: never
#定时任务启动开关true-开 false-关
auto-startup: true
#延迟1秒启动定时任务
@ -206,7 +208,7 @@ jeecg:
enabled: true
model: deepseek-chat
apiKey: ??
apiHost: https://api.deepseek.com/v1
apiHost: https://api.deepseek.com
timeout: 60
# AIRag向量库
ai-rag:
@ -217,6 +219,9 @@ jeecg:
user: postgres
password: postgres
table: embeddings
# Unipush配置 云函数调用 URL 化地址
unicloud:
pushUrl:
# 平台上线安全配置
firewall:
# 数据源安全 (开启后Online报表和图表的数据源为必填)

View File

@ -50,6 +50,8 @@ spring:
enabled: false
# 是否关闭要清除已有库下的表功能,生产环境必须为true,否则会删库,非常重要!!!
clean-disabled: true
# 迁移sql脚本存放路径
locations: classpath:flyway/sql/mysql
servlet:
multipart:
max-file-size: 10MB
@ -220,6 +222,9 @@ jeecg:
user: postgres
password: postgres
table: embeddings
# Unipush配置 云函数调用 URL 化地址
unicloud:
pushUrl:
# 平台上线安全配置
firewall:
# 数据源安全 (开启后Online报表和图表的数据源为必填)
@ -243,6 +248,8 @@ jeecg:
webapp: /opt/jeecg-boot/webapp
shiro:
excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/bigscreen/category/**,/bigscreen/visual/**,/bigscreen/map/**,/jmreport/bigscreen2/**,/api/getUserInfo
# 短信发送方式 aliyun阿里云短信 tencent腾讯云短信
smsSendType: aliyun
#阿里云oss存储和大鱼短信秘钥配置
oss:
accessKey: ??
@ -263,6 +270,16 @@ jeecg:
# 注册账号短信模板编码
SMS_175430166:
SMS_461885023:
#腾讯短信秘钥配置
tencent:
# 接入域名
endpoint: sms.tencentcloudapi.com
secretId: ??
secretKey: ??
# 应用ID
sdkAppId: ??
# 地域信息
region: ap-beijing
# 在线预览文件服务器地址配置
file-view-domain: http://fileview.jeecg.com
# minio文件上传

View File

@ -223,6 +223,9 @@ jeecg:
user: postgres
password: postgres
table: embeddings
# Unipush配置 云函数调用 URL 化地址
unicloud:
pushUrl:
# 平台上线安全配置
firewall:
# 数据源安全 (开启后Online报表和图表的数据源为必填)
@ -246,6 +249,8 @@ jeecg:
webapp: D://opt//webapp
shiro:
excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/bigscreen/category/**,/bigscreen/visual/**,/bigscreen/map/**,/jmreport/bigscreen2/**
# 短信发送方式 aliyun阿里云短信 tencent腾讯云短信
smsSendType: aliyun
#阿里云oss存储和大鱼短信秘钥配置
oss:
accessKey: ??
@ -265,6 +270,16 @@ jeecg:
SMS_465391221:
# 注册账号短信模板编码
SMS_175430166:
#腾讯短信秘钥配置
tencent:
# 接入域名
endpoint: sms.tencentcloudapi.com
secretId: ??
secretKey: ??
# 应用ID
sdkAppId: ??
# 地域信息
region: ap-beijing
# 在线预览文件服务器地址配置
file-view-domain: http://127.0.0.1:8012
# minio文件上传

View File

@ -1,5 +1,7 @@
spring:
application:
name: jeecg-system
config:
import: optional:classpath:config/application-liteflow.yml
profiles:
active: '@profile.name@'

View File

@ -9,7 +9,7 @@ ${AnsiColor.BRIGHT_BLUE}
${AnsiColor.BRIGHT_GREEN}
Jeecg Boot Version: 3.8.3
Jeecg Boot Version: 3.9.0
Spring Boot Version: ${spring-boot.version}${spring-boot.formatted-version}
产品官网: www.jeecg.com
版权所属: 北京国炬信息技术有限公司

View File

@ -0,0 +1,3 @@
-- 升级积木BI到V2.2.0版本
ALTER TABLE `onl_drag_page`
MODIFY COLUMN `des_json` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '仪表盘主配置JSON' AFTER `cover_url`;

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
update sys_depart set org_category = '2' where org_category ='1' and parent_id is not null

View File

@ -0,0 +1 @@
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1930223114757611522', '1890213291321749505', 'AI流程测试', NULL, NULL, 0, NULL, NULL, 2, 'airag:flow:debug', '1', NULL, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2025-12-01 19:20:08', NULL, NULL, 0, 0, '1', 0);