Files
svc-hall-service/src/main/resources/application.yml
T
chenxing b08d076f0b
build / build-push (push) Failing after 8s
feat(flow): 回调链路迁平台 flow-callback starter + 表单级流程绑定
- 回调迁 starter(2026-09-20):删本地实现 FlowCallbackService/Controller/
  FilterConfiguration 及旧测试,X-Flw 验签/幂等/乱序门由 starter 承担,
  业务映射入 SvcFlowCallbackHandler(biz-type svc_item);端点仍 /callback/flow,
  存量注册 callback_url 不变、secret 零轮换,镜像表 flow_callback_reg
  由 sql/20260920_flow_callback_starter_migration.sql 迁移
- 表单级流程绑定:ServiceForm 增 flowGuid,事项未绑流程时回退取绑定表单
  最新版本(effectiveFlowGuid),绑定校验/在线办理口径同步
- FlowReconcileJob/FlowCenterClient/OpenApiAuthEnforceConfiguration 等
  SDK 适配微调;补 .gitignore(target/、日志)
- 全量 mvn test 本地绿(含新增 SvcFlowCallbackHandlerTest/
  ServiceItemEffectiveFlowTest)
2026-09-21 09:37:33 +08:00

127 lines
5.7 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
server:
port: 8086
# 本地无 context-path(同 Notice dev);生产经 CONTEXT_PATH=/svc-hall 注入,
# Caddy 只反代 /svc-hall/api/*,页面与上传走前端/静态直出
spring:
application:
name: svc-hall
datasource:
url: jdbc:mysql://localhost:3306/bsch_svchall?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: root
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
hikari:
minimum-idle: 5
maximum-pool-size: 20
jpa:
hibernate:
# 开发期 update 自动建表;生产环境建议 none + 升级脚本(sql/ 目录)
ddl-auto: update
show-sql: false
open-in-view: false
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
properties:
hibernate:
jdbc:
time_zone: Asia/Shanghai
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: Asia/Shanghai
servlet:
# 对齐《Notice文件上传统一改造方案.md》D4:50MB / 200MB
multipart:
max-file-size: 50MB
max-request-size: 200MB
# ===== 基础平台 yh 配置(Cms/Notice 同款三件套)=====
yh:
auth:
enabled: true
sso:
server-url-prefix: http://sso.yunhaixingtong.com
# 本地 dev 指向前端 dev server(8087):CAS 验票回跳走 vite 代理(Cms 同款约定)
client-host-url: http://localhost:8087
allow-headers: all
allow-origins: all
# 用户面(发起/我的办件)与管理面全在 /api/* 下;本应用无匿名面。
# 流程中心回调走 /callback/*(不在 pattern 内,由 FlowCallbackVerifyFilter 验签保护)
url-pattern: /api/*
app-auth:
enabled: true
# 本应用自身身份(客户端签名用)——UserBase 注册后分配(进白名单),占位值上线前必须替换,
# 生产由 projman/Nacos 注入,禁止明文入库仓库(V2.0 R7)
app-key: 100018
# 联调态密钥(与 flow-center trusted-apps["100018"] 逐字一致);
# 注意旧占位"裸 32 个 0"会被 YAML 按八进制整数解析成 "0",签名时 SignUtil 校验直接失败,必须带字母+引号
app-secret: "svc-hall-dev-secret-100018"
# 入站验签白名单:CMS(供数消费方,appKey=100005);流程中心 flow-center 分配 appKey 后在此追加
trusted-apps:
100005: 2c7885de594742cc840b8762910b2d2e
open:
# 身份密钥唯一来源 = yh.app-auth.app-key/app-secret(本文件 app-auth 段),open.* 副本已删
base-host: http://base.yunhaixingtong.com
base-path: /userbase
# 服务目录(子应用配置优化方案 §4.2):跨服务出站唯一地址来源,命名目标走 SDK 门面 /
# YschOpenCall。cms 未晋升 PlatformService 枚举(按名直调);flowcenter 已入枚举,此处
# 显式覆盖为本地端口。完整 URL 拆 host+ctx,per-target base-path 与提供方 context-path
# 对齐 → 签名天然一致。生产改容器直连:flowcenter=http://flow-center-service:10008/flow-center、
# cms=http://yschcms-service:10005/yschcms。
services:
flowcenter: http://localhost:8085
cms: http://base.yunhaixingtong.com:10005/yschcms
# 流程中心回调接收端 starter(2026-09-20 迁移,X-Flw 验签式):端点保持既有 /callback/flow,
# 存量注册的 callback_url 不变、零 secret 轮换;幂等/乱序门由 starter 承担,
# 业务映射见 SvcFlowCallbackHandler;secret 镜像在 flow_callback_reg(迁移 SQL 见 sql/)
flow-callback:
path: /callback/flow
biz-types: [svc_item]
verify-flw-signature: true
callback-url: ${svchall.public-base-url}/callback/flow
# ===== 办事大厅专属配置 =====
svchall:
# 本应用对外可达基址(回调注册 callbackUrl = {public-base-url}/callback/flow;projman 注入)
public-base-url: http://localhost:8086
# 办事大厅前端地址(办件 bizUrl 落地页用)
front:
base-url: http://localhost:8087
item:
# 服务部门"容器组"类型(UserBase GroupTypeEnum,默认 7=教师组;口径承袭 CMS cms.svc.item.dept-group-type)
dept-group-type: 7
cms:
# CMS 基址已迁至服务目录 yh.open.services.cms(上方 open 段)。
# 务必指向**后端**且带 context-path:内网 CMS 挂在 base 域下 /yschcms,但 Caddy 只反代
# /yschcms/{front,api,portal},没有 /oapi 路由——用 http://base.yunhaixingtong.com/yschcms
# 打 /oapi/* 会拿到 Caddy 404,因此必须是容器直连端口 10005
# (实测 /yschcms/oapi/site/list 能到应用)。
flow:
# 流程中心 flow-center 基址已迁至服务目录 yh.open.services.flowcenter(上方 open 段)。
# enabled=false(本地未部署 flow-center)时全部方法抛业务异常,消费方按需降级。
enabled: true
# 对账 Job 应急闸(契约冻结"消费方免每日对账":flow-center 持续重试+死信+挂起告警为主链路)。
# 默认 false 停用;仅大面积漂移事故应急时置 true 开闸(每日 04:00 跑)
reconcile-enabled: false
file:
# 文件对外可达基址(绝对地址):上传返回值、oapi 富文本内链绝对化都用它。
# 本地=后端直连(无 context-path);生产=https://base.yunhaixingtong.com/svc-hall/upload/
# (Projman 自动生成静态直出段,prod 由 CONTEXT_PATH 注入应用上下文)
public-base-url: http://localhost:8086/upload/
logging:
level:
com.yunhai.svchall: debug
management:
endpoints:
web:
exposure:
include: health
endpoint:
health:
show-details: never
# 文件存储磁盘路径(Notice 三件套约定;Docker 部署时与 volume 挂载一致)
FILE_PATH: D:/bsch/svchall/upload/