2. 优化 databus api 日志记录的字段缺失问题 3. 新增 eplat sso 页面登录校验 4. 用户、部门编辑新增 seata 事务支持 5. 新增 iwork 流程发起接口 6. 新增 eban 同步用户时的岗位处理逻辑 7. 新增无 skywalking 时的 traceId 支持
271 lines
10 KiB
YAML
271 lines
10 KiB
YAML
spring:
|
||
application:
|
||
name: system-server
|
||
|
||
profiles:
|
||
active: ${env.name}
|
||
#统一nacos配置,使用 profile 管理
|
||
cloud:
|
||
nacos:
|
||
server-addr: ${config.server-addr} # Nacos 服务器地址
|
||
username: ${config.username} # Nacos 账号
|
||
password: ${config.password} # Nacos 密码
|
||
discovery: # 【配置中心】配置项
|
||
namespace: ${config.namespace} # 命名空间。这里使用 maven Profile 资源过滤进行动态替换
|
||
group: ${config.group} # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
|
||
metadata:
|
||
version: 1.0.0 # 服务实例的版本号,可用于灰度发布
|
||
config: # 【注册中心】配置项
|
||
namespace: ${config.namespace} # 命名空间。这里使用 maven Profile 资源过滤进行动态替换
|
||
group: ${config.group} # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP
|
||
|
||
main:
|
||
allow-circular-references: true # 允许循环依赖,因为项目是三层架构,无法避免这个情况。
|
||
allow-bean-definition-overriding: true # 允许 Bean 覆盖,例如说 Feign 等会存在重复定义的服务
|
||
|
||
config:
|
||
import:
|
||
- optional:classpath:application-${spring.profiles.active}.yaml # 加载【本地】配置
|
||
- optional:nacos:${spring.application.name}-${spring.profiles.active}.yaml # 加载【Nacos】的配置
|
||
|
||
# Servlet 配置
|
||
servlet:
|
||
# 文件上传相关配置项
|
||
multipart:
|
||
max-file-size: 16MB # 单个文件大小
|
||
max-request-size: 32MB # 设置总上传的文件大小
|
||
|
||
# Jackson 配置项
|
||
jackson:
|
||
serialization:
|
||
write-dates-as-timestamps: true # 设置 LocalDateTime 的格式,使用时间戳
|
||
write-date-timestamps-as-nanoseconds: false # 设置不使用 nanoseconds 的格式。例如说 1611460870.401,而是直接 1611460870401
|
||
write-durations-as-timestamps: true # 设置 Duration 的格式,使用时间戳
|
||
fail-on-empty-beans: false # 允许序列化无属性的 Bean
|
||
|
||
# Cache 配置项
|
||
cache:
|
||
type: REDIS
|
||
redis:
|
||
time-to-live: 1h # 设置过期时间为 1 小时
|
||
|
||
server:
|
||
port: 48081
|
||
|
||
logging:
|
||
file:
|
||
name: ${user.home}/logs/${spring.application.name}.log # 日志文件名,全路径
|
||
|
||
--- #################### 接口文档配置 ####################
|
||
|
||
springdoc:
|
||
api-docs:
|
||
enabled: true # 1. 是否开启 Swagger 接文档的元数据
|
||
path: /v3/api-docs
|
||
swagger-ui:
|
||
enabled: true # 2.1 是否开启 Swagger 文档的官方 UI 界面
|
||
path: /swagger-ui
|
||
default-flat-param-object: true # 参见 https://doc.xiaominfo.com/docs/faq/v4/knife4j-parameterobject-flat-param 文档
|
||
|
||
knife4j:
|
||
enable: false # TODO 芋艿:需要关闭增强,具体原因见:https://github.com/xiaoymin/knife4j/issues/874
|
||
setting:
|
||
language: zh_cn
|
||
|
||
# MyBatis Plus 的配置项
|
||
mybatis-plus:
|
||
configuration:
|
||
map-underscore-to-camel-case: true # 虽然默认为 true ,但是还是显示去指定下。
|
||
global-config:
|
||
db-config:
|
||
id-type: NONE # “智能”模式,基于 IdTypeEnvironmentPostProcessor + 数据源的类型,自动适配成 AUTO、INPUT 模式。
|
||
# id-type: AUTO # 自增 ID,适合 MySQL 等直接自增的数据库
|
||
# id-type: INPUT # 用户输入 ID,适合 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库
|
||
# id-type: ASSIGN_ID # 分配 ID,默认使用雪花算法。注意,Oracle、PostgreSQL、Kingbase、DB2、H2 数据库时,需要去除实体类上的 @KeySequence 注解
|
||
logic-delete-value: 1 # 逻辑已删除值(默认为 1)
|
||
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
|
||
banner: false # 关闭控制台的 Banner 打印
|
||
type-aliases-package: ${zt.info.base-package}.dal.dataobject
|
||
encryptor:
|
||
password: XDV71a+xqStEA3WH # 加解密的秘钥,可使用 https://www.imaegoo.com/2020/aes-key-generator/ 网站生成
|
||
|
||
mybatis-plus-join:
|
||
banner: false # 关闭控制台的 Banner 打印
|
||
|
||
# Spring Data Redis 配置
|
||
spring:
|
||
data:
|
||
redis:
|
||
repositories:
|
||
enabled: false # 项目未使用到 Spring Data Redis 的 Repository,所以直接禁用,保证启动速度
|
||
|
||
# VO 转换(数据翻译)相关
|
||
easy-trans:
|
||
is-enable-global: true # 启用全局翻译(拦截所有 SpringMVC ResponseBody 进行自动翻译 )。如果对于性能要求很高可关闭此配置,或通过 @IgnoreTrans 忽略某个接口
|
||
|
||
--- #################### iWork 集成配置 ####################
|
||
|
||
iwork:
|
||
enabled: true
|
||
base-url: http://172.16.36.233:8080
|
||
app-id:
|
||
client-public-key:
|
||
user-id:
|
||
workflow-id:
|
||
paths:
|
||
register: /api/ec/dev/auth/regist
|
||
apply-token: /api/ec/dev/auth/applytoken
|
||
user-info: /api/workflow/paService/getUserInfo
|
||
create-workflow: /api/workflow/paService/doCreateRequest
|
||
void-workflow: /api/workflow/paService/doCancelRequest
|
||
token:
|
||
ttl-seconds: 3600
|
||
refresh-ahead-seconds: 60
|
||
client:
|
||
connect-timeout: 5s
|
||
response-timeout: 30s
|
||
|
||
--- #################### RPC 远程调用相关配置 ####################
|
||
|
||
--- #################### 消息队列相关 ####################
|
||
|
||
# rocketmq 配置项,对应 RocketMQProperties 配置类
|
||
rocketmq:
|
||
# Producer 配置项
|
||
producer:
|
||
group: ${spring.application.name}_PRODUCER # 生产者分组
|
||
|
||
spring:
|
||
# Kafka 配置项,对应 KafkaProperties 配置类
|
||
kafka:
|
||
# Kafka Producer 配置项
|
||
producer:
|
||
acks: 1 # 0-不应答。1-leader 应答。all-所有 leader 和 follower 应答。
|
||
retries: 3 # 发送失败时,重试发送的次数
|
||
value-serializer: org.springframework.kafka.support.serializer.JsonSerializer # 消息的 value 的序列化
|
||
# Kafka Consumer 配置项
|
||
consumer:
|
||
auto-offset-reset: earliest # 设置消费者分组最初的消费进度为 earliest 。可参考博客 https://blog.csdn.net/lishuangzhe7047/article/details/74530417 理解
|
||
value-deserializer: org.springframework.kafka.support.serializer.JsonDeserializer
|
||
properties:
|
||
spring.json.trusted.packages: '*'
|
||
# Kafka Consumer Listener 监听器配置
|
||
listener:
|
||
missing-topics-fatal: false # 消费监听接口监听的主题不存在时,默认会报错。所以通过设置为 false ,解决报错
|
||
|
||
--- #################### 定时任务相关配置 ####################
|
||
|
||
xxl:
|
||
job:
|
||
executor:
|
||
appname: ${spring.application.name} # 执行器 AppName
|
||
logpath: ${user.home}/logs/xxl-job/${spring.application.name} # 执行器运行日志文件存储磁盘路径
|
||
accessToken: default_token # 执行器通讯TOKEN
|
||
|
||
--- #################### 验证码相关配置 ####################
|
||
|
||
aj:
|
||
captcha:
|
||
jigsaw: classpath:images/jigsaw # 滑动验证,底图路径,不配置将使用默认图片;以 classpath: 开头,取 resource 目录下路径
|
||
pic-click: classpath:images/pic-click # 滑动验证,底图路径,不配置将使用默认图片;以 classpath: 开头,取 resource 目录下路径
|
||
cache-type: redis # 缓存 local/redis...
|
||
cache-number: 1000 # local 缓存的阈值,达到这个值,清除缓存
|
||
timing-clear: 180 # local定时清除过期缓存(单位秒),设置为0代表不执行
|
||
type: blockPuzzle # 验证码类型 default两种都实例化。 blockPuzzle 滑块拼图 clickWord 文字点选
|
||
water-mark: 中国铜业 # 右下角水印文字(我的水印),可使用 https://tool.chinaz.com/tools/unicode.aspx 中文转 Unicode,Linux 可能需要转 unicode
|
||
interference-options: 0 # 滑动干扰项(0/1/2)
|
||
req-frequency-limit-enable: false # 接口请求次数一分钟限制是否开启 true|false
|
||
req-get-lock-limit: 5 # 验证失败5次,get接口锁定
|
||
req-get-lock-seconds: 10 # 验证失败后,锁定时间间隔
|
||
req-get-minute-limit: 30 # get 接口一分钟内请求数限制
|
||
req-check-minute-limit: 60 # check 接口一分钟内请求数限制
|
||
req-verify-minute-limit: 60 # verify 接口一分钟内请求数限制
|
||
|
||
--- #################### 芋道相关配置 ####################
|
||
|
||
zt:
|
||
info:
|
||
version: 1.0.0
|
||
base-package: com.zt.plat.module.system
|
||
web:
|
||
admin-ui:
|
||
url: http://dashboard.zt.iocoder.cn # Admin 管理后台 UI 的地址
|
||
xss:
|
||
enable: false
|
||
exclude-urls: # 如下 url,仅仅是为了演示,去掉配置也没关系
|
||
- ${management.endpoints.web.base-path}/** # 不处理 Actuator 的请求
|
||
swagger:
|
||
title: 管理后台
|
||
description: 提供管理员管理的所有功能
|
||
version: ${zt.info.version}
|
||
tenant: # 多租户相关配置项
|
||
enable: true
|
||
ignore-urls: # 登录时不校验租户,登录后强制用户选择后进入系统
|
||
# - /admin-api/system/auth/login
|
||
ignore-visit-urls:
|
||
- /admin-api/system/captcha/**
|
||
- /admin-api/system/user/profile/**
|
||
- /admin-api/system/auth/**
|
||
ignore-tables:
|
||
- system_seq
|
||
- system_seq_dtl
|
||
- system_seq_rcd
|
||
- system_sync_log
|
||
ignore-caches:
|
||
- user_role_ids
|
||
- permission_menu_ids
|
||
- oauth_client
|
||
- notify_template
|
||
- mail_account
|
||
- mail_template
|
||
- sms_template
|
||
sms-code: # 短信验证码相关的配置项
|
||
expire-times: 10m
|
||
send-frequency: 1m
|
||
send-maximum-quantity-per-day: 10
|
||
begin-code: 9999 # 这里配置 9999 的原因是,测试方便。
|
||
end-code: 9999 # 这里配置 9999 的原因是,测试方便。
|
||
|
||
|
||
# E办OAuth2配置文件
|
||
eban:
|
||
oauth2:
|
||
authorize-url: ${eban.oauth2.auth-server.base-url}/authorize
|
||
client-id: tyszhjyglxt
|
||
client-secret: fa821b567e59448e9acea3937529d1b4 # 需要从 e 办系统获取
|
||
redirect-uri: http://172.16.46.63:30080/system/oauth2/callback
|
||
response-type: code
|
||
auth-server:
|
||
base-url: http://10.2.137.42/idp/oauth2
|
||
client-id: ${eban.oauth2.client-id}
|
||
client-secret: ${eban.oauth2.client-secret}
|
||
token:
|
||
url: ${eban.oauth2.auth-server.base-url}/getToken
|
||
refresh-url: ${eban.oauth2.auth-server.base-url}/refreshToken
|
||
check-url: ${eban.oauth2.auth-server.base-url}/checkTokenValid
|
||
logout:
|
||
url: http://10.2.137.42/idp/profile/AllChannel/Redirect/GLO
|
||
entity-id: tyszhjyglxt
|
||
protocol: oauth
|
||
token-type: token
|
||
user-info:
|
||
url: ${eban.oauth2.auth-server.base-url}/getUserInfo
|
||
|
||
debug: false
|
||
|
||
sync:
|
||
encrypt-key: 25@jygk # 中铝 加密 key
|
||
|
||
eplat:
|
||
share:
|
||
url-prefix: http://10.1.7.110
|
||
client-id: ztjgj5gsJ2uU20900h9j
|
||
client-secret: DC82AD38EA764719B6DC7D71AAB4856C
|
||
scope: read
|
||
token-cache-key: eplat:cache:shareToken
|
||
refresh-token-cache-key: eplat:cache:shareRefreshToken
|
||
token-header-name: Xplat-Token
|
||
token-endpoint-path: /eplat/oauth/token
|
||
token-ttl: 5000s
|
||
refresh-token-ttl: 10000s
|