:feat: 新增HCS合同合规对接配置并更新dev环境模板与凭据

- blade-dev.yaml:新增 hcs 配置块(mock 开关、baseUrl、Authorization/Key-Auth、
  创建单位、五类推送开关、立项/合同模板映射、风险与额度校验、特批/开票/收票单、
  附件转传、主数据缓存等)
- blade-dev.yaml:补充 bfi 物料映射、收款认领公告、全票池发票绑定与审批通过自动同步配置
- blade-dev.yaml:新增 MinIO 文件存储配置;caller 侧调整 lock、logging、wechat.mini 位置
- third-party-api.yaml:更新 hcs Authorization、创建单位 id/name(百色物产新源供应链有限公司)、
  立项 template-code 回退为 template_15x0og、承运商合同模板 id
This commit is contained in:
刘泉佳
2026-10-16 19:10:51 +08:00
parent f23f73e263
commit 50cce600ab
2 changed files with 192 additions and 19 deletions
+188 -15
View File
@@ -32,7 +32,7 @@ spring:
blade:
#分布式锁配置
lock:
enabled: false
enabled: true
address: redis://127.0.0.1:6379
#多团队协作服务配置
loadbalancer:
@@ -47,10 +47,9 @@ blade:
datasource:
dev:
# MySql
# rewriteBatchedStatements=true:MyBatis-Plus saveBatch/updateBatchById 依赖该参数才会合并为多值语句,否则仍是逐条往返(仅 MySQL 支持,切换其他库需移除)
url: jdbc:mysql://localhost:3306/transport?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&tinyInt1isBit=false&allowMultiQueries=true&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true&rewriteBatchedStatements=true
username: root
password: root
password: 123456
# PostgreSQL
#url: jdbc:postgresql://127.0.0.1:5432/bladex
#username: postgres
@@ -76,6 +75,18 @@ blade:
#username: kingbase
#password: 123456
#日志级别配置
logging:
level:
org.springblade: debug
# 临时
org.springframework.amqp: ERROR
org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer: OFF
# feign: debug
# logging:
# file:
# path: ./logs # 日志文件目录
# name: ./logs/app.log # 或直接指定文件名
#第三方接口配置
thirdParty:
ocr:
@@ -93,12 +104,11 @@ thirdParty:
queryDepartmentPageUrl: /gwzh/OA/OA_GET_DEPARTMENT_LIST
queryPersonPageUrl: /gwzh/OA/OA_GET_USER_LIST
authorization: ${OA_AUTHORIZATION:${IAM_SSO_AUTHORIZATION:Z3d6aF90bXMtOVJJU0RVN1U6YW0yYkcwWnBJZ0RQZmtrSjNaZkZjUDBSaGFuSEtxQng=}}
lbs:
# LBS 网关地址(车辆实时定位)
baseUrl: http://172.16.204.83:38000
locateUrl: /gwzh/LBS/LBS_LOCATE
trackUrl: /gwzh/LBS/LBS_TRACK
authorization: ${LBS_AUTHORIZATION:${OA_AUTHORIZATION:${IAM_SSO_AUTHORIZATION:Z3d6aF90bXMtOVJJU0RVN1U6YW0yYkcwWnBJZ0RQZmtrSjNaZkZjUDBSaGFuSEtxQng=}}}
wechat:
mini:
# 微信小程序(手机号一键登录 / openid)
appId: ${WECHAT_MINI_APP_ID:}
appSecret: ${WECHAT_MINI_APP_SECRET:}
track:
# 轨迹开放接口地址
baseUrl: http://127.0.0.1:8080
@@ -120,7 +130,6 @@ thirdParty:
processExecuteUrl: ${MK_PROCESS_EXECUTE_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/execute}
processDeleteUrl: ${MK_PROCESS_DELETE_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/delete}
getCurrentNodesUrl: ${MK_CURRENT_NODES_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/getCurNodesInfo}
getProcessInfoUrl: ${MK_PROCESS_INFO_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/getProcessInfo}
getNodeHandlersUrl: ${MK_NODE_HANDLERS_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/getNodeHandlerInfos}
getManualNodeUrl: ${MK_MANUAL_NODE_URL:/openapi/sys-lbpm/sysLbpmTemplate/openSupport/getManualNode}
pushOrgDeptUrl: ${MK_PUSH_ORG_DEPT_URL:/openapi/sys-org/v2/push/orgDept}
@@ -133,11 +142,7 @@ thirdParty:
downloadFileUrl: ${MK_DOWNLOAD_FILE_URL:/openapi/sys-attach/fileStream/download}
queryApprovalListUrl: ${MK_QUERY_APPROVAL_LIST_URL:/openapi/lbpm-approval/lbpmApproval/portal/list}
queryProcessListUrl: ${MK_QUERY_PROCESS_LIST_URL:/openapi/sys-lbpm/sysLbpmProcess/openSupport/list}
wechat:
mini:
# 微信小程序(手机号一键登录 / openid)
appId: ${WECHAT_MINI_APP_ID:}
appSecret: ${WECHAT_MINI_APP_SECRET:}
# 业财融合(BFI)应用及接口配置,敏感值通过环境变量注入
bfi:
# 业财融合(BFI)应用及接口配置,敏感值通过环境变量注入
baseUrl: ${BFI_BASE_URL:http://172.16.203.134:8000/gwzh/BFI}
@@ -149,6 +154,22 @@ thirdParty:
language: ${BFI_LANGUAGE:zh_CN}
# 数据来源系统编码(推送金蝶公共参数:客商、付款申请等统一使用),默认 WLTMS(运输TMS)
srcSys: ${BFI_SRC_SYS:WLTMS}
# 应付/应收/收票单分录物料映射(A102-2/A302-2/A303-2 共用,未配置使用代码默认值):
# 运输类按项目业务模式映射——国内运输按运单运输方式映射、国际运输映射国际货代服务;
# 装卸大类及手动添加的非运费杂费映射装卸物料
material:
# 国内运输:运单运输方式 -> 金蝶物料编码(公路运输/铁路运输/水路运输/航空运输四种)
domestic:
"[公路运输]": ${BFI_MATERIAL_DOMESTIC_ROAD:XDWL11010001}
"[铁路运输]": ${BFI_MATERIAL_DOMESTIC_RAIL:XDWL11010002}
"[水路运输]": ${BFI_MATERIAL_DOMESTIC_WATER:XDWL11010003}
"[航空运输]": ${BFI_MATERIAL_DOMESTIC_AIR:Item-00001082}
# 国际运输业务模式物料编码(国际货运代理服务)
international: ${BFI_MATERIAL_INTERNATIONAL:Item-00001081}
# 装卸大类、手动添加非运费杂费物料编码(装卸)
loading: ${BFI_MATERIAL_LOADING:XDWL11002004}
# 付款申请推送配置(A103-3 付款申请保存)
payApply:
# 单据类型编码:ap_payapply_BT_S 采购付款申请、ap_payapply_oth_BT_S 其他付款申请
@@ -164,6 +185,26 @@ thirdParty:
syncEnabled: ${BFI_PAY_RESULT_SYNC_ENABLED:true}
# 调度 cron,默认每10分钟
cron: ${BFI_PAY_RESULT_CRON:0 */10 * * * ?}
# 收款认领公告查询配置(A301-2)
claimAnnounce:
# 查询时间窗口(月数)
months: ${BFI_CLAIM_ANNOUNCE_MONTHS:6}
# 认领人:配置后公告查询固定使用该值,不再按当前登录用户姓名查询
claimusers: ${BFI_CLAIM_ANNOUNCE_CLAIMUSERS:徐媛}
# 收票管理金蝶全票池发票定时绑定(A801-1 查询全票池发票数据)
invoiceReceipt:
# 绑定任务开关,默认关闭(联调稳定后开启)
syncEnabled: ${BFI_INVOICE_RECEIPT_SYNC_ENABLED:false}
# 调度 cron,默认每30分钟
cron: ${BFI_INVOICE_RECEIPT_CRON:0 */30 * * * ?}
# 增量窗口天数(按票池更新时间),首轮/兜底全量比对窗口
incrementDays: ${BFI_INVOICE_RECEIPT_INCREMENT_DAYS:281}
# 同步发票种类白名单(逗号分隔票易通编码,如 26,27 数电普票/专票),为空不限制
invoiceTypes: ${BFI_INVOICE_RECEIPT_INVOICE_TYPES:26,27}
# 补偿绑定单轮限量(未绑定登记按发票号码精确补查条数上限)
compensateLimit: ${BFI_INVOICE_RECEIPT_COMPENSATE_LIMIT:200}
# 收款认领推送金蝶定时任务(A301-3 收款认领结果推送)
receiptClaimPush:
# 推送任务开关,默认关闭(联调稳定后开启)
@@ -174,6 +215,130 @@ thirdParty:
# 进程异常退出时锁在租约到期后自动释放
lockLeaseSeconds: ${BFI_RECEIPT_CLAIM_PUSH_LOCK_LEASE_SECONDS:1800}
# 审批通过自动同步金蝶(事件触发:结算单A102-2/A302-2、付款申请A103-1/A103-3、开票申请A303-1、收票A303-2+A302-6)
autoSync:
# 结算单审批后自动推送开关
settlement: ${BFI_AUTO_SYNC_SETTLEMENT:true}
# 付款申请审批后自动推送开关
payment: ${BFI_AUTO_SYNC_PAYMENT:true}
# 开票申请审批后自动推送开关
invoiceApply: ${BFI_AUTO_SYNC_INVOICE_APPLY:true}
# 收票登记审批后自动推送开关
receipt: ${BFI_AUTO_SYNC_RECEIPT:true}
# failed 单据定时重推开关(仅重推生成失败,不扫 unsynced 存量)
retryEnabled: ${BFI_AUTO_SYNC_RETRY_ENABLED:false}
# 重推调度 cron,默认每10分钟
retryCron: ${BFI_AUTO_SYNC_RETRY_CRON:0 */10 * * * ?}
# 合同合规系统
hcs:
# Mock 开关(true 时 IHcsClient 走本地 JSON 桩 F:/home/tms/mock/hcs/{方法名}.json,联调前自测用,生产必须 false;改配置需重启,改桩文件即时生效)
mock-enabled: ${HCS_MOCK_ENABLED:true}
# 合同合规系统(HCS)开放接口地址(v4 接口说明:带网关前缀,直连可配,代码不感知)
baseUrl: ${HCS_BASE_URL:http://172.16.203.134:8000/gwzh/HTHG}
# Authorization 请求头整值(含 Basic 前缀,敏感值通过环境变量注入)
authorization: ${HCS_AUTHORIZATION:Basic d2Njazp0RzQjd044JWpYNmM=}
# Key-Auth 请求头值(v4 接口说明:所有接口固定携带 Authorization + Key-Auth 两个头)
key-auth: ${HCS_KEY_AUTH:3F7e8yI6RV8S53mJ9tYa0672r3W4n279}
# 来源系统标识(fd_sources,约定值 WLTMS)
src-system: ${HCS_SRC_SYSTEM:WLTMS}
# 操作人登录名(fdLoginName / curUser.fdLoginName,全部合同接口共用,默认 srvadmin)
operator-login-name: ${HCS_OPERATOR_LOGIN_NAME:13737128880}
# 创建单位 fdId(fd_creator_unit 等组织引用,HCS 组织主数据固定值,项目立项、合同等接口共用;与 name 任一为空回退单据开题部门名称仅传名称)
creator-unit-id: ${HCS_CREATOR_UNIT_ID:1k4vq0lhsw98w1gkegw1d2g9nep42p9j1cw0}
# 创建单位名称(与 creator-unit-id 配套)
creator-unit-name: ${HCS_CREATOR_UNIT_NAME:百色物产新源供应链有限公司}
# 推送任务(审批通过即时推送 + 定时扫描兜底,HcsPushTask 五类任务独立开关)
push:
# 审批通过即时推送总开关(事务提交后异步推送,关闭时仅走扫描兜底)
immediate-enabled: ${HCS_PUSH_IMMEDIATE_ENABLED:true}
# 每类单据单轮扫描批量
batch-size: ${HCS_PUSH_BATCH_SIZE:50}
# 推送失败自动重试上限,超限仅人工重推
max-retry: ${HCS_PUSH_MAX_RETRY:5}
# 五类扫描任务独立开关(cron 有代码默认值错峰每5分钟,无需配置)
project:
sync-enabled: ${HCS_PUSH_PROJECT_ENABLED:false}
contract:
sync-enabled: ${HCS_PUSH_CONTRACT_ENABLED:false}
payment:
sync-enabled: ${HCS_PUSH_PAYMENT_ENABLED:false}
invoice-application:
sync-enabled: ${HCS_PUSH_INVOICE_APP_ENABLED:false}
invoice-receipt:
sync-enabled: ${HCS_PUSH_INVOICE_RCV_ENABLED:false}
# 项目立项(C102)
project:
# 立项 bpmOperation.templateCode(环境相关值,§9-U9 待合规方提供)
template-code: ${HCS_PROJECT_TEMPLATE_CODE:template_15x0og}
# 合同(C103-1/11)
contract:
# TMS 合同类别 -> HCS 模板ID(§9-U7 待合规方提供模板清单)
template-mapping:
"[承运商合同]": "1j5tddhugw3w2kiwumvajq27ediq26fp5aw0"
# TMS 币种码 -> HCS 币种名称(照金蝶 RMB->CNY 映射惯例)
currency-name-mapping: {"RMB": "人民币"}
# 合同 fdSepcailContract 固定 false(D15,配置项预留)
special-contract-enabled: ${HCS_CONTRACT_SPECIAL_ENABLED:false}
# 合同推送前是否强制客商风险校验
require-risk-check: ${HCS_CONTRACT_REQUIRE_RISK_CHECK:true}
# 履约规则(C103-9,一期暂不对接)
exe-stage:
# 履约规则行级同步开关(默认关,对接后打开)
sync-enabled: ${HCS_EXE_STAGE_SYNC_ENABLED:false}
# 金额类型默认值(fdFundType)
fund-type: ${HCS_EXE_STAGE_FUND_TYPE:byAmount}
# 客商风险校验(C101-1)
risk:
check-on-contract: ${HCS_RISK_CHECK_ON_CONTRACT:true}
check-on-payment: ${HCS_RISK_CHECK_ON_PAYMENT:true}
# 黑名单是否阻断(合同置 failed / 付款提交拦截)
# block-blacklist: ${HCS_RISK_BLOCK_BLACKLIST:true}
# 额度校验(C106-1,一期暂不对接)
credit:
# 额度校验开关(默认关,关闭后特批无自动触发,对接后打开)
check-enabled: ${HCS_CREDIT_CHECK_ENABLED:false}
# 付款提交校验是否要求合同已推送合规
require-contract-synced: ${HCS_CREDIT_REQUIRE_CONTRACT_SYNCED:true}
# 结算付款特批(C106-3/4)
spec-pay:
# 单据状态(示例 10)
doc-status: ${HCS_SPEC_PAY_DOC_STATUS:10}
# 付款用途/性质/类型字典值(§9-U3 待联调后配置)
payment-purpose: ${HCS_SPEC_PAY_PAYMENT_PURPOSE:2001}
payment-nature: ${HCS_SPEC_PAY_PAYMENT_NATURE:1}
payment-type: ${HCS_SPEC_PAY_PAYMENT_TYPE:1}
# 开票登记(C111)
invoice:
# TMS 发票类型 -> HCS 发票类型字典值(§9-U3 待联调后配置)
invoice-type-mapping: {"electronic_normal": "", "electronic_special": ""}
# TMS 币种码 -> HCS 币种 fdId(经 C103-12 币种表缓存取值,§9-U3 待联调后配置)
currency-id-mapping: {"RMB": ""}
# 款项性质默认值(fdFundNature)
fund-nature-default: ${HCS_INVOICE_FUND_NATURE_DEFAULT:progress}
# 收票单(C109)
receipt-bill:
# TMS 发票类型 -> HCS 收票发票类型字典值(§9-U3 待联调后配置)
invoice-type-mapping: {}
# 履约记录(C108-1/2,一期暂不对接)
perf-record:
# 履约记录同步开关(默认关,对接后打开)
sync-enabled: ${HCS_PERF_RECORD_SYNC_ENABLED:false}
# 表单模板ID(fd_xform_id,环境相关值,§9-U9 待合规方提供)
xform-id: ${HCS_PERF_RECORD_XFORM_ID:}
# 附件转传(C103-2)
attachment:
# 附件转传总开关
transfer-enabled: ${HCS_ATTACHMENT_TRANSFER_ENABLED:true}
# TMS 文件服务下载基址(拉取附件流用)
file-download-base: ${HCS_ATTACHMENT_FILE_DOWNLOAD_BASE:}
# 主数据缓存(C103-6/7/12,启动/首次使用时拉取并缓存)
master-data:
# 缓存时长(分钟)
ttl-minutes: ${HCS_MASTER_DATA_TTL_MINUTES:120}
#百度OCR配置,API Key和Secret Key请通过环境变量注入
baidu:
ocr:
@@ -185,6 +350,14 @@ baidu:
request-timeout: 30s
token-refresh-advance: 1m
#MinIO文件存储配置
file:
storage:
minio:
endpoint: http://8.148.239.157:9000
access-key-id: transport
access-key-secret: transport
bucket-name: transport
powerjob:
worker:
+4 -4
View File
@@ -151,7 +151,7 @@ thirdParty:
# 合同合规系统(HCS)开放接口地址(v4 接口说明:带网关前缀,直连可配,代码不感知)
baseUrl: ${HCS_BASE_URL:http://172.16.203.134:8000/gwzh/HTHG}
# Authorization 请求头整值(含 Basic 前缀,敏感值通过环境变量注入)
authorization: ${HCS_AUTHORIZATION:Basic d2NjazprJDdQcVIyIXNCdjkmbkc0}
authorization: ${HCS_AUTHORIZATION:Basic d2Njazp0RzQjd044JWpYNmM=}
# Key-Auth 请求头值(v4 接口说明:所有接口固定携带 Authorization + Key-Auth 两个头)
key-auth: ${HCS_KEY_AUTH:3F7e8yI6RV8S53mJ9tYa0672r3W4n279}
# 来源系统标识(fd_sources,约定值 WLTMS)
@@ -159,9 +159,9 @@ thirdParty:
# 操作人登录名(fdLoginName / curUser.fdLoginName,全部合同接口共用,默认 srvadmin)
operator-login-name: ${HCS_OPERATOR_LOGIN_NAME:srvadmin}
# 创建单位 fdId(fd_creator_unit 等组织引用,HCS 组织主数据固定值,项目立项、合同等接口共用;与 name 任一为空回退单据开题部门名称仅传名称)
creator-unit-id: ${HCS_CREATOR_UNIT_ID:1j56etj23w358wne0ow2k5214nk4f24213w0}
creator-unit-id: ${HCS_CREATOR_UNIT_ID:1k4vq0lhsw98w1gkegw1d2g9nep42p9j1cw0}
# 创建单位名称(与 creator-unit-id 配套)
creator-unit-name: ${HCS_CREATOR_UNIT_NAME:广西物产城矿发展有限公司}
creator-unit-name: ${HCS_CREATOR_UNIT_NAME:百色物产新源供应链有限公司}
# 推送任务(审批通过即时推送 + 定时扫描兜底,HcsPushTask 五类任务独立开关)
push:
# 审批通过即时推送总开关(事务提交后异步推送,关闭时仅走扫描兜底)
@@ -189,7 +189,7 @@ thirdParty:
contract:
# TMS 合同类别 -> HCS 模板ID(§9-U7 合规方提供模板清单;中文键必须用 "[...]" 括号记法,否则绑定失败)
template-mapping:
"[承运商合同]": "1jvnp5s7mw13gw5q4w4g9qin1n1a2rn14gw0"
"[承运商合同]": "1j5tddhugw3w2kiwumvajq27ediq26fp5aw0"
# TMS 审核状态 -> HCS 合同状态(CONTRACT_STATUS 必填,§9-U3 待联调确认字典值后启用)
#status-mapping:
# approved: approved