This commit is contained in:
kk
2026-07-08 17:57:11 +08:00
commit f1e6599892
743 changed files with 159169 additions and 0 deletions
+75
View File
@@ -0,0 +1,75 @@
#spring配置
spring:
data:
redis:
##redis 单机环境配置
host: 127.0.0.1
port: 6379
password:
database: 0
ssl:
enabled: false
##redis 集群环境配置
#cluster:
# nodes: 127.0.0.1:7001,127.0.0.1:7002,127.0.0.1:7003
# commandTimeout: 5000
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
#driver-class-name: org.postgresql.Driver
#driver-class-name: oracle.jdbc.OracleDriver
#driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
#driver-class-name: dm.jdbc.driver.DmDriver
#driver-class-name: com.yashandb.jdbc.Driver
#driver-class-name: com.kingbase8.Driver
druid:
# MySql、PostgreSQL、SqlServer、DaMeng校验
validation-query: select 1
# Oracle、YashanDB校验
#oracle: true
#validation-query: select 1 from dual
#项目模块集中配置
blade:
#分布式锁配置
lock:
enabled: false
address: redis://127.0.0.1:6379
#多团队协作服务配置
loadbalancer:
#开启配置
enabled: true
#负载均衡优先调用的ip段
prior-ip-pattern:
- 192.168.0.*
- 127.0.0.1
#通用开发生产环境数据库地址(特殊情况可在对应的子工程里配置覆盖)
datasource:
dev:
# MySql
url: jdbc:mysql://localhost:3306/bladex?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&tinyInt1isBit=false&allowMultiQueries=true&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true
username: root
password: root
# PostgreSQL
#url: jdbc:postgresql://127.0.0.1:5432/bladex
#username: postgres
#password: 123456
# Oracle
#url: jdbc:oracle:thin:@//127.0.0.1:1521/ORCLPDB
#username: BLADEX
#password: BLADEX
# SqlServer
#url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=bladex
#username: bladex
#password: bladex
# DaMeng
#url: jdbc:dm://127.0.0.1:5236/BLADEX?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8
#username: BLADEX
#password: BLADEX
# YashanDB
#url: jdbc:yasdb://127.0.0.1:1688/BLADEX
#username: BLADEX
#password: BLADEX
# KingbaseES
#url: jdbc:kingbase8://localhost:4321/bladex
#username: kingbase
#password: 123456
+47
View File
@@ -0,0 +1,47 @@
#spring配置
spring:
data:
redis:
##redis 单机环境配置
##将docker脚本部署的redis服务映射为宿主机ip
##生产环境推荐使用阿里云高可用redis服务并设置密码
host: 192.168.0.188
port: 3379
password:
database: 0
ssl:
enabled: false
##redis 集群环境配置
#cluster:
# nodes: 127.0.0.1:7001,127.0.0.1:7002,127.0.0.1:7003
# commandTimeout: 5000
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
#driver-class-name: org.postgresql.Driver
#driver-class-name: oracle.jdbc.OracleDriver
#driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
#driver-class-name: dm.jdbc.driver.DmDriver
#driver-class-name: com.yashandb.jdbc.Driver
#driver-class-name: com.kingbase8.Driver
druid:
# MySql、PostgreSQL、SqlServer、DaMeng校验
validation-query: select 1
# Oracle、YashanDB校验
#oracle: true
#validation-query: select 1 from dual
#项目模块集中配置
blade:
#分布式锁配置
lock:
##是否启用分布式锁
enabled: false
##将docker脚本部署的redis服务映射为宿主机ip
##生产环境推荐使用阿里云高可用redis服务并设置密码
address: redis://192.168.0.188:3379
#通用开发生产环境数据库地址(特殊情况可在对应的子工程里配置覆盖)
datasource:
prod:
url: jdbc:mysql://192.168.0.188:3306/bladex?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&tinyInt1isBit=false&allowMultiQueries=true&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true
username: root
password: root
+45
View File
@@ -0,0 +1,45 @@
#spring配置
spring:
data:
redis:
##redis 单机环境配置
##将docker脚本部署的redis服务映射为宿主机ip
host: 192.168.0.188
port: 3379
password:
database: 0
ssl:
enabled: false
##redis 集群环境配置
#cluster:
# nodes: 127.0.0.1:7001,127.0.0.1:7002,127.0.0.1:7003
# commandTimeout: 5000
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
#driver-class-name: org.postgresql.Driver
#driver-class-name: oracle.jdbc.OracleDriver
#driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
#driver-class-name: dm.jdbc.driver.DmDriver
#driver-class-name: com.yashandb.jdbc.Driver
#driver-class-name: com.kingbase8.Driver
druid:
# MySql、PostgreSQL、SqlServer、DaMeng校验
validation-query: select 1
# Oracle、YashanDB校验
#oracle: true
#validation-query: select 1 from dual
#项目模块集中配置
blade:
#分布式锁配置
lock:
##是否启用分布式锁
enabled: false
##将docker脚本部署的redis服务映射为宿主机ip
address: redis://192.168.0.188:3379
#通用开发生产环境数据库地址(特殊情况可在对应的子工程里配置覆盖)
datasource:
test:
url: jdbc:mysql://192.168.0.188:3306/bladex?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&tinyInt1isBit=false&allowMultiQueries=true&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true
username: root
password: root
+268
View File
@@ -0,0 +1,268 @@
#服务器配置
server:
undertow:
threads:
# 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
io: 16
# 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
worker: 400
# 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
buffer-size: 1024
# 是否分配的直接内存
direct-buffers: true
#spring配置
spring:
cloud:
nacos:
discovery:
# 禁用云命名空间解析,防止和云平台环境变量冲突
isUseCloudNamespaceParsing: false
config:
# 禁用云命名空间解析,防止和云平台环境变量冲突
isUseCloudNamespaceParsing: false
sentinel:
eager: true
devtools:
restart:
log-condition-evaluation-delta: false
livereload:
port: 23333
#feign配置
feign:
sentinel:
enabled: true
okhttp:
enabled: true
httpclient:
enabled: false
#对外暴露端口
management:
endpoints:
web:
exposure:
include: "*"
endpoint:
health:
show-details: always
# mybatis
mybatis-plus:
mapper-locations: classpath:org/springblade/**/mapper/*Mapper.xml
#实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: org.springblade.**.entity
#typeEnumsPackage: org.springblade.dashboard.entity.enums
global-config:
# 关闭MP3.0自带的banner
banner: false
db-config:
#主键类型 0:"数据库ID自增", 1:"不操作", 2:"用户输入ID",3:"数字型snowflake", 4:"全局唯一ID UUID", 5:"字符串型snowflake";
id-type: assign_id
#字段策略
insert-strategy: not_null
update-strategy: not_null
where-strategy: not_null
#驼峰下划线转换
table-underline: true
# 逻辑删除配置
# 逻辑删除全局值(1表示已删除,这也是Mybatis Plus的默认配置)
logic-delete-value: 1
# 逻辑未删除全局值(0表示未删除,这也是Mybatis Plus的默认配置)
logic-not-delete-value: 0
configuration:
map-underscore-to-camel-case: true
cache-enabled: false
jdbc-type-for-null: 'null'
#springdoc-openapi配置
springdoc:
default-flat-param-object: true
#knife4j配置
knife4j:
#基础认证
basic:
enable: false
username: blade
password: blade
#增强配置
setting:
enableSwaggerModels: true
enableDocumentManage: true
enableHost: false
enableHostText: http://localhost
enableRequestCache: true
enableFilterMultipartApis: false
enableFilterMultipartApiMethodType: POST
language: zh_cn
enableFooter: false
enableFooterCustom: true
footerCustomContent: Copyright © 2026 BladeX All Rights Reserved
#swagger公共信息
swagger:
title: BladeX 接口文档系统
description: BladeX 接口文档系统
version: 4.10.0.RELEASE
license: Powered By BladeX
license-url: https://bladex.cn
terms-of-service-url: https://bladex.cn
contact:
name: 翼宿
email: bladejava@qq.com
url: https://gitee.com/smallc
#blade配置
blade:
#oauth2配置
oauth2:
#启用 oauth2
enabled: true
#使用 @org.springblade.test.Sm2KeyGenerator 获取,用于国密sm2验签,需和前端保持一致
public-key: ${BLADE_OAUTH2_PUBLIC_KEY}
#使用 @org.springblade.test.Sm2KeyGenerator 获取,用于国密sm2解密,前端无需配置
private-key: ${BLADE_OAUTH2_PRIVATE_KEY}
#token配置
token:
#是否有状态
state: false
#是否单用户登录
single: false
#单用户登录范围
single-level: all
#token签名 使用blade-auth服务 @org.springblade.test.SignKeyGenerator 获取
sign-key: ${BLADE_TOKEN_SIGN_KEY}
#token加密 使用blade-auth服务 @org.springblade.test.CryptoKeyGenerator 获取
crypto-key: ${BLADE_TOKEN_CRYPTO_KEY}
#超级密钥配置
key:
#启用超级密钥
enabled: false
#密钥加密 使用 @org.springblade.test.CryptoKeyGenerator 获取
crypto-key: ${BLADE_KEY_CRYPTO_KEY}
#接口配置
api:
#报文加密配置
crypto:
#启用报文加密配置
enabled: false
#使用blade-auth服务 @org.springblade.test.CryptoKeyGenerator 获取,需和前端保持一致
aes-key: ${BLADE_API_CRYPTO_AES_KEY}
#使用blade-auth服务 @org.springblade.test.CryptoKeyGenerator 获取,需和前端保持一致
des-key: ${BLADE_API_CRYPTO_DES_KEY}
#jackson配置
jackson:
#null自动转空值
null-to-empty: true
#大数字自动转字符串
big-num-to-string: true
#支持text文本请求,与报文加密同时开启
support-text-plain: false
#视图配置
view:
#动态模式的默认视图
default-view: summary
#角色→视图映射
role-mapping:
administrator: administrator
admin: admin
user: detail
guest: summary
#redis序列化方式
redis:
serializer-type: protostuff
#限流管理配置
ratelimit:
#是否开启全局动态限流
enabled: true
#额外放行路径
exclude-patterns:
- /blade-test/**
#触发限流时的提示文案
reject-message: 请求过于频繁,请稍后再试
#日志配置
log:
request:
#开启控制台请求日志
enabled: true
#控制台请求日志忽略
skip-url:
- /notice/list
- /wechat/**
#开启错误日志入库
error-log: true
#xss配置
xss:
enabled: true
skip-url:
- /wechat
- /qq
#安全框架配置
secure:
#严格模式
#缺失令牌字段则取消授权
strict-token: true
#缺失请求头则取消授权
strict-header: true
#接口放行
skip-url:
- /test/**
#授权认证配置
auth:
- method: ALL
pattern: /chat/wechat/**
expression: "hasAuth()"
- method: ALL
pattern: /chat/qq/**
expression: "hasStrictToken()"
- method: ALL
pattern: /chat/ding/**
expression: "hasStrictHeader()"
- method: ALL
pattern: /dashboard/notice
expression: "hasMenu('notice')"
- method: POST
pattern: /dashboard/upload
expression: "hasTimeAuth(9, 17)"
- method: POST
pattern: /dashboard/submit
expression: "hasAnyRole('administrator', 'admin', 'user')"
#基础认证配置
basic:
- method: ALL
pattern: /dashboard/info
username: "blade"
password: "blade"
#动态签名认证配置
sign:
- method: ALL
pattern: /dashboard/sign
crypto: "sha1"
#多终端认证配置
client:
- client-id: sword
path-patterns:
- /sword/**
- client-id: saber
path-patterns:
- /saber/**
#多租户配置
tenant:
#多租户增强
enhance: true
#多租户授权保护
license: false
#动态数据源功能
dynamic-datasource: false
#动态数据源全局扫描
dynamic-global: false
#多租户字段名
column: tenant_id
#排除多租户逻辑
exclude-tables:
- blade_user
#分库分表配置
sharding:
enabled: false
+28
View File
@@ -0,0 +1,28 @@
[
{
"id": "desk-route",
"order": 0,
"predicates": [
{
"name": "Path",
"args": {
"pattern": "/blade-desk/**"
}
}
],
"filters": [],
"uri": "lb://blade-desk-me"
},
{
"id": "example-route",
"order": 0,
"predicates": [{
"name": "Path",
"args": {
"pattern": "/example"
}
}],
"filters": [],
"uri": "http://www.example.com"
}
]
+876
View File
@@ -0,0 +1,876 @@
Table: blade_attach(附件表)
| Field | Type | Null | Key | Default | Remarks |
| ------------- | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| link | VARCHAR(1000) | YES | | | 附件地址 |
| domain_url | VARCHAR(500) | YES | | | 附件域名 |
| name | VARCHAR(500) | YES | | | 附件名称 |
| original_name | VARCHAR(500) | YES | | | 附件原名 |
| extension | VARCHAR(12) | YES | | | 附件拓展名 |
| attach_size | BIGINT(20) | YES | | | 附件大小 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_auth_lock(认证锁定记录表)
| Field | Type | Null | Key | Default | Remarks |
| --------------- | ------------ | ---- | --- | ------- | ----------------------------------------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| user_id | BIGINT(20) | YES | | | 关联用户ID |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| lock_type | VARCHAR(20) | NO | | | 锁定类型(SYSTEM-系统自动/MANUAL-人工手动) |
| lock_status | VARCHAR(20) | NO | | | 锁定状态(PRE_LOCKED-待锁定/LOCKED-锁定中/UN_LOCKED-已解锁) |
| lock_target | VARCHAR(100) | NO | | | 锁定目标(账号名或IP地址) |
| remote_ip | VARCHAR(50) | YES | | | 请求IP |
| user_agent | VARCHAR(500) | YES | | | 用户代理 |
| fail_count | INT(10) | YES | | 0 | 认证失败次数 |
| lock_begin_time | DATETIME(19) | NO | | | 锁定开始时间 |
| lock_end_time | DATETIME(19) | YES | | | 锁定结束时间(MANUAL类型为空表示永久锁定,SYSTEM-LOCKED状态为锁定到期时间) |
| lock_reason | VARCHAR(500) | YES | | | 锁定原因 |
| unlock_reason | VARCHAR(500) | YES | | | 解锁原因 |
| status | INT(10) | YES | | 1 | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_api_key(令牌权限表)
| Field | Type | Null | Key | Default | Remarks |
| ----------- | ------------ | ---- | --- | ------- | ------------ |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| user_id | BIGINT(20) | NO | | | 用户ID |
| name | VARCHAR(128) | NO | | | 密钥名称 |
| api_key | VARCHAR(128) | NO | | | API Key |
| api_path | TEXT(65535) | YES | | | 访问权限 |
| expire_time | DATETIME(19) | YES | | | 过期时间 |
| ext_params | TEXT(65535) | YES | | | 扩展参数(JSON)|
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | 1 | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_api_key_log(令牌调用日志表)
| Field | Type | Null | Key | Default | Remarks |
| ----------- | ------------- | ---- | --- | ----------------- | --------------- |
| id | BIGINT(20) | NO | PRI | | 编号 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| service_id | VARCHAR(32) | YES | | | 服务ID |
| server_host | VARCHAR(255) | YES | | | 服务器名 |
| server_ip | VARCHAR(255) | YES | | | 服务器IP地址 |
| env | VARCHAR(255) | YES | | | 服务器环境 |
| api_key_id | BIGINT(20) | YES | | | API Key主键ID |
| method | VARCHAR(10) | YES | | | 操作方式 |
| request_uri | VARCHAR(255) | YES | | | 请求URI |
| user_agent | VARCHAR(1000) | YES | | | 用户代理 |
| remote_ip | VARCHAR(255) | YES | | | 操作IP地址 |
| params | TEXT(65535) | YES | | | 操作提交的数据 |
| time | VARCHAR(64) | YES | | | 执行时间 |
| create_by | VARCHAR(64) | YES | | | 创建者 |
| create_time | DATETIME(19) | YES | | NULL | 创建时间 |
Table: blade_client(客户端表)
| Field | Type | Null | Key | Default | Remarks |
| ----------------------- | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| client_id | VARCHAR(48) | NO | | | 客户端id |
| client_secret | VARCHAR(256) | NO | | | 客户端密钥 |
| resource_ids | VARCHAR(256) | YES | | | 资源集合 |
| scope | VARCHAR(256) | NO | | | 授权范围 |
| authorized_grant_types | VARCHAR(256) | NO | | | 授权类型 |
| web_server_redirect_uri | VARCHAR(256) | YES | | | 回调地址 |
| authorities | VARCHAR(256) | YES | | | 权限 |
| access_token_validity | INT(10) | NO | | | 令牌过期秒数 |
| refresh_token_validity | INT(10) | NO | | | 刷新令牌过期秒数|
| additional_information | VARCHAR(4096) | YES | | | 附加说明 |
| autoapprove | VARCHAR(256) | YES | | | 自动授权 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | NO | | | 状态 |
| is_deleted | INT(10) | NO | | | 是否已删除 |
Table: blade_code(代码生成器表)
| Field | Type | Null | Key | Default | Remarks |
| ------------- | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| model_id | BIGINT(20) | YES | | | 数据模型主键 |
| service_name | VARCHAR(64) | YES | | | 服务名称 |
| code_name | VARCHAR(64) | YES | | | 模块名称 |
| table_name | VARCHAR(64) | YES | | | 表名 |
| table_prefix | VARCHAR(64) | YES | | | 表前缀 |
| pk_name | VARCHAR(32) | YES | | | 主键名 |
| package_name | VARCHAR(500) | YES | | | 后端包名 |
| template_type | VARCHAR(32) | YES | | | 模版类型 |
| author | VARCHAR(32) | YES | | | 作者信息 |
| sub_model_id | VARCHAR(32) | YES | | | 子表模型主键 |
| sub_fk_id | VARCHAR(32) | YES | | | 子表绑定外键 |
| tree_id | VARCHAR(32) | YES | | | 树主键字段 |
| tree_pid | VARCHAR(32) | YES | | | 树父主键字段 |
| tree_name | VARCHAR(64) | YES | | | 树名称字段 |
| base_mode | INT(10) | YES | | | 基础业务模式 |
| wrap_mode | INT(10) | YES | | | 包装器模式 |
| feign_mode | INT(10) | YES | | | 远程调用模式 |
| code_style | VARCHAR(32) | YES | | | 代码风格 |
| api_path | VARCHAR(2000) | YES | | | 后端路径 |
| web_path | VARCHAR(2000) | YES | | | 前端路径 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_code_setting(代码生成器配置表)
| Field | Type | Null | Key | Default | Remarks |
|------------|-------------| ---- | --- |---------|---------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| name | VARCHAR(32) | YES | | | 名称 |
| code | VARCHAR(16) | YES | | | 编号 |
| category | INT(10) | YES | | 1 | 分类 |
| settings | LONGTEXT | YES | | | 配置项 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_datasource(数据源配置表)
| Field | Type | Null | Key | Default | Remarks |
|-----------------|--------------| ---- | --- | ------- |------------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| category | INT(2) | YES | | | 数据源类型 |
| name | VARCHAR(100) | YES | | | 名称 |
| driver_class | VARCHAR(100) | YES | | | 驱动类 |
| url | VARCHAR(500) | YES | | | 连接地址 |
| username | VARCHAR(50) | YES | | | 用户名 |
| password | VARCHAR(50) | YES | | | 密码 |
| sharding_config | LONGTEXT | YES | | | 分库分表配置 |
| remark | VARCHAR(255) | YES | | | 备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_dept(机构表)
| Field | Type | Null | Key | Default | Remarks |
|---------------|---------------| ---- | --- | ------- |---------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| parent_id | BIGINT(20) | YES | | 0 | 父主键 |
| ancestors | VARCHAR(2000) | YES | | | 祖级列表 |
| leader_id | VARCHAR(1000) | YES | | | 主管ID |
| dept_category | INT(10) | YES | | | 部门类型 |
| dept_name | VARCHAR(45) | YES | | | 部门名 |
| full_name | VARCHAR(45) | YES | | | 部门全称 |
| sort | INT(10) | YES | | | 排序 |
| remark | VARCHAR(255) | YES | | | 备注 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_dict(字典表)
| Field | Type | Null | Key | Default | Remarks |
| ---------- | ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| parent_id | BIGINT(20) | YES | | 0 | 父主键 |
| code | VARCHAR(255) | YES | | | 字典码 |
| dict_key | VARCHAR(255) | YES | | | 字典值 |
| dict_value | VARCHAR(255) | YES | | | 字典名称 |
| sort | INT(10) | YES | | | 排序 |
| remark | VARCHAR(255) | YES | | | 字典备注 |
| is_sealed | INT(10) | YES | | 0 | 是否已封存 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_dict_biz(业务字典表)
| Field | Type | Null | Key | Default | Remarks |
| ---------- | ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | | 租户ID |
| parent_id | BIGINT(20) | YES | | 0 | 父主键 |
| code | VARCHAR(255) | YES | | | 字典码 |
| dict_key | VARCHAR(255) | YES | | | 字典值 |
| dict_value | VARCHAR(255) | YES | | | 字典名称 |
| sort | INT(10) | YES | | | 排序 |
| remark | VARCHAR(255) | YES | | | 字典备注 |
| is_sealed | INT(10) | YES | | 0 | 是否已封存 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_log_api(接口日志表)
| Field | Type | Null | Key | Default | Remarks |
| ------------ | ------------- | ---- | --- | ----------------- | ------- |
| id | BIGINT(20) | NO | PRI | | 编号 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| service_id | VARCHAR(32) | YES | | | 服务ID |
| server_host | VARCHAR(255) | YES | | | 服务器名 |
| server_ip | VARCHAR(255) | YES | | | 服务器IP地址 |
| env | VARCHAR(255) | YES | | | 服务器环境 |
| type | CHAR(1) | YES | | 1 | 日志类型 |
| title | VARCHAR(255) | YES | | | 日志标题 |
| method | VARCHAR(10) | YES | | | 操作方式 |
| request_uri | VARCHAR(255) | YES | | | 请求URI |
| user_agent | VARCHAR(1000) | YES | | | 用户代理 |
| remote_ip | VARCHAR(255) | YES | | | 操作IP地址 |
| method_class | VARCHAR(255) | YES | | | 方法类 |
| method_name | VARCHAR(255) | YES | | | 方法名 |
| params | TEXT(65535) | YES | | | 操作提交的数据 |
| time | VARCHAR(64) | YES | | | 执行时间 |
| create_by | VARCHAR(64) | YES | | | 创建者 |
| create_time | DATETIME(19) | YES | | NULL | 创建时间 |
Table: blade_log_error(错误日志表)
| Field | Type | Null | Key | Default | Remarks |
| -------------- | ------------- | ---- | --- | ----------------- | ------- |
| id | BIGINT(20) | NO | PRI | | 编号 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| service_id | VARCHAR(32) | YES | | | 服务ID |
| server_host | VARCHAR(255) | YES | | | 服务器名 |
| server_ip | VARCHAR(255) | YES | | | 服务器IP地址 |
| env | VARCHAR(255) | YES | | | 系统环境 |
| method | VARCHAR(10) | YES | | | 操作方式 |
| request_uri | VARCHAR(255) | YES | | | 请求URI |
| user_agent | VARCHAR(1000) | YES | | | 用户代理 |
| stack_trace | TEXT(65535) | YES | | | 堆栈 |
| exception_name | VARCHAR(255) | YES | | | 异常名 |
| message | TEXT(65535) | YES | | | 异常信息 |
| line_number | INT(10) | YES | | | 错误行数 |
| remote_ip | VARCHAR(255) | YES | | | 操作IP地址 |
| method_class | VARCHAR(255) | YES | | | 方法类 |
| file_name | VARCHAR(1000) | YES | | | 文件名 |
| method_name | VARCHAR(255) | YES | | | 方法名 |
| params | TEXT(65535) | YES | | | 操作提交的数据 |
| create_by | VARCHAR(64) | YES | | | 创建者 |
| create_time | DATETIME(19) | YES | | NULL | 创建时间 |
Table: blade_log_usual(通用日志表)
| Field | Type | Null | Key | Default | Remarks |
| ------------ | ------------- | ---- | --- | ----------------- | ------- |
| id | BIGINT(20) | NO | PRI | | 编号 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| service_id | VARCHAR(32) | YES | | | 服务ID |
| server_host | VARCHAR(255) | YES | | | 服务器名 |
| server_ip | VARCHAR(255) | YES | | | 服务器IP地址 |
| env | VARCHAR(255) | YES | | | 系统环境 |
| log_level | VARCHAR(10) | YES | | | 日志级别 |
| log_id | VARCHAR(100) | YES | | | 日志业务id |
| log_data | TEXT(65535) | YES | | | 日志数据 |
| method | VARCHAR(10) | YES | | | 操作方式 |
| request_uri | VARCHAR(255) | YES | | | 请求URI |
| remote_ip | VARCHAR(255) | YES | | | 操作IP地址 |
| method_class | VARCHAR(255) | YES | | | 方法类 |
| method_name | VARCHAR(255) | YES | | | 方法名 |
| user_agent | VARCHAR(1000) | YES | | | 用户代理 |
| params | TEXT(65535) | YES | | | 操作提交的数据 |
| create_by | VARCHAR(64) | YES | | | 创建者 |
| create_time | DATETIME(19) | YES | | NULL | 创建时间 |
Table: blade_menu(菜单表)
| Field | Type | Null | Key | Default | Remarks |
| ---------- | ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| parent_id | BIGINT(20) | YES | | 0 | 父级菜单 |
| code | VARCHAR(255) | YES | | | 菜单编号 |
| name | VARCHAR(255) | YES | | | 菜单名称 |
| alias | VARCHAR(255) | YES | | | 菜单别名 |
| path | VARCHAR(255) | YES | | | 请求地址 |
| source | VARCHAR(255) | YES | | | 菜单资源 |
| sort | INT(10) | YES | | | 排序 |
| category | INT(10) | YES | | | 菜单类型 |
| action | INT(10) | YES | | 0 | 操作按钮类型 |
| is_open | INT(10) | YES | | 1 | 是否打开新页面 |
| remark | VARCHAR(255) | YES | | | 备注 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_model(数据模型表)
| Field | Type | Null | Key | Default | Remarks |
| ------------- | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| datasource_id | BIGINT(20) | YES | | | 数据源主键 |
| model_name | VARCHAR(50) | YES | | | 模型名称 |
| model_code | VARCHAR(50) | YES | | | 模型编号 |
| model_table | VARCHAR(100) | YES | | | 物理表名 |
| model_class | VARCHAR(100) | YES | | | 模型类名 |
| model_remark | VARCHAR(500) | YES | | | 模型备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_model_prototype(数据原型表)
| Field | Type | Null | Key | Default | Remarks |
| -------------- | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| model_id | BIGINT(20) | YES | | | 模型主键 |
| jdbc_name | VARCHAR(50) | YES | | | 物理列名 |
| jdbc_type | VARCHAR(20) | YES | | | 物理类型 |
| jdbc_comment | VARCHAR(500) | YES | | | 注释说明 |
| property_type | VARCHAR(20) | YES | | | 实体类型 |
| property_entity| VARCHAR(500) | YES | | | 实体类型引用|
| property_name | VARCHAR(50) | YES | | | 实体列名 |
| is_list | INT(10) | YES | | | 列表显示 |
| is_form | INT(10) | YES | | | 表单显示 |
| is_row | INT(10) | YES | | | 独占一行 |
| component_type | VARCHAR(50) | YES | | | 组件类型 |
| dict_code | VARCHAR(50) | YES | | | 字典编码 |
| is_required | INT(10) | YES | | | 是否必填 |
| is_query | INT(10) | YES | | | 查询配置 |
| query_type | VARCHAR(50) | YES | | | 查询配置 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_notice(通知公告表)
| Field | Type | Null | Key | Default | Remarks |
| ------------ | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| title | VARCHAR(255) | YES | | | 标题 |
| category | INT(10) | YES | | | 类型 |
| release_time | DATETIME(19) | YES | | | 发布时间 |
| content | VARCHAR(2000) | YES | | | 内容 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_oss(对象存储表)
| Field | Type | Null | Key | Default | Remarks |
|--------------------| ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| category | INT(10) | YES | | | 分类 |
| oss_code | VARCHAR(32) | YES | | | 资源编号 |
| endpoint | VARCHAR(255) | YES | | | 资源地址 |
| transform_endpoint | VARCHAR(255) | YES | | | 外网资源地址 |
| access_key | VARCHAR(255) | YES | | | accessKey|
| secret_key | VARCHAR(255) | YES | | | secretKey|
| bucket_name | VARCHAR(255) | YES | | | 空间名 |
| app_id | VARCHAR(255) | YES | | | 应用ID |
| region | VARCHAR(255) | YES | | | 地域简称 |
| remark | VARCHAR(255) | YES | | | 备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_param(参数表)
| Field | Type | Null | Key | Default | Remarks |
| ----------- | ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| param_name | VARCHAR(255) | YES | | | 参数名 |
| param_key | VARCHAR(255) | YES | | | 参数键 |
| param_value | VARCHAR(255) | YES | | | 参数值 |
| remark | VARCHAR(255) | YES | | | 备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_post(岗位表)
| Field | Type | Null | Key | Default | Remarks |
| ----------- | ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| category | INT(10) | YES | | | 岗位类型 |
| post_code | VARCHAR(12) | YES | | | 岗位编号 |
| post_name | VARCHAR(64) | YES | | | 岗位名称 |
| sort | INT(10) | YES | | | 岗位排序 |
| remark | VARCHAR(255) | YES | | | 岗位描述 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_process_leave(流程请假业务表)
| Field | Type | Null | Key | Default | Remarks |
| --------------------- | ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 编号 |
| process_definition_id | VARCHAR(64) | YES | | | 流程定义主键 |
| process_instance_id | VARCHAR(64) | YES | | | 流程实例主键 |
| start_time | DATETIME(19) | YES | | | 开始时间 |
| end_time | DATETIME(19) | YES | | | 结束时间 |
| reason | VARCHAR(255) | YES | | | 请假理由 |
| task_user | VARCHAR(255) | YES | | | 第一级审批人 |
| apply_time | DATETIME(19) | YES | | | 申请时间 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_rate_limit(限流规则表)
| Field | Type | Null | Key | Default | Remarks |
| --------------- | ------------ | ---- | --- | ------- | ----------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| limit_name | VARCHAR(128) | NO | | | 规则名称 |
| limit_pattern | VARCHAR(1000) | NO | | | URL匹配模式 |
| request_method | VARCHAR(16) | YES | | ALL | 请求方法 |
| limit_dimension | VARCHAR(16) | YES | | IP | 限流维度 |
| limit_count | INT(10) | YES | | 100 | 请求阈值 |
| limit_period | INT(10) | YES | | 1 | 时间窗口 |
| time_unit | VARCHAR(16) | YES | | MINUTES | 时间单位 |
| priority | INT(10) | YES | | 1 | 优先级 |
| remark | VARCHAR(255) | YES | | | 备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | 1 | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_rate_limit_log(限流触发日志表)
| Field | Type | Null | Key | Default | Remarks |
| --------------- | ------------- | ---- | --- | ------- | -------------- |
| id | BIGINT(20) | NO | PRI | | 编号 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| service_id | VARCHAR(32) | YES | | | 服务ID |
| server_host | VARCHAR(255) | YES | | | 服务器名 |
| server_ip | VARCHAR(255) | YES | | | 服务器IP地址 |
| env | VARCHAR(255) | YES | | | 服务器环境 |
| limit_id | BIGINT(20) | YES | | | 限流规则主键ID |
| limit_name | VARCHAR(128) | YES | | | 规则名称 |
| limit_dimension | VARCHAR(16) | YES | | | 限流维度 |
| limit_count | INT(10) | YES | | | 请求阈值 |
| limit_period | INT(10) | YES | | | 时间窗口 |
| time_unit | VARCHAR(16) | YES | | | 时间单位 |
| limit_key | VARCHAR(255) | YES | | | 限流计数key |
| method | VARCHAR(10) | YES | | | 操作方式 |
| request_uri | VARCHAR(255) | YES | | | 请求URI |
| user_agent | VARCHAR(1000) | YES | | | 用户代理 |
| remote_ip | VARCHAR(255) | YES | | | 操作IP地址 |
| params | TEXT(65535) | YES | | | 操作提交的数据 |
| create_by | VARCHAR(64) | YES | | | 创建者 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
Table: blade_region(行政区划表)
| Field | Type | Null | Key | Default | Remarks |
| ------------- | ------------ | ---- | --- | ------- | ------- |
| code | VARCHAR(12) | NO | PRI | | 区划编号 |
| parent_code | VARCHAR(12) | YES | | | 父区划编号 |
| ancestors | VARCHAR(255) | YES | | | 祖区划编号 |
| name | VARCHAR(128) | YES | | | 区划名称 |
| province_code | VARCHAR(12) | YES | | | 省级区划编号 |
| province_name | VARCHAR(128) | YES | | | 省级名称 |
| city_code | VARCHAR(12) | YES | | | 市级区划编号 |
| city_name | VARCHAR(128) | YES | | | 市级名称 |
| district_code | VARCHAR(12) | YES | | | 区级区划编号 |
| district_name | VARCHAR(128) | YES | | | 区级名称 |
| town_code | VARCHAR(12) | YES | | | 镇级区划编号 |
| town_name | VARCHAR(128) | YES | | | 镇级名称 |
| village_code | VARCHAR(12) | YES | | | 村级区划编号 |
| village_name | VARCHAR(128) | YES | | | 村级名称 |
| region_level | INT(10) | YES | | | 层级 |
| sort | INT(10) | YES | | | 排序 |
| remark | VARCHAR(255) | YES | | | 备注 |
Table: blade_report_file(报表文件表)
| Field | Type | Null | Key | Default | Remarks |
| ----------- | -------------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| name | VARCHAR(100) | NO | | | 文件名 |
| content | MEDIUMBLOB(16777215) | YES | | | 文件内容 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_time | DATETIME(19) | YES | | | 更新时间 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_role(角色表)
| Field | Type | Null | Key | Default | Remarks |
| ---------- | ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| parent_id | BIGINT(20) | YES | | 0 | 父主键 |
| role_name | VARCHAR(255) | YES | | | 角色名 |
| sort | INT(10) | YES | | | 排序 |
| role_alias | VARCHAR(255) | YES | | | 角色别名 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_role_menu(角色菜单关联表)
| Field | Type | Null | Key | Default | Remarks |
| ------- | ---------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| menu_id | BIGINT(20) | YES | | | 菜单id |
| role_id | BIGINT(20) | YES | | | 角色id |
Table: blade_role_scope(角色数据权限关联表)
| Field | Type | Null | Key | Default | Remarks |
| -------------- | ---------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| scope_category | INT(10) | YES | | | 权限类型(1:数据权限、2:接口权限)|
| scope_id | BIGINT(20) | YES | | | 权限id |
| role_id | BIGINT(20) | YES | | | 角色id |
Table: blade_scope_api(接口权限表)
| Field | Type | Null | Key | Default | Remarks |
| ------------- | ------------ | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| menu_id | BIGINT(20) | YES | | | 菜单主键 |
| resource_code | VARCHAR(255) | YES | | | 资源编号 |
| scope_name | VARCHAR(255) | YES | | | 接口权限名 |
| scope_path | VARCHAR(255) | YES | | | 接口权限地址 |
| scope_type | INT(10) | YES | | | 接口权限类型 |
| remark | VARCHAR(255) | YES | | | 接口权限备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_scope_data(数据权限表)
| Field | Type | Null | Key | Default | Remarks |
| ------------- | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| menu_id | BIGINT(20) | YES | | | 菜单主键 |
| resource_code | VARCHAR(255) | YES | | | 资源编号 |
| scope_name | VARCHAR(255) | YES | | | 数据权限名称 |
| scope_field | VARCHAR(255) | YES | | | 数据权限字段 |
| scope_class | VARCHAR(500) | YES | | | 数据权限类名 |
| scope_column | VARCHAR(255) | YES | | | 数据权限字段 |
| scope_type | INT(10) | YES | | | 数据权限类型 |
| scope_value | VARCHAR(2000) | YES | | | 数据权限值域 |
| remark | VARCHAR(255) | YES | | | 数据权限备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_sms(短信配置表)
| Field | Type | Null | Key | Default | Remarks |
|-------------| ------------ |------| --- | ------- |-----------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| category | INT(10) | YES | | | 分类 |
| sms_code | VARCHAR(32) | YES | | | 资源编号 |
| template_id | VARCHAR(64) | YES | | | 模板ID |
| access_key | VARCHAR(255) | YES | | | accessKey |
| secret_key | VARCHAR(255) | YES | | | secretKey |
| region_id | VARCHAR(255) | YES | | | regionId |
| app_id | VARCHAR(255) | YES | | | appId |
| sign_name | VARCHAR(64) | YES | | | 短信签名 |
| remark | VARCHAR(255) | YES | | | 备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_tenant(租户表)
| Field | Type | Null | Key | Default | Remarks |
| -------------- | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| tenant_name | VARCHAR(50) | NO | | | 租户名称 |
| domain_url | VARCHAR(255) | YES | | | 域名地址 |
| background_url | VARCHAR(1000) | YES | | | 系统背景 |
| linkman | VARCHAR(20) | YES | | | 联系人 |
| contact_number | VARCHAR(20) | YES | | | 联系电话 |
| address | VARCHAR(255) | YES | | | 联系地址 |
| account_number | INT(10) | YES | | -1 | 账号额度 |
| expire_time | DATETIME(19) | YES | | | 过期时间 |
| datasource | BIGINT(20) | YES | | | 数据源ID |
| license_key | VARCHAR(1000) | YES | | | 授权码 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_tenant_datasource(多租户数据源表)
| Field | Type | Null | Key | Default | Remarks |
|-----------------|--------------| ---- | --- | ------- |------------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| category | INT(2) | YES | | | 数据源类型 |
| name | VARCHAR(100) | YES | | | 名称 |
| driver_class | VARCHAR(100) | YES | | | 驱动类 |
| url | VARCHAR(500) | YES | | | 连接地址 |
| username | VARCHAR(50) | YES | | | 用户名 |
| password | VARCHAR(50) | YES | | | 密码 |
| sharding_config | LONGTEXT | YES | | | 分库分表配置 |
| remark | VARCHAR(255) | YES | | | 备注 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_top_menu(顶部菜单表)
| Field | Type | Null | Key | Default | Remarks |
|-------------| ------------ | ---- | --- | ------- |---------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | | 租户id |
| code | VARCHAR(255) | YES | | | 顶部菜单编号 |
| name | VARCHAR(255) | YES | | | 顶部菜单名 |
| source | VARCHAR(255) | YES | | | 顶部菜单资源 |
| path | VARCHAR(255) | YES | | | 顶部菜单路由 |
| sort | INT(10) | YES | | | 顶部菜单排序 |
| is_main | INT(10) | YES | | 0 | 是否主页 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_top_menu_setting(顶部菜单配置表)
| Field | Type | Null | Key | Default | Remarks |
| ----------- | ---------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| top_menu_id | BIGINT(20) | YES | | | 顶部菜单主键 |
| menu_id | BIGINT(20) | YES | | | 菜单主键 |
Table: blade_user(用户表)
| Field | Type | Null | Key | Default | Remarks |
|-------------| ------------- | ---- | --- | ------- |---------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| code | VARCHAR(12) | YES | | | 用户编号 |
| user_type | SMALLINT(5) | YES | | | 用户平台 |
| account | VARCHAR(45) | YES | | | 账号 |
| password | VARCHAR(45) | YES | | | 密码 |
| name | VARCHAR(20) | YES | | | 昵称 |
| real_name | VARCHAR(10) | YES | | | 真名 |
| avatar | VARCHAR(500) | YES | | | 头像 |
| email | VARCHAR(45) | YES | | | 邮箱 |
| phone | VARCHAR(45) | YES | | | 手机 |
| birthday | DATETIME(19) | YES | | | 生日 |
| sex | SMALLINT(5) | YES | | | 性别 |
| role_id | VARCHAR(1000) | YES | | | 角色id |
| dept_id | VARCHAR(1000) | YES | | | 部门id |
| post_id | VARCHAR(1000) | YES | | | 岗位id |
| leader_id | VARCHAR(1000) | YES | | | 主管id |
| is_leader | INT(10) | YES | | | 是否主管 |
| create_user | BIGINT(20) | YES | | | 创建人 |
| create_dept | BIGINT(20) | YES | | | 创建部门 |
| create_time | DATETIME(19) | YES | | | 创建时间 |
| update_user | BIGINT(20) | YES | | | 修改人 |
| update_time | DATETIME(19) | YES | | | 修改时间 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
Table: blade_user_dept(用户部门表)
| Field | Type | Null | Key | Default | Remarks |
| ------- | ---------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| user_id | BIGINT(20) | YES | | 0 | 用户ID |
| dept_id | BIGINT(20) | YES | | 0 | 部门ID |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_user_oauth(用户第三方认证表)
| Field | Type | Null | Key | Default | Remarks |
| --------- |---------------| ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | | 租户ID |
| uuid | VARCHAR(64) | YES | | | 第三方系统用户ID|
| user_id | BIGINT(20) | YES | | | 用户ID |
| username | VARCHAR(32) | YES | | | 账号 |
| nickname | VARCHAR(64) | YES | | | 用户名 |
| avatar | VARCHAR(1000) | YES | | | 头像 |
| blog | VARCHAR(50) | YES | | | 应用主页 |
| company | VARCHAR(255) | YES | | | 公司名 |
| location | VARCHAR(255) | YES | | | 地址 |
| email | VARCHAR(255) | YES | | | 邮件 |
| remark | VARCHAR(255) | YES | | | 备注 |
| gender | VARCHAR(16) | YES | | | 性别 |
| source | VARCHAR(32) | YES | | | 来源 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_user_web(用户平台拓展表)
| Field | Type | Null | Key | Default | Remarks |
| ------- | ---------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| user_id | BIGINT(20) | YES | | 0 | 用户ID |
| user_ext | VARCHAR(255) | YES | | | 用户拓展信息 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_user_app(用户平台拓展表)
| Field | Type | Null | Key | Default | Remarks |
| ------- | ---------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| user_id | BIGINT(20) | YES | | 0 | 用户ID |
| user_ext | VARCHAR(255) | YES | | | 用户拓展信息 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_user_other(用户平台拓展表)
| Field | Type | Null | Key | Default | Remarks |
| ------- | ---------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| user_id | BIGINT(19) | YES | | 0 | 用户ID |
| user_ext | VARCHAR(255) | YES | | | 用户拓展信息 |
| status | INT(10) | YES | | | 状态 |
| is_deleted | INT(10) | YES | | | 是否已删除 |
Table: blade_job_server (任务服务表)
| Field | Type | Null | Key | Default | Remarks |
|-------------------|--------------|------|-----|---------|----------------------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| job_server_name | VARCHAR(50) | YES | | NULL | 任务服务名称 |
| job_server_url | VARCHAR(255) | YES | | NULL | 任务服务器地址 |
| job_app_name | VARCHAR(20) | YES | | NULL | 任务应用名称 |
| job_app_password | VARCHAR(100) | YES | | NULL | 任务应用密码 |
| job_remark | VARCHAR(255) | YES | | NULL | 任务备注 |
| create_user | BIGINT(20) | YES | | NULL | 创建人 |
| create_dept | BIGINT(20) | YES | | NULL | 创建部门 |
| create_time | DATETIME | YES | | NULL | 创建时间 |
| update_user | BIGINT(20) | YES | | NULL | 修改人 |
| update_time | DATETIME | YES | | NULL | 修改时间 |
| status | INT(2) | YES | | NULL | 状态 |
| is_deleted | INT(2) | YES | | 0 | 是否已删除 |
Table: blade_job_info (任务信息表)
| Field | Type | Null | Key | Default | Remarks |
|------------------------|------------------------|------|-----|---------|-----------------------------------|
| id | BIGINT(20) | NO | PRI | | 主键 |
| job_server_id | BIGINT(20) | YES | | NULL | 任务服务ID |
| job_id | BIGINT(20) | YES | | NULL | 任务 ID |
| job_name | VARCHAR(50) | YES | | NULL | 任务名称 |
| job_description | VARCHAR(255) | YES | | NULL | 任务描述 |
| job_params | TEXT | YES | | | 任务参数 |
| time_expression_type | INT(2) | YES | | NULL | 时间表达式类型 |
| time_expression | VARCHAR(255) | YES | | NULL | 时间表达式 |
| execute_type | INT(2) | YES | | NULL | 执行类型 |
| processor_type | INT(2) | YES | | NULL | 处理器类型 |
| processor_info | VARCHAR(255) | YES | | NULL | 处理器参数 |
| max_instance_num | INT(11) | YES | | NULL | 最大实例数 |
| concurrency | INT(11) | YES | | NULL | 单机线程并发数 |
| instance_time_limit | BIGINT(20) | YES | | NULL | 任务实例运行时间限制 |
| instance_retry_num | INT(11) | YES | | NULL | 任务实例重试次数 |
| task_retry_num | INT(11) | YES | | NULL | Task 重试次数 |
| min_cpu_cores | DOUBLE | YES | | NULL | 最小可用 CPU 核心数 |
| min_memory_space | DOUBLE | YES | | NULL | 最小内存大小(GB |
| min_disk_space | DOUBLE | YES | | NULL | 最小磁盘大小(GB |
| designated_workers | VARCHAR(255) | YES | | NULL | 指定机器执行 |
| max_worker_count | INT(2) | YES | | NULL | 最大执行机器数量 |
| notify_user_ids | VARCHAR(2000) | YES | | NULL | 接收报警的用户 ID 列表 |
| enable | INT(2) | YES | | NULL | 是否启用该任务 |
| dispatch_strategy | INT(2) | YES | | NULL | 调度策略 |
| lifecycle | VARCHAR(255) | YES | | NULL | 生命周期 |
| alert_threshold | INT(2) | YES | | NULL | 错误阈值 |
| statistic_window_len | INT(2) | YES | | NULL | 统计的窗口长度(s) |
| silence_window_len | INT(2) | YES | | NULL | 沉默时间窗口(s) |
| log_type | INT(2) | YES | | NULL | 日志配置 |
| log_level | INT(2) | YES | | NULL | 日志级别 |
| extra | VARCHAR(255) | YES | | NULL | 扩展字段 |
| create_user | BIGINT(20) | YES | | NULL | 创建人 |
| create_dept | BIGINT(20) | YES | | NULL | 创建部门 |
| create_time | DATETIME | YES | | NULL | 创建时间 |
| update_user | BIGINT(20) | YES | | NULL | 修改人 |
| update_time | DATETIME | YES | | NULL | 修改时间 |
| status | INT(2) | YES | | NULL | 状态 |
| is_deleted | INT(2) | YES | | 0 | 是否已删除 |
Table: blade_record_data(数据审计表)
| Field | Type | Null | Key | Default | Remarks |
| -------------- | ------------- | ---- | --- | ------- | ------- |
| id | BIGINT(20) | NO | PRI | | 主键 |
| tenant_id | VARCHAR(12) | YES | | 000000 | 租户ID |
| service_id | VARCHAR(32) | YES | | | 服务ID |
| server_host | VARCHAR(255) | YES | | | 服务器名 |
| server_ip | VARCHAR(255) | YES | | | 服务器IP地址 |
| env | VARCHAR(255) | YES | | | 服务器环境 |
| record_level | VARCHAR(12) | YES | | | 审计级别 |
| method | VARCHAR(10) | YES | | | 操作方式 |
| request_uri | VARCHAR(255) | YES | | | 请求URI |
| user_agent | VARCHAR(1000) | YES | | | 用户代理 |
| remote_ip | VARCHAR(255) | YES | | | 操作IP地址 |
| operation | VARCHAR(255) | YES | | | 操作类型 |
| table_name | VARCHAR(255) | YES | | | 数据表名 |
| old_data | TEXT(65535) | YES | | | 操作前参数 |
| new_data | TEXT(65535) | YES | | | 操作后参数 |
| record_message | TEXT(65535) | YES | | | 审计消息 |
| record_result | TEXT(65535) | YES | | | 审计结果 |
| record_cost | VARCHAR(64) | YES | | | 记录耗时 |
| record_time | DATETIME(19) | YES | | | 记录时间 |
| record_user | BIGINT(20) | YES | | | 记录人 |
| status | INT(10) | YES | | 1 | 状态 |
| is_deleted | INT(10) | YES | | 0 | 是否已删除 |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,117 @@
-- -----------------------------------
-- 新增账号锁定时长参数
-- -----------------------------------
INSERT INTO "BLADEX"."BLADE_PARAM"("ID","PARAM_NAME","PARAM_KEY","PARAM_VALUE","REMARK","CREATE_USER","CREATE_DEPT","CREATE_TIME","UPDATE_USER","UPDATE_TIME","STATUS","IS_DELETED")
VALUES(1123598819738675204,'账号锁定时长(分钟)','account.lockDuration','30','锁定时长',1123598821738675201,1123598813738675201,'2025-12-01 12:00:00.000000',1123598821738675201,'2025-12-01 12:00:00.000000',1,0);
-- ----------------------------
-- 限流规则表
-- ----------------------------
CREATE TABLE "BLADEX"."BLADE_RATE_LIMIT"
(
"ID" BIGINT NOT NULL,
"TENANT_ID" VARCHAR(12) DEFAULT '000000',
"LIMIT_NAME" VARCHAR(128) NOT NULL,
"LIMIT_PATTERN" VARCHAR(1000) NOT NULL,
"REQUEST_METHOD" VARCHAR(16) DEFAULT 'ALL',
"LIMIT_DIMENSION" VARCHAR(16) DEFAULT 'IP',
"LIMIT_COUNT" INT DEFAULT 100,
"LIMIT_PERIOD" INT DEFAULT 1,
"TIME_UNIT" VARCHAR(16) DEFAULT 'MINUTES',
"PRIORITY" INT DEFAULT 1,
"REMARK" VARCHAR(255) NULL,
"CREATE_USER" BIGINT NULL,
"CREATE_DEPT" BIGINT NULL,
"CREATE_TIME" DATETIME NULL,
"UPDATE_USER" BIGINT NULL,
"UPDATE_TIME" DATETIME NULL,
"STATUS" INT DEFAULT 1,
"IS_DELETED" INT DEFAULT 0
);
ALTER TABLE "BLADEX"."BLADE_RATE_LIMIT" ADD CONSTRAINT PRIMARY KEY("ID") ;
COMMENT ON TABLE "BLADEX"."BLADE_RATE_LIMIT" IS '限流规则表';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."ID" IS '主键';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."TENANT_ID" IS '租户ID';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."LIMIT_NAME" IS '规则名称';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."LIMIT_PATTERN" IS 'URL匹配模式';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."REQUEST_METHOD" IS '请求方法';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."LIMIT_DIMENSION" IS '限流维度';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."LIMIT_COUNT" IS '请求阈值';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."LIMIT_PERIOD" IS '时间窗口';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."TIME_UNIT" IS '时间单位';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."PRIORITY" IS '优先级';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."REMARK" IS '备注';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."CREATE_USER" IS '创建人';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."CREATE_DEPT" IS '创建部门';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."CREATE_TIME" IS '创建时间';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."UPDATE_USER" IS '修改人';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."UPDATE_TIME" IS '修改时间';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."STATUS" IS '状态';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT"."IS_DELETED" IS '是否已删除';
-- ----------------------------
-- 限流触发日志表
-- ----------------------------
CREATE TABLE "BLADEX"."BLADE_RATE_LIMIT_LOG"
(
"ID" BIGINT NOT NULL,
"TENANT_ID" VARCHAR(12) DEFAULT '000000',
"SERVICE_ID" VARCHAR(32) NULL,
"SERVER_HOST" VARCHAR(255) NULL,
"SERVER_IP" VARCHAR(255) NULL,
"ENV" VARCHAR(255) NULL,
"LIMIT_ID" BIGINT NULL,
"LIMIT_NAME" VARCHAR(128) NULL,
"LIMIT_DIMENSION" VARCHAR(16) NULL,
"LIMIT_COUNT" INT NULL,
"LIMIT_PERIOD" INT NULL,
"TIME_UNIT" VARCHAR(16) NULL,
"LIMIT_KEY" VARCHAR(255) NULL,
"METHOD" VARCHAR(10) NULL,
"REQUEST_URI" VARCHAR(255) NULL,
"USER_AGENT" VARCHAR(1000) NULL,
"REMOTE_IP" VARCHAR(255) NULL,
"PARAMS" CLOB NULL,
"CREATE_BY" VARCHAR(64) NULL,
"CREATE_TIME" DATETIME NULL
);
ALTER TABLE "BLADEX"."BLADE_RATE_LIMIT_LOG" ADD CONSTRAINT PRIMARY KEY("ID") ;
COMMENT ON TABLE "BLADEX"."BLADE_RATE_LIMIT_LOG" IS '限流触发日志表';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."ID" IS '编号';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."TENANT_ID" IS '租户ID';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."SERVICE_ID" IS '服务ID';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."SERVER_HOST" IS '服务器名';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."SERVER_IP" IS '服务器IP地址';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."ENV" IS '服务器环境';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."LIMIT_ID" IS '限流规则主键ID';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."LIMIT_NAME" IS '规则名称';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."LIMIT_DIMENSION" IS '限流维度';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."LIMIT_COUNT" IS '请求阈值';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."LIMIT_PERIOD" IS '时间窗口';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."TIME_UNIT" IS '时间单位';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."LIMIT_KEY" IS '限流计数key';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."METHOD" IS '操作方式';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."REQUEST_URI" IS '请求URI';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."USER_AGENT" IS '用户代理';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."REMOTE_IP" IS '操作IP地址';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."PARAMS" IS '操作提交的数据';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."CREATE_BY" IS '创建者';
COMMENT ON COLUMN "BLADEX"."BLADE_RATE_LIMIT_LOG"."CREATE_TIME" IS '创建时间';
-- ----------------------------
-- 限流管理菜单
-- ----------------------------
INSERT INTO "BLADEX"."BLADE_MENU"("ID","PARENT_ID","CODE","NAME","ALIAS","PATH","SOURCE","SORT","CATEGORY","ACTION","IS_OPEN","COMPONENT","REMARK","IS_DELETED") VALUES(1963598815738675321, 1123598815738675307, 'rate_limit', '限流管理', 'menu', '/authority/ratelimit', 'iconfont icon-APIjieru', 5, 1, 0, 1, '', NULL, 0);
INSERT INTO "BLADEX"."BLADE_MENU"("ID","PARENT_ID","CODE","NAME","ALIAS","PATH","SOURCE","SORT","CATEGORY","ACTION","IS_OPEN","COMPONENT","REMARK","IS_DELETED") VALUES(1963598815738675322, 1963598815738675321, 'rate_limit_add', '新增', 'add', '/authority/ratelimit/add', 'plus', 1, 2, 1, 1, '', NULL, 0);
INSERT INTO "BLADEX"."BLADE_MENU"("ID","PARENT_ID","CODE","NAME","ALIAS","PATH","SOURCE","SORT","CATEGORY","ACTION","IS_OPEN","COMPONENT","REMARK","IS_DELETED") VALUES(1963598815738675323, 1963598815738675321, 'rate_limit_edit', '修改', 'edit', '/authority/ratelimit/edit', 'form', 2, 2, 2, 1, '', NULL, 0);
INSERT INTO "BLADEX"."BLADE_MENU"("ID","PARENT_ID","CODE","NAME","ALIAS","PATH","SOURCE","SORT","CATEGORY","ACTION","IS_OPEN","COMPONENT","REMARK","IS_DELETED") VALUES(1963598815738675324, 1963598815738675321, 'rate_limit_delete', '删除', 'delete', '/api/blade-system/rate-limit/remove', 'delete', 3, 2, 3, 1, '', NULL, 0);
INSERT INTO "BLADEX"."BLADE_MENU"("ID","PARENT_ID","CODE","NAME","ALIAS","PATH","SOURCE","SORT","CATEGORY","ACTION","IS_OPEN","COMPONENT","REMARK","IS_DELETED") VALUES(1963598815738675325, 1963598815738675321, 'rate_limit_view', '查看', 'view', '/authority/ratelimit/view', 'file-text', 4, 2, 2, 1, '', NULL, 0);
-- ----------------------------
-- 客户端授权类型增加行为验证码模式
-- ----------------------------
UPDATE "BLADEX"."BLADE_CLIENT" SET "AUTHORIZED_GRANT_TYPES" = CONCAT("AUTHORIZED_GRANT_TYPES", ',behavior') WHERE "AUTHORIZED_GRANT_TYPES" NOT LIKE '%behavior%';
@@ -0,0 +1,114 @@
-- -----------------------------------
-- 新增账号锁定时长参数
-- -----------------------------------
INSERT INTO "blade_param" ("id", "param_name", "param_key", "param_value", "remark", "create_user", "create_dept", "create_time", "update_user", "update_time", "status", "is_deleted")
VALUES (1123598819738675204, '账号锁定时长(分钟)', 'account.lockDuration', '30', '锁定时长', 1123598821738675201, 1123598813738675201, '2025-12-01 12:00:00', 1123598821738675201, '2025-12-01 12:00:00', 1, 0);
-- ----------------------------
-- 限流规则表
-- ----------------------------
CREATE TABLE "blade_rate_limit" (
"id" int8 NOT NULL,
"tenant_id" varchar(12) COLLATE "pg_catalog"."default" DEFAULT '000000',
"limit_name" varchar(128) COLLATE "pg_catalog"."default" NOT NULL,
"limit_pattern" varchar(1000) COLLATE "pg_catalog"."default" NOT NULL,
"request_method" varchar(16) COLLATE "pg_catalog"."default" DEFAULT 'ALL',
"limit_dimension" varchar(16) COLLATE "pg_catalog"."default" DEFAULT 'IP',
"limit_count" int4 DEFAULT 100,
"limit_period" int4 DEFAULT 1,
"time_unit" varchar(16) COLLATE "pg_catalog"."default" DEFAULT 'MINUTES',
"priority" int4 DEFAULT 1,
"remark" varchar(255) COLLATE "pg_catalog"."default",
"create_user" int8,
"create_dept" int8,
"create_time" timestamp(6),
"update_user" int8,
"update_time" timestamp(6),
"status" int4 DEFAULT 1,
"is_deleted" int4 DEFAULT 0
)
;
COMMENT ON COLUMN "blade_rate_limit"."id" IS '主键';
COMMENT ON COLUMN "blade_rate_limit"."tenant_id" IS '租户ID';
COMMENT ON COLUMN "blade_rate_limit"."limit_name" IS '规则名称';
COMMENT ON COLUMN "blade_rate_limit"."limit_pattern" IS 'URL匹配模式';
COMMENT ON COLUMN "blade_rate_limit"."request_method" IS '请求方法';
COMMENT ON COLUMN "blade_rate_limit"."limit_dimension" IS '限流维度';
COMMENT ON COLUMN "blade_rate_limit"."limit_count" IS '请求阈值';
COMMENT ON COLUMN "blade_rate_limit"."limit_period" IS '时间窗口';
COMMENT ON COLUMN "blade_rate_limit"."time_unit" IS '时间单位';
COMMENT ON COLUMN "blade_rate_limit"."priority" IS '优先级';
COMMENT ON COLUMN "blade_rate_limit"."remark" IS '备注';
COMMENT ON COLUMN "blade_rate_limit"."create_user" IS '创建人';
COMMENT ON COLUMN "blade_rate_limit"."create_dept" IS '创建部门';
COMMENT ON COLUMN "blade_rate_limit"."create_time" IS '创建时间';
COMMENT ON COLUMN "blade_rate_limit"."update_user" IS '修改人';
COMMENT ON COLUMN "blade_rate_limit"."update_time" IS '修改时间';
COMMENT ON COLUMN "blade_rate_limit"."status" IS '状态';
COMMENT ON COLUMN "blade_rate_limit"."is_deleted" IS '是否已删除';
COMMENT ON TABLE "blade_rate_limit" IS '限流规则表';
ALTER TABLE "blade_rate_limit" ADD CONSTRAINT "blade_rate_limit_pkey" PRIMARY KEY ("id");
-- ----------------------------
-- 限流触发日志表
-- ----------------------------
CREATE TABLE "blade_rate_limit_log" (
"id" int8 NOT NULL,
"tenant_id" varchar(12) COLLATE "pg_catalog"."default" DEFAULT '000000',
"service_id" varchar(32) COLLATE "pg_catalog"."default",
"server_host" varchar(255) COLLATE "pg_catalog"."default",
"server_ip" varchar(255) COLLATE "pg_catalog"."default",
"env" varchar(255) COLLATE "pg_catalog"."default",
"limit_id" int8,
"limit_name" varchar(128) COLLATE "pg_catalog"."default",
"limit_dimension" varchar(16) COLLATE "pg_catalog"."default",
"limit_count" int4,
"limit_period" int4,
"time_unit" varchar(16) COLLATE "pg_catalog"."default",
"limit_key" varchar(255) COLLATE "pg_catalog"."default",
"method" varchar(10) COLLATE "pg_catalog"."default",
"request_uri" varchar(255) COLLATE "pg_catalog"."default",
"user_agent" varchar(1000) COLLATE "pg_catalog"."default",
"remote_ip" varchar(255) COLLATE "pg_catalog"."default",
"params" text COLLATE "pg_catalog"."default",
"create_by" varchar(64) COLLATE "pg_catalog"."default",
"create_time" timestamp(6)
)
;
COMMENT ON COLUMN "blade_rate_limit_log"."id" IS '编号';
COMMENT ON COLUMN "blade_rate_limit_log"."tenant_id" IS '租户ID';
COMMENT ON COLUMN "blade_rate_limit_log"."service_id" IS '服务ID';
COMMENT ON COLUMN "blade_rate_limit_log"."server_host" IS '服务器名';
COMMENT ON COLUMN "blade_rate_limit_log"."server_ip" IS '服务器IP地址';
COMMENT ON COLUMN "blade_rate_limit_log"."env" IS '服务器环境';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_id" IS '限流规则主键ID';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_name" IS '规则名称';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_dimension" IS '限流维度';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_count" IS '请求阈值';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_period" IS '时间窗口';
COMMENT ON COLUMN "blade_rate_limit_log"."time_unit" IS '时间单位';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_key" IS '限流计数key';
COMMENT ON COLUMN "blade_rate_limit_log"."method" IS '操作方式';
COMMENT ON COLUMN "blade_rate_limit_log"."request_uri" IS '请求URI';
COMMENT ON COLUMN "blade_rate_limit_log"."user_agent" IS '用户代理';
COMMENT ON COLUMN "blade_rate_limit_log"."remote_ip" IS '操作IP地址';
COMMENT ON COLUMN "blade_rate_limit_log"."params" IS '操作提交的数据';
COMMENT ON COLUMN "blade_rate_limit_log"."create_by" IS '创建者';
COMMENT ON COLUMN "blade_rate_limit_log"."create_time" IS '创建时间';
COMMENT ON TABLE "blade_rate_limit_log" IS '限流触发日志表';
ALTER TABLE "blade_rate_limit_log" ADD CONSTRAINT "blade_rate_limit_log_pkey" PRIMARY KEY ("id");
-- ----------------------------
-- 限流管理菜单
-- ----------------------------
INSERT INTO "blade_menu" ("id", "parent_id", "code", "name", "alias", "path", "source", "sort", "category", "action", "is_open", "component", "remark", "is_deleted") VALUES
(1963598815738675321, 1123598815738675307, 'rate_limit', '限流管理', 'menu', '/authority/ratelimit', 'iconfont icon-APIjieru', 5, 1, 0, 1, '', NULL, 0),
(1963598815738675322, 1963598815738675321, 'rate_limit_add', '新增', 'add', '/authority/ratelimit/add', 'plus', 1, 2, 1, 1, '', NULL, 0),
(1963598815738675323, 1963598815738675321, 'rate_limit_edit', '修改', 'edit', '/authority/ratelimit/edit', 'form', 2, 2, 2, 1, '', NULL, 0),
(1963598815738675324, 1963598815738675321, 'rate_limit_delete', '删除', 'delete', '/api/blade-system/rate-limit/remove', 'delete', 3, 2, 3, 1, '', NULL, 0),
(1963598815738675325, 1963598815738675321, 'rate_limit_view', '查看', 'view', '/authority/ratelimit/view', 'file-text', 4, 2, 2, 1, '', NULL, 0);
-- ----------------------------
-- 客户端授权类型增加行为验证码模式
-- ----------------------------
UPDATE "blade_client" SET "authorized_grant_types" = CONCAT("authorized_grant_types", ',behavior') WHERE "authorized_grant_types" NOT LIKE '%behavior%';
@@ -0,0 +1,72 @@
-- -----------------------------------
-- 新增账号锁定时长参数
-- -----------------------------------
INSERT INTO `blade_param` (`id`, `param_name`, `param_key`, `param_value`, `remark`, `create_user`, `create_dept`, `create_time`, `update_user`, `update_time`, `status`, `is_deleted`)
VALUES (1123598819738675204, '账号锁定时长(分钟)', 'account.lockDuration', '30', '锁定时长', 1123598821738675201, 1123598813738675201, '2025-12-01 12:00:00', 1123598821738675201, '2025-12-01 12:00:00', 1, 0);
-- ----------------------------
-- 限流规则表
-- ----------------------------
CREATE TABLE `blade_rate_limit` (
`id` bigint NOT NULL COMMENT '主键',
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '000000' COMMENT '租户ID',
`limit_name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '规则名称',
`limit_pattern` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'URL匹配模式',
`request_method` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'ALL' COMMENT '请求方法',
`limit_dimension` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'IP' COMMENT '限流维度',
`limit_count` int NULL DEFAULT 100 COMMENT '请求阈值',
`limit_period` int NULL DEFAULT 1 COMMENT '时间窗口',
`time_unit` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'MINUTES' COMMENT '时间单位',
`priority` int NULL DEFAULT 1 COMMENT '优先级',
`remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
`create_user` bigint NULL DEFAULT NULL COMMENT '创建人',
`create_dept` bigint NULL DEFAULT NULL COMMENT '创建部门',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`update_user` bigint NULL DEFAULT NULL COMMENT '修改人',
`update_time` datetime NULL DEFAULT NULL COMMENT '修改时间',
`status` int NULL DEFAULT 1 COMMENT '状态',
`is_deleted` int NULL DEFAULT 0 COMMENT '是否已删除',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '限流规则表';
-- ----------------------------
-- 限流触发日志表
-- ----------------------------
CREATE TABLE `blade_rate_limit_log` (
`id` bigint NOT NULL COMMENT '编号',
`tenant_id` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '000000' COMMENT '租户ID',
`service_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务ID',
`server_host` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务器名',
`server_ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务器IP地址',
`env` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '服务器环境',
`limit_id` bigint NULL DEFAULT NULL COMMENT '限流规则主键ID',
`limit_name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '规则名称',
`limit_dimension` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '限流维度',
`limit_count` int NULL DEFAULT NULL COMMENT '请求阈值',
`limit_period` int NULL DEFAULT NULL COMMENT '时间窗口',
`time_unit` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '时间单位',
`limit_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '限流计数key',
`method` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作方式',
`request_uri` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '请求URI',
`user_agent` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户代理',
`remote_ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作IP地址',
`params` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '操作提交的数据',
`create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建者',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '限流触发日志表';
-- ----------------------------
-- 限流管理菜单
-- ----------------------------
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES
(1963598815738675321, 1123598815738675307, 'rate_limit', '限流管理', 'menu', '/authority/ratelimit', 'iconfont icon-APIjieru', 5, 1, 0, 1, '', NULL, 0),
(1963598815738675322, 1963598815738675321, 'rate_limit_add', '新增', 'add', '/authority/ratelimit/add', 'plus', 1, 2, 1, 1, '', NULL, 0),
(1963598815738675323, 1963598815738675321, 'rate_limit_edit', '修改', 'edit', '/authority/ratelimit/edit', 'form', 2, 2, 2, 1, '', NULL, 0),
(1963598815738675324, 1963598815738675321, 'rate_limit_delete', '删除', 'delete', '/api/blade-system/rate-limit/remove', 'delete', 3, 2, 3, 1, '', NULL, 0),
(1963598815738675325, 1963598815738675321, 'rate_limit_view', '查看', 'view', '/authority/ratelimit/view', 'file-text', 4, 2, 2, 1, '', NULL, 0);
-- ----------------------------
-- 客户端授权类型增加行为验证码模式
-- ----------------------------
UPDATE `blade_client` SET `authorized_grant_types` = CONCAT(`authorized_grant_types`, ',behavior') WHERE `authorized_grant_types` NOT LIKE '%behavior%';
@@ -0,0 +1,113 @@
-- -----------------------------------
-- 新增账号锁定时长参数
-- -----------------------------------
INSERT INTO "BLADE_PARAM" ("ID", "PARAM_NAME", "PARAM_KEY", "PARAM_VALUE", "REMARK", "CREATE_USER", "CREATE_DEPT", "CREATE_TIME", "UPDATE_USER", "UPDATE_TIME", "STATUS", "IS_DELETED")
VALUES ('1123598819738675204', '账号锁定时长(分钟)', 'account.lockDuration', '30', '锁定时长', '1123598821738675201', '1123598813738675201', TO_DATE('2025-12-01 12:00:00', 'SYYYY-MM-DD HH24:MI:SS'), '1123598821738675201', TO_DATE('2025-12-01 12:00:00', 'SYYYY-MM-DD HH24:MI:SS'), '1', '0');
-- ----------------------------
-- 限流规则表
-- ----------------------------
CREATE TABLE "BLADE_RATE_LIMIT" (
"ID" NUMBER(20,0) NOT NULL,
"TENANT_ID" NVARCHAR2(12) DEFAULT '000000',
"LIMIT_NAME" NVARCHAR2(128) NOT NULL,
"LIMIT_PATTERN" NVARCHAR2(1000) NOT NULL,
"REQUEST_METHOD" NVARCHAR2(16) DEFAULT 'ALL',
"LIMIT_DIMENSION" NVARCHAR2(16) DEFAULT 'IP',
"LIMIT_COUNT" NUMBER(11,0) DEFAULT 100,
"LIMIT_PERIOD" NUMBER(11,0) DEFAULT 1,
"TIME_UNIT" NVARCHAR2(16) DEFAULT 'MINUTES',
"PRIORITY" NUMBER(11,0) DEFAULT 1,
"REMARK" NVARCHAR2(255),
"CREATE_USER" NUMBER(20,0),
"CREATE_DEPT" NUMBER(20,0),
"CREATE_TIME" DATE,
"UPDATE_USER" NUMBER(20,0),
"UPDATE_TIME" DATE,
"STATUS" NUMBER(11,0) DEFAULT 1,
"IS_DELETED" NUMBER(11,0) DEFAULT 0
)
;
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."ID" IS '主键';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."TENANT_ID" IS '租户ID';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_NAME" IS '规则名称';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_PATTERN" IS 'URL匹配模式';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."REQUEST_METHOD" IS '请求方法';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_DIMENSION" IS '限流维度';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_COUNT" IS '请求阈值';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_PERIOD" IS '时间窗口';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."TIME_UNIT" IS '时间单位';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."PRIORITY" IS '优先级';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."REMARK" IS '备注';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."CREATE_USER" IS '创建人';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."CREATE_DEPT" IS '创建部门';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."CREATE_TIME" IS '创建时间';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."UPDATE_USER" IS '修改人';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."UPDATE_TIME" IS '修改时间';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."STATUS" IS '状态';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."IS_DELETED" IS '是否已删除';
COMMENT ON TABLE "BLADE_RATE_LIMIT" IS '限流规则表';
ALTER TABLE "BLADE_RATE_LIMIT" ADD PRIMARY KEY("ID") ;
-- ----------------------------
-- 限流触发日志表
-- ----------------------------
CREATE TABLE "BLADE_RATE_LIMIT_LOG" (
"ID" NUMBER(20,0) NOT NULL,
"TENANT_ID" NVARCHAR2(12) DEFAULT '000000',
"SERVICE_ID" NVARCHAR2(32),
"SERVER_HOST" NVARCHAR2(255),
"SERVER_IP" NVARCHAR2(255),
"ENV" NVARCHAR2(255),
"LIMIT_ID" NUMBER(20,0),
"LIMIT_NAME" NVARCHAR2(128),
"LIMIT_DIMENSION" NVARCHAR2(16),
"LIMIT_COUNT" NUMBER(11,0),
"LIMIT_PERIOD" NUMBER(11,0),
"TIME_UNIT" NVARCHAR2(16),
"LIMIT_KEY" NVARCHAR2(255),
"METHOD" NVARCHAR2(10),
"REQUEST_URI" NVARCHAR2(255),
"USER_AGENT" NVARCHAR2(1000),
"REMOTE_IP" NVARCHAR2(255),
"PARAMS" CLOB,
"CREATE_BY" NVARCHAR2(64),
"CREATE_TIME" DATE
)
;
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."ID" IS '编号';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."TENANT_ID" IS '租户ID';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."SERVICE_ID" IS '服务ID';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."SERVER_HOST" IS '服务器名';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."SERVER_IP" IS '服务器IP地址';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."ENV" IS '服务器环境';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_ID" IS '限流规则主键ID';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_NAME" IS '规则名称';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_DIMENSION" IS '限流维度';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_COUNT" IS '请求阈值';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_PERIOD" IS '时间窗口';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."TIME_UNIT" IS '时间单位';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_KEY" IS '限流计数key';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."METHOD" IS '操作方式';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."REQUEST_URI" IS '请求URI';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."USER_AGENT" IS '用户代理';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."REMOTE_IP" IS '操作IP地址';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."PARAMS" IS '操作提交的数据';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."CREATE_BY" IS '创建者';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."CREATE_TIME" IS '创建时间';
COMMENT ON TABLE "BLADE_RATE_LIMIT_LOG" IS '限流触发日志表';
ALTER TABLE "BLADE_RATE_LIMIT_LOG" ADD PRIMARY KEY("ID") ;
-- ----------------------------
-- 限流管理菜单
-- ----------------------------
INSERT INTO "BLADE_MENU" ("ID", "PARENT_ID", "CODE", "NAME", "ALIAS", "PATH", "SOURCE", "SORT", "CATEGORY", "ACTION", "IS_OPEN", "COMPONENT", "REMARK", "IS_DELETED") VALUES ('1963598815738675321', '1123598815738675307', 'rate_limit', '限流管理', 'menu', '/authority/ratelimit', 'iconfont icon-APIjieru', 5, 1, 0, 1, '', NULL, 0);
INSERT INTO "BLADE_MENU" ("ID", "PARENT_ID", "CODE", "NAME", "ALIAS", "PATH", "SOURCE", "SORT", "CATEGORY", "ACTION", "IS_OPEN", "COMPONENT", "REMARK", "IS_DELETED") VALUES ('1963598815738675322', '1963598815738675321', 'rate_limit_add', '新增', 'add', '/authority/ratelimit/add', 'plus', 1, 2, 1, 1, '', NULL, 0);
INSERT INTO "BLADE_MENU" ("ID", "PARENT_ID", "CODE", "NAME", "ALIAS", "PATH", "SOURCE", "SORT", "CATEGORY", "ACTION", "IS_OPEN", "COMPONENT", "REMARK", "IS_DELETED") VALUES ('1963598815738675323', '1963598815738675321', 'rate_limit_edit', '修改', 'edit', '/authority/ratelimit/edit', 'form', 2, 2, 2, 1, '', NULL, 0);
INSERT INTO "BLADE_MENU" ("ID", "PARENT_ID", "CODE", "NAME", "ALIAS", "PATH", "SOURCE", "SORT", "CATEGORY", "ACTION", "IS_OPEN", "COMPONENT", "REMARK", "IS_DELETED") VALUES ('1963598815738675324', '1963598815738675321', 'rate_limit_delete', '删除', 'delete', '/api/blade-system/rate-limit/remove', 'delete', 3, 2, 3, 1, '', NULL, 0);
INSERT INTO "BLADE_MENU" ("ID", "PARENT_ID", "CODE", "NAME", "ALIAS", "PATH", "SOURCE", "SORT", "CATEGORY", "ACTION", "IS_OPEN", "COMPONENT", "REMARK", "IS_DELETED") VALUES ('1963598815738675325', '1963598815738675321', 'rate_limit_view', '查看', 'view', '/authority/ratelimit/view', 'file-text', 4, 2, 2, 1, '', NULL, 0);
-- ----------------------------
-- 客户端授权类型增加行为验证码模式
-- ----------------------------
UPDATE "BLADE_CLIENT" SET "AUTHORIZED_GRANT_TYPES" = CONCAT("AUTHORIZED_GRANT_TYPES", ',behavior') WHERE "AUTHORIZED_GRANT_TYPES" NOT LIKE '%behavior%';
@@ -0,0 +1,114 @@
-- -----------------------------------
-- 新增账号锁定时长参数
-- -----------------------------------
INSERT INTO "blade_param" ("id", "param_name", "param_key", "param_value", "remark", "create_user", "create_dept", "create_time", "update_user", "update_time", "status", "is_deleted")
VALUES (1123598819738675204, '账号锁定时长(分钟)', 'account.lockDuration', '30', '锁定时长', 1123598821738675201, 1123598813738675201, '2025-12-01 12:00:00', 1123598821738675201, '2025-12-01 12:00:00', 1, 0);
-- ----------------------------
-- 限流规则表
-- ----------------------------
CREATE TABLE "blade_rate_limit" (
"id" int8 NOT NULL,
"tenant_id" varchar(12) COLLATE "pg_catalog"."default" DEFAULT '000000',
"limit_name" varchar(128) COLLATE "pg_catalog"."default" NOT NULL,
"limit_pattern" varchar(1000) COLLATE "pg_catalog"."default" NOT NULL,
"request_method" varchar(16) COLLATE "pg_catalog"."default" DEFAULT 'ALL',
"limit_dimension" varchar(16) COLLATE "pg_catalog"."default" DEFAULT 'IP',
"limit_count" int4 DEFAULT 100,
"limit_period" int4 DEFAULT 1,
"time_unit" varchar(16) COLLATE "pg_catalog"."default" DEFAULT 'MINUTES',
"priority" int4 DEFAULT 1,
"remark" varchar(255) COLLATE "pg_catalog"."default",
"create_user" int8,
"create_dept" int8,
"create_time" timestamp(6),
"update_user" int8,
"update_time" timestamp(6),
"status" int4 DEFAULT 1,
"is_deleted" int4 DEFAULT 0
)
;
COMMENT ON COLUMN "blade_rate_limit"."id" IS '主键';
COMMENT ON COLUMN "blade_rate_limit"."tenant_id" IS '租户ID';
COMMENT ON COLUMN "blade_rate_limit"."limit_name" IS '规则名称';
COMMENT ON COLUMN "blade_rate_limit"."limit_pattern" IS 'URL匹配模式';
COMMENT ON COLUMN "blade_rate_limit"."request_method" IS '请求方法';
COMMENT ON COLUMN "blade_rate_limit"."limit_dimension" IS '限流维度';
COMMENT ON COLUMN "blade_rate_limit"."limit_count" IS '请求阈值';
COMMENT ON COLUMN "blade_rate_limit"."limit_period" IS '时间窗口';
COMMENT ON COLUMN "blade_rate_limit"."time_unit" IS '时间单位';
COMMENT ON COLUMN "blade_rate_limit"."priority" IS '优先级';
COMMENT ON COLUMN "blade_rate_limit"."remark" IS '备注';
COMMENT ON COLUMN "blade_rate_limit"."create_user" IS '创建人';
COMMENT ON COLUMN "blade_rate_limit"."create_dept" IS '创建部门';
COMMENT ON COLUMN "blade_rate_limit"."create_time" IS '创建时间';
COMMENT ON COLUMN "blade_rate_limit"."update_user" IS '修改人';
COMMENT ON COLUMN "blade_rate_limit"."update_time" IS '修改时间';
COMMENT ON COLUMN "blade_rate_limit"."status" IS '状态';
COMMENT ON COLUMN "blade_rate_limit"."is_deleted" IS '是否已删除';
COMMENT ON TABLE "blade_rate_limit" IS '限流规则表';
ALTER TABLE "blade_rate_limit" ADD CONSTRAINT "blade_rate_limit_pkey" PRIMARY KEY ("id");
-- ----------------------------
-- 限流触发日志表
-- ----------------------------
CREATE TABLE "blade_rate_limit_log" (
"id" int8 NOT NULL,
"tenant_id" varchar(12) COLLATE "pg_catalog"."default" DEFAULT '000000',
"service_id" varchar(32) COLLATE "pg_catalog"."default",
"server_host" varchar(255) COLLATE "pg_catalog"."default",
"server_ip" varchar(255) COLLATE "pg_catalog"."default",
"env" varchar(255) COLLATE "pg_catalog"."default",
"limit_id" int8,
"limit_name" varchar(128) COLLATE "pg_catalog"."default",
"limit_dimension" varchar(16) COLLATE "pg_catalog"."default",
"limit_count" int4,
"limit_period" int4,
"time_unit" varchar(16) COLLATE "pg_catalog"."default",
"limit_key" varchar(255) COLLATE "pg_catalog"."default",
"method" varchar(10) COLLATE "pg_catalog"."default",
"request_uri" varchar(255) COLLATE "pg_catalog"."default",
"user_agent" varchar(1000) COLLATE "pg_catalog"."default",
"remote_ip" varchar(255) COLLATE "pg_catalog"."default",
"params" text COLLATE "pg_catalog"."default",
"create_by" varchar(64) COLLATE "pg_catalog"."default",
"create_time" timestamp(6)
)
;
COMMENT ON COLUMN "blade_rate_limit_log"."id" IS '编号';
COMMENT ON COLUMN "blade_rate_limit_log"."tenant_id" IS '租户ID';
COMMENT ON COLUMN "blade_rate_limit_log"."service_id" IS '服务ID';
COMMENT ON COLUMN "blade_rate_limit_log"."server_host" IS '服务器名';
COMMENT ON COLUMN "blade_rate_limit_log"."server_ip" IS '服务器IP地址';
COMMENT ON COLUMN "blade_rate_limit_log"."env" IS '服务器环境';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_id" IS '限流规则主键ID';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_name" IS '规则名称';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_dimension" IS '限流维度';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_count" IS '请求阈值';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_period" IS '时间窗口';
COMMENT ON COLUMN "blade_rate_limit_log"."time_unit" IS '时间单位';
COMMENT ON COLUMN "blade_rate_limit_log"."limit_key" IS '限流计数key';
COMMENT ON COLUMN "blade_rate_limit_log"."method" IS '操作方式';
COMMENT ON COLUMN "blade_rate_limit_log"."request_uri" IS '请求URI';
COMMENT ON COLUMN "blade_rate_limit_log"."user_agent" IS '用户代理';
COMMENT ON COLUMN "blade_rate_limit_log"."remote_ip" IS '操作IP地址';
COMMENT ON COLUMN "blade_rate_limit_log"."params" IS '操作提交的数据';
COMMENT ON COLUMN "blade_rate_limit_log"."create_by" IS '创建者';
COMMENT ON COLUMN "blade_rate_limit_log"."create_time" IS '创建时间';
COMMENT ON TABLE "blade_rate_limit_log" IS '限流触发日志表';
ALTER TABLE "blade_rate_limit_log" ADD CONSTRAINT "blade_rate_limit_log_pkey" PRIMARY KEY ("id");
-- ----------------------------
-- 限流管理菜单
-- ----------------------------
INSERT INTO "blade_menu" ("id", "parent_id", "code", "name", "alias", "path", "source", "sort", "category", "action", "is_open", "component", "remark", "is_deleted") VALUES
(1963598815738675321, 1123598815738675307, 'rate_limit', '限流管理', 'menu', '/authority/ratelimit', 'iconfont icon-APIjieru', 5, 1, 0, 1, '', NULL, 0),
(1963598815738675322, 1963598815738675321, 'rate_limit_add', '新增', 'add', '/authority/ratelimit/add', 'plus', 1, 2, 1, 1, '', NULL, 0),
(1963598815738675323, 1963598815738675321, 'rate_limit_edit', '修改', 'edit', '/authority/ratelimit/edit', 'form', 2, 2, 2, 1, '', NULL, 0),
(1963598815738675324, 1963598815738675321, 'rate_limit_delete', '删除', 'delete', '/api/blade-system/rate-limit/remove', 'delete', 3, 2, 3, 1, '', NULL, 0),
(1963598815738675325, 1963598815738675321, 'rate_limit_view', '查看', 'view', '/authority/ratelimit/view', 'file-text', 4, 2, 2, 1, '', NULL, 0);
-- ----------------------------
-- 客户端授权类型增加行为验证码模式
-- ----------------------------
UPDATE "blade_client" SET "authorized_grant_types" = CONCAT("authorized_grant_types", ',behavior') WHERE "authorized_grant_types" NOT LIKE '%behavior%';
@@ -0,0 +1,164 @@
-- -----------------------------------
-- 新增账号锁定时长参数
-- -----------------------------------
INSERT INTO [dbo].[blade_param] ([id], [param_name], [param_key], [param_value], [remark], [create_user], [create_dept], [create_time], [update_user], [update_time], [status], [is_deleted])
VALUES (N'1123598819738675204', N'账号锁定时长(分钟)', N'account.lockDuration', N'30', N'锁定时长', N'1123598821738675201', N'1123598813738675201', N'2025-12-01 12:00:00', N'1123598821738675201', N'2025-12-01 12:00:00', N'1', N'0')
GO
-- ----------------------------
-- 限流规则表
-- ----------------------------
CREATE TABLE [dbo].[blade_rate_limit] (
[id] bigint NOT NULL,
[tenant_id] nvarchar(12) COLLATE Chinese_PRC_CI_AS DEFAULT '000000' NULL,
[limit_name] nvarchar(128) COLLATE Chinese_PRC_CI_AS NOT NULL,
[limit_pattern] nvarchar(1000) COLLATE Chinese_PRC_CI_AS NOT NULL,
[request_method] nvarchar(16) COLLATE Chinese_PRC_CI_AS DEFAULT 'ALL' NULL,
[limit_dimension] nvarchar(16) COLLATE Chinese_PRC_CI_AS DEFAULT 'IP' NULL,
[limit_count] int DEFAULT 100 NULL,
[limit_period] int DEFAULT 1 NULL,
[time_unit] nvarchar(16) COLLATE Chinese_PRC_CI_AS DEFAULT 'MINUTES' NULL,
[priority] int DEFAULT 1 NULL,
[remark] nvarchar(255) COLLATE Chinese_PRC_CI_AS NULL,
[create_user] bigint NULL,
[create_dept] bigint NULL,
[create_time] datetime2(0) NULL,
[update_user] bigint NULL,
[update_time] datetime2(0) NULL,
[status] int DEFAULT 1 NULL,
[is_deleted] int DEFAULT 0 NULL
)
GO
ALTER TABLE [dbo].[blade_rate_limit] SET (LOCK_ESCALATION = TABLE)
GO
ALTER TABLE [dbo].[blade_rate_limit] ADD CONSTRAINT [PK_blade_rate_limit] PRIMARY KEY CLUSTERED ([id])
GO
EXEC sp_addextendedproperty 'MS_Description', N'主键', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'id'
GO
EXEC sp_addextendedproperty 'MS_Description', N'租户ID', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'tenant_id'
GO
EXEC sp_addextendedproperty 'MS_Description', N'规则名称', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'limit_name'
GO
EXEC sp_addextendedproperty 'MS_Description', N'URL匹配模式', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'limit_pattern'
GO
EXEC sp_addextendedproperty 'MS_Description', N'请求方法', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'request_method'
GO
EXEC sp_addextendedproperty 'MS_Description', N'限流维度', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'limit_dimension'
GO
EXEC sp_addextendedproperty 'MS_Description', N'请求阈值', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'limit_count'
GO
EXEC sp_addextendedproperty 'MS_Description', N'时间窗口', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'limit_period'
GO
EXEC sp_addextendedproperty 'MS_Description', N'时间单位', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'time_unit'
GO
EXEC sp_addextendedproperty 'MS_Description', N'优先级', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'priority'
GO
EXEC sp_addextendedproperty 'MS_Description', N'备注', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'remark'
GO
EXEC sp_addextendedproperty 'MS_Description', N'创建人', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'create_user'
GO
EXEC sp_addextendedproperty 'MS_Description', N'创建部门', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'create_dept'
GO
EXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'create_time'
GO
EXEC sp_addextendedproperty 'MS_Description', N'修改人', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'update_user'
GO
EXEC sp_addextendedproperty 'MS_Description', N'修改时间', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'update_time'
GO
EXEC sp_addextendedproperty 'MS_Description', N'状态', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'status'
GO
EXEC sp_addextendedproperty 'MS_Description', N'是否已删除', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit', 'COLUMN', N'is_deleted'
GO
EXEC sp_addextendedproperty 'MS_Description', N'限流规则表', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit'
GO
-- ----------------------------
-- 限流触发日志表
-- ----------------------------
CREATE TABLE [dbo].[blade_rate_limit_log] (
[id] bigint NOT NULL,
[tenant_id] nvarchar(12) COLLATE Chinese_PRC_CI_AS DEFAULT '000000' NULL,
[service_id] nvarchar(32) COLLATE Chinese_PRC_CI_AS NULL,
[server_host] nvarchar(255) COLLATE Chinese_PRC_CI_AS NULL,
[server_ip] nvarchar(255) COLLATE Chinese_PRC_CI_AS NULL,
[env] nvarchar(255) COLLATE Chinese_PRC_CI_AS NULL,
[limit_id] bigint NULL,
[limit_name] nvarchar(128) COLLATE Chinese_PRC_CI_AS NULL,
[limit_dimension] nvarchar(16) COLLATE Chinese_PRC_CI_AS NULL,
[limit_count] int NULL,
[limit_period] int NULL,
[time_unit] nvarchar(16) COLLATE Chinese_PRC_CI_AS NULL,
[limit_key] nvarchar(255) COLLATE Chinese_PRC_CI_AS NULL,
[method] nvarchar(10) COLLATE Chinese_PRC_CI_AS NULL,
[request_uri] nvarchar(255) COLLATE Chinese_PRC_CI_AS NULL,
[user_agent] nvarchar(1000) COLLATE Chinese_PRC_CI_AS NULL,
[remote_ip] nvarchar(255) COLLATE Chinese_PRC_CI_AS NULL,
[params] nvarchar(max) COLLATE Chinese_PRC_CI_AS NULL,
[create_by] nvarchar(64) COLLATE Chinese_PRC_CI_AS NULL,
[create_time] datetime2(0) NULL
)
GO
ALTER TABLE [dbo].[blade_rate_limit_log] SET (LOCK_ESCALATION = TABLE)
GO
ALTER TABLE [dbo].[blade_rate_limit_log] ADD CONSTRAINT [PK_blade_rate_limit_log] PRIMARY KEY CLUSTERED ([id])
GO
EXEC sp_addextendedproperty 'MS_Description', N'编号', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'id'
GO
EXEC sp_addextendedproperty 'MS_Description', N'租户ID', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'tenant_id'
GO
EXEC sp_addextendedproperty 'MS_Description', N'服务ID', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'service_id'
GO
EXEC sp_addextendedproperty 'MS_Description', N'服务器名', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'server_host'
GO
EXEC sp_addextendedproperty 'MS_Description', N'服务器IP地址', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'server_ip'
GO
EXEC sp_addextendedproperty 'MS_Description', N'服务器环境', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'env'
GO
EXEC sp_addextendedproperty 'MS_Description', N'限流规则主键ID', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'limit_id'
GO
EXEC sp_addextendedproperty 'MS_Description', N'规则名称', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'limit_name'
GO
EXEC sp_addextendedproperty 'MS_Description', N'限流维度', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'limit_dimension'
GO
EXEC sp_addextendedproperty 'MS_Description', N'请求阈值', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'limit_count'
GO
EXEC sp_addextendedproperty 'MS_Description', N'时间窗口', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'limit_period'
GO
EXEC sp_addextendedproperty 'MS_Description', N'时间单位', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'time_unit'
GO
EXEC sp_addextendedproperty 'MS_Description', N'限流计数key', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'limit_key'
GO
EXEC sp_addextendedproperty 'MS_Description', N'操作方式', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'method'
GO
EXEC sp_addextendedproperty 'MS_Description', N'请求URI', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'request_uri'
GO
EXEC sp_addextendedproperty 'MS_Description', N'用户代理', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'user_agent'
GO
EXEC sp_addextendedproperty 'MS_Description', N'操作IP地址', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'remote_ip'
GO
EXEC sp_addextendedproperty 'MS_Description', N'操作提交的数据', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'params'
GO
EXEC sp_addextendedproperty 'MS_Description', N'创建者', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'create_by'
GO
EXEC sp_addextendedproperty 'MS_Description', N'创建时间', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log', 'COLUMN', N'create_time'
GO
EXEC sp_addextendedproperty 'MS_Description', N'限流触发日志表', 'SCHEMA', N'dbo', 'TABLE', N'blade_rate_limit_log'
GO
-- ----------------------------
-- 限流管理菜单
-- ----------------------------
INSERT INTO [dbo].[blade_menu] ([id], [parent_id], [code], [name], [alias], [path], [source], [sort], [category], [action], [is_open], [component], [remark], [is_deleted]) VALUES (N'1963598815738675321', N'1123598815738675307', N'rate_limit', N'限流管理', N'menu', N'/authority/ratelimit', N'iconfont icon-APIjieru', N'5', N'1', N'0', N'1', N'', NULL, N'0'), (N'1963598815738675322', N'1963598815738675321', N'rate_limit_add', N'新增', N'add', N'/authority/ratelimit/add', N'plus', N'1', N'2', N'1', N'1', N'', NULL, N'0'), (N'1963598815738675323', N'1963598815738675321', N'rate_limit_edit', N'修改', N'edit', N'/authority/ratelimit/edit', N'form', N'2', N'2', N'2', N'1', N'', NULL, N'0'), (N'1963598815738675324', N'1963598815738675321', N'rate_limit_delete', N'删除', N'delete', N'/api/blade-system/rate-limit/remove', N'delete', N'3', N'2', N'3', N'1', N'', NULL, N'0'), (N'1963598815738675325', N'1963598815738675321', N'rate_limit_view', N'查看', N'view', N'/authority/ratelimit/view', N'file-text', N'4', N'2', N'2', N'1', N'', NULL, N'0')
GO
-- ----------------------------
-- 客户端授权类型增加行为验证码模式
-- ----------------------------
UPDATE [dbo].[blade_client] SET [authorized_grant_types] = CONCAT([authorized_grant_types], ',behavior') WHERE [authorized_grant_types] NOT LIKE '%behavior%'
GO
@@ -0,0 +1,126 @@
-- -----------------------------------
-- 新增账号锁定时长参数
-- -----------------------------------
INSERT INTO "BLADE_PARAM"
VALUES ('1123598819738675204', '账号锁定时长(分钟)', 'account.lockDuration', '30', '锁定时长'
, '1123598821738675201', '1123598813738675201', TO_DATE('2025-12-01 12:00:00', 'SYYYY-MM-DD HH24:MI:SS'), '1123598821738675201', TO_DATE('2025-12-01 12:00:00', 'SYYYY-MM-DD HH24:MI:SS')
, '1', '0');
-- ----------------------------
-- 限流规则表
-- ----------------------------
CREATE TABLE "BLADE_RATE_LIMIT" (
"ID" NUMBER(20) NOT NULL,
"TENANT_ID" VARCHAR(12),
"LIMIT_NAME" VARCHAR(128) NOT NULL,
"LIMIT_PATTERN" VARCHAR(1000) NOT NULL,
"REQUEST_METHOD" VARCHAR(16),
"LIMIT_DIMENSION" VARCHAR(16),
"LIMIT_COUNT" NUMBER(11),
"LIMIT_PERIOD" NUMBER(11),
"TIME_UNIT" VARCHAR(16),
"PRIORITY" NUMBER(11),
"REMARK" VARCHAR(255),
"CREATE_USER" NUMBER(20),
"CREATE_DEPT" NUMBER(20),
"CREATE_TIME" DATE,
"UPDATE_USER" NUMBER(20),
"UPDATE_TIME" DATE,
"STATUS" NUMBER(11),
"IS_DELETED" NUMBER(11)
)
PCTFREE 10
INITRANS 1
TABLESPACE "USERS"
;
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."ID" IS '主键';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."TENANT_ID" IS '租户ID';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_NAME" IS '规则名称';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_PATTERN" IS 'URL匹配模式';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."REQUEST_METHOD" IS '请求方法';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_DIMENSION" IS '限流维度';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_COUNT" IS '请求阈值';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."LIMIT_PERIOD" IS '时间窗口';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."TIME_UNIT" IS '时间单位';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."PRIORITY" IS '优先级';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."REMARK" IS '备注';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."CREATE_USER" IS '创建人';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."CREATE_DEPT" IS '创建部门';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."CREATE_TIME" IS '创建时间';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."UPDATE_USER" IS '修改人';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."UPDATE_TIME" IS '修改时间';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."STATUS" IS '状态';
COMMENT ON COLUMN "BLADE_RATE_LIMIT"."IS_DELETED" IS '是否已删除';
COMMENT ON TABLE "BLADE_RATE_LIMIT" IS '限流规则表';
ALTER TABLE "BLADE_RATE_LIMIT" ADD PRIMARY KEY("ID") ;
-- ----------------------------
-- 限流触发日志表
-- ----------------------------
CREATE TABLE "BLADE_RATE_LIMIT_LOG" (
"ID" NUMBER(20) NOT NULL,
"TENANT_ID" VARCHAR(12) DEFAULT '000000',
"SERVICE_ID" VARCHAR(32),
"SERVER_HOST" VARCHAR(255),
"SERVER_IP" VARCHAR(255),
"ENV" VARCHAR(255),
"LIMIT_ID" NUMBER(20),
"LIMIT_NAME" VARCHAR(128),
"LIMIT_DIMENSION" VARCHAR(16),
"LIMIT_COUNT" NUMBER(11),
"LIMIT_PERIOD" NUMBER(11),
"TIME_UNIT" VARCHAR(16),
"LIMIT_KEY" VARCHAR(255),
"METHOD" VARCHAR(10),
"REQUEST_URI" VARCHAR(255),
"USER_AGENT" VARCHAR(1000),
"REMOTE_IP" VARCHAR(255),
"PARAMS" CLOB,
"CREATE_BY" VARCHAR(64),
"CREATE_TIME" DATE
)
PCTFREE 10
INITRANS 1
TABLESPACE "USERS"
;
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."ID" IS '编号';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."TENANT_ID" IS '租户ID';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."SERVICE_ID" IS '服务ID';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."SERVER_HOST" IS '服务器名';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."SERVER_IP" IS '服务器IP地址';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."ENV" IS '服务器环境';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_ID" IS '限流规则主键ID';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_NAME" IS '规则名称';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_DIMENSION" IS '限流维度';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_COUNT" IS '请求阈值';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_PERIOD" IS '时间窗口';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."TIME_UNIT" IS '时间单位';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."LIMIT_KEY" IS '限流计数key';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."METHOD" IS '操作方式';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."REQUEST_URI" IS '请求URI';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."USER_AGENT" IS '用户代理';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."REMOTE_IP" IS '操作IP地址';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."PARAMS" IS '操作提交的数据';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."CREATE_BY" IS '创建者';
COMMENT ON COLUMN "BLADE_RATE_LIMIT_LOG"."CREATE_TIME" IS '创建时间';
COMMENT ON TABLE "BLADE_RATE_LIMIT_LOG" IS '限流触发日志表';
ALTER TABLE "BLADE_RATE_LIMIT_LOG" ADD PRIMARY KEY("ID") ;
-- ----------------------------
-- 限流管理菜单
-- ----------------------------
INSERT INTO "BLADE_MENU"
VALUES ('1963598815738675321', '1123598815738675307', 'rate_limit', '限流管理', 'menu', '/authority/ratelimit', 'iconfont icon-APIjieru', 5, 1, 0, 1, '', NULL, 0);
INSERT INTO "BLADE_MENU"
VALUES ('1963598815738675322', '1963598815738675321', 'rate_limit_add', '新增', 'add', '/authority/ratelimit/add', 'plus', 1, 2, 1, 1, '', NULL, 0);
INSERT INTO "BLADE_MENU"
VALUES ('1963598815738675323', '1963598815738675321', 'rate_limit_edit', '修改', 'edit', '/authority/ratelimit/edit', 'form', 2, 2, 2, 1, '', NULL, 0);
INSERT INTO "BLADE_MENU"
VALUES ('1963598815738675324', '1963598815738675321', 'rate_limit_delete', '删除', 'delete', '/api/blade-system/rate-limit/remove', 'delete', 3, 2, 3, 1, '', NULL, 0);
INSERT INTO "BLADE_MENU"
VALUES ('1963598815738675325', '1963598815738675321', 'rate_limit_view', '查看', 'view', '/authority/ratelimit/view', 'file-text', 4, 2, 2, 1, '', NULL, 0);
-- ----------------------------
-- 客户端授权类型增加行为验证码模式
-- ----------------------------
UPDATE "BLADE_CLIENT" SET "AUTHORIZED_GRANT_TYPES" = CONCAT("AUTHORIZED_GRANT_TYPES", ',behavior') WHERE "AUTHORIZED_GRANT_TYPES" NOT LIKE '%behavior%';