Microsoft Windows [版本 10.0.20348.4893]
(c) Microsoft Corporation。保留所有权利。

C:\Users\Administrator\Desktop\APPS\gym-manage\back>java -jar manage-app-1.0.0.jar --DB_PASSWORD="z5kdRFQ-$sL-pass-to-sql" --REDIS_PASSWORD="z5kdRFQ-$sLTerL"
04:38:58.013 [main] INFO cn.novalon.gym.manage.app.ManageApplication -- 搴旂敤绋嬪簭鍚姩涓?..

04:38:58.022 [main] INFO cn.novalon.gym.manage.app.ManageApplication -- 鍖呮壂鎻忚矾寰? cn.novalon.gym.manage

╔═══════════════════════════════════════════════════════════════════╗
║                                                                   ║
║    ███╗   ██╗ ██████╗ ██╗   ██╗ █████╗ ██╗      ██████╗ ███╗   ██╗ ║
║    ████╗  ██║██╔═══██╗██║   ██║██╔══██╗██║     ██╔═══██╗████╗  ██║ ║
║    ██╔██╗ ██║██║   ██║██║   ██║███████║██║     ██║   ██║██╔██╗ ██║ ║
║    ██║╚██╗██║██║   ██║╚██╗ ██╔╝██╔══██║██║     ██║   ██║██║╚██╗██║ ║
║    ██║ ╚████║╚██████╔╝ ╚████╔╝ ██║  ██║███████╗╚██████╔╝██║ ╚████║ ║
║    ╚═╝  ╚═══╝ ╚═════╝   ╚═══╝  ╚═╝  ╚═╝╚══════╝ ╚═════╝ ╚═╝  ╚═══╝ ║
║                                                                   ║
║    ███╗   ███╗ █████╗ ███╗   ██╗ █████╗  ██████╗ ███████╗         ║
║    ████╗ ████║██╔══██╗████╗  ██║██╔══██╗██╔════╝ ██╔════╝         ║
║    ██╔████╔██║███████║██╔██╗ ██║███████║██║  ███╗█████╗           ║
║    ██║╚██╔╝██║██╔══██║██║╚██╗██║██╔══██║██║   ██║██╔══╝           ║
║    ██║ ╚═╝ ██║██║  ██║██║ ╚████║██║  ██║╚██████╔╝███████╗         ║
║    ╚═╝     ╚═╝╚═╝  ╚═╝╚═╝  ╚═══╝╚═╝  ╚═╝ ╚═════╝ ╚══════╝         ║
║                                                                   ║
║    ███████╗██╗   ██╗███████╗████████╗███████╗███╗   ███╗          ║
║    ██╔════╝╚██╗ ██╔╝██╔════╝╚══██╔══╝██╔════╝████╗ ████║          ║
║    ███████╗ ╚████╔╝ ███████╗   ██║   █████╗  ██╔████╔██║          ║
║    ╚════██║  ╚██╔╝  ╚════██║   ██║   ██╔══╝  ██║╚██╔╝██║          ║
║    ███████║   ██║   ███████║   ██║   ███████╗██║ ╚═╝ ██║          ║
║    ╚══════╝   ╚═╝   ╚══════╝   ╚═╝   ╚══════╝╚═╝     ╚═╝          ║
║                                                                   ║
╚═══════════════════════════════════════════════════════════════════╝

  :: Novalon Manage System ::
  Version: 1.0.0
  Spring Boot: 3.5.13
  Java: 21.0.10
  PID: 7516

2026-06-24T04:39:00.533+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     : Starting ManageApplication v1.0.0 using Java 21.0.10 with PID 7516 (C:\Users\Administrator\Desktop\APPS\gym-manage\back\manage-app-1.0.0.jar started by Administrator in C:\Users\Administrator\Desktop\APPS\gym-manage\back)
2026-06-24T04:39:00.537+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     : The following 1 profile is active: "dev"
2026-06-24T04:39:06.298+08:00  INFO 7516 --- [gym-manage-api] [           main] o.s.b.f.s.DefaultListableBeanFactory     : Overriding bean definition for bean 'webSocketMapping' with a different definition: replacing [Root bean: class=null; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=checkInWebSocketConfig; factoryMethodName=webSocketMapping; initMethodNames=null; destroyMethodNames=[(inferred)]; defined in class path resource [cn/novalon/gym/manage/checkIn/config/CheckInWebSocketConfig.class]] with [Root bean: class=null; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=webSocketConfig; factoryMethodName=webSocketMapping; initMethodNames=null; destroyMethodNames=[(inferred)]; defined in class path resource [cn/novalon/gym/manage/checkIn/config/WebSocketConfig.class]]
2026-06-24T04:39:06.487+08:00  INFO 7516 --- [gym-manage-api] [           main] o.s.b.f.s.DefaultListableBeanFactory     : Overriding bean definition for bean 'handlerAdapter' with a different definition: replacing [Root bean: class=null; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=checkInWebSocketConfig; factoryMethodName=handlerAdapter; initMethodNames=null; destroyMethodNames=[(inferred)]; defined in class path resource [cn/novalon/gym/manage/checkIn/config/CheckInWebSocketConfig.class]] with [Root bean: class=null; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=webSocketConfig; factoryMethodName=handlerAdapter; initMethodNames=null; destroyMethodNames=[(inferred)]; defined in class path resource [cn/novalon/gym/manage/checkIn/config/WebSocketConfig.class]]
2026-06-24T04:39:06.511+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2026-06-24T04:39:06.512+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data R2DBC repositories in DEFAULT mode.
2026-06-24T04:39:07.747+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 1209 ms. Found 31 R2DBC repository interfaces.
2026-06-24T04:39:07.839+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2026-06-24T04:39:07.847+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Reactive Elasticsearch repositories in DEFAULT mode.
2026-06-24T04:39:07.874+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 10 ms. Found 1 Reactive Elasticsearch repository interface.
2026-06-24T04:39:10.252+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2026-06-24T04:39:10.257+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Elasticsearch repositories in DEFAULT mode.
2026-06-24T04:39:10.294+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 24 ms. Found 0 Elasticsearch repository interfaces.
2026-06-24T04:39:10.395+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2026-06-24T04:39:10.403+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
2026-06-24T04:39:10.496+08:00  INFO 7516 --- [gym-manage-api] [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 3 ms. Found 0 Redis repository interfaces.
2026-06-24T04:39:14.498+08:00  INFO 7516 --- [gym-manage-api] [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port 8084 (http)
2026-06-24T04:39:14.568+08:00  INFO 7516 --- [gym-manage-api] [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2026-06-24T04:39:14.577+08:00  INFO 7516 --- [gym-manage-api] [           main] o.apache.catalina.core.StandardEngine    : Starting Servlet engine: [Apache Tomcat/10.1.53]
2026-06-24T04:39:18.876+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.sys.config.AsyncConfig    : 审计日志异步线程池初始化完成: corePoolSize=5, maxPoolSize=10, queueCapacity=100
2026-06-24T04:39:18.956+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.sys.audit.AuditLogAspect  : === AuditLogAspect 初始化完成 ===
2026-06-24T04:39:19.611+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  : === OperationLogWebFilter 构造函数被调用 ===
2026-06-24T04:39:19.617+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  : === OperationLogWebFilter 初始化 ===
2026-06-24T04:39:19.619+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  : 操作日志映射配置数量: 10
2026-06-24T04:39:19.621+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   PUT:/api/roles/ -> 角色管理:更新角色
2026-06-24T04:39:19.627+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   POST:/api/users -> 用户管理:创建用户
2026-06-24T04:39:19.630+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   POST:/api/roles -> 角色管理:创建角色
2026-06-24T04:39:19.631+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   DELETE:/api/users/ -> 用户管理:删除用户
2026-06-24T04:39:19.633+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   PUT:/api/menus/ -> 菜单管理:更新菜单
2026-06-24T04:39:19.634+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   DELETE:/api/menus/ -> 菜单管理:删除菜单
2026-06-24T04:39:19.639+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   POST:/api/users/ -> 用户管理:用户操作
2026-06-24T04:39:19.641+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   POST:/api/menus -> 菜单管理:创建菜单
2026-06-24T04:39:19.643+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   DELETE:/api/roles/ -> 角色管理:删除角色
2026-06-24T04:39:19.645+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.audit.OperationLogWebFilter  :   PUT:/api/users/ -> 用户管理:更新用户
2026-06-24T04:39:20.557+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.s.config.PasswordEncoderConfig   : PasswordEncoderConfig 已加载
2026-06-24T04:39:23.376+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.s.config.PasswordEncoderConfig   : 创建主密码编码器: BCryptPasswordEncoder(strength=12), 类型: org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
2026-06-24T04:39:23.391+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.s.c.service.impl.SysUserService  : 使用的密码编码器类型: org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
2026-06-24T04:39:23.705+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.s.h.a.PasswordDiagnosticHandler  : PasswordDiagnosticHandler initialized with encoder: org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
2026-06-24T04:39:23.756+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.handler.auth.SysAuthHandler  : SysAuthHandler使用的密码编码器类型: org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
2026-06-24T04:39:24.465+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.handler.auth.SysAuthHandler  : DirectEncoder10测试: 密码=test123, 哈希=$2a$10$iJr, 前缀=$2a$10$
2026-06-24T04:39:24.466+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.handler.auth.SysAuthHandler  : DirectEncoder12测试: 密码=test123, 哈希=$2a$12$fxz, 前缀=$2a$12$
2026-06-24T04:39:34.332+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.manage.sys.config.SecurityConfig   : SecurityConfig初始化: 当前环境=dev, Swagger启用状态=true
2026-06-24T04:39:34.470+08:00 TRACE 7516 --- [gym-manage-api] [           main] s.w.r.r.m.a.RequestMappingHandlerMapping :
        c.n.g.m.s.a.c.AuditLogController:
        {GET /api/audit-logs}: query(AuditLogQueryRequest)
        {GET /api/audit-logs/{id}}: findById(Long)
        {GET /api/audit-logs/entity-type/{entityType}}: findByEntityType(String)
        {GET /api/audit-logs/count/entity-type/{entityType}}: countByEntityType(String)
        {GET /api/audit-logs/count/operator/{operator}}: countByOperator(String)
        {GET /api/audit-logs/entity/{entityId}}: findByEntityId(Long)
        {GET /api/audit-logs/statistics}: getStatistics()
        {GET /api/audit-logs/operator/{operator}}: findByOperator(String)
        {GET /api/audit-logs/time-range}: findByTimeRange(LocalDateTime,LocalDateTime)
        {GET /api/audit-logs/count/operation-type/{operationType}}: countByOperationType(String)
        {GET /api/audit-logs/operation-type/{operationType}}: findByOperationType(String)
2026-06-24T04:39:34.523+08:00 TRACE 7516 --- [gym-manage-api] [           main] s.w.r.r.m.a.RequestMappingHandlerMapping :
        o.s.w.a.MultipleOpenApiWebFluxResource:
        {GET /api-docs/{group}, produces [application/json]}: openapiJson(ServerHttpRequest,String,String,Locale)
        {GET /api-docs.yaml/{group}, produces [application/vnd.oai.openapi]}: openapiYaml(ServerHttpRequest,String,String,Locale)
2026-06-24T04:39:34.600+08:00 TRACE 7516 --- [gym-manage-api] [           main] s.w.r.r.m.a.RequestMappingHandlerMapping :
        o.s.w.a.OpenApiWebfluxResource:
        {GET /api-docs, produces [application/json]}: openapiJson(ServerHttpRequest,String,Locale)
        {GET /api-docs.yaml, produces [application/vnd.oai.openapi]}: openapiYaml(ServerHttpRequest,String,Locale)
2026-06-24T04:39:34.611+08:00 TRACE 7516 --- [gym-manage-api] [           main] s.w.r.r.m.a.RequestMappingHandlerMapping :
        o.s.w.u.SwaggerWelcomeWebFlux:
        {GET /swagger-ui.html}: redirectToUi(ServerWebExchange)
2026-06-24T04:39:34.630+08:00 TRACE 7516 --- [gym-manage-api] [           main] s.w.r.r.m.a.RequestMappingHandlerMapping :
        o.s.w.u.SwaggerConfigResource:
        {GET /api-docs/swagger-config, produces [application/json]}: getSwaggerUiConfig(ServerWebExchange)
2026-06-24T04:39:34.645+08:00 DEBUG 7516 --- [gym-manage-api] [           main] s.w.r.r.m.a.RequestMappingHandlerMapping : 17 mappings in 'requestMappingHandlerMapping'
2026-06-24T04:39:34.706+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.manage.sys.config.SecurityConfig   : SecurityConfig: Swagger路径和诊断端点已放行
2026-06-24T04:39:34.799+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/webSocket/checkIn] onto cn.novalon.gym.manage.checkIn.websocket.MyWebSocketHandler@36c6d53b
2026-06-24T04:39:34.803+08:00 DEBUG 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Patterns [/webSocket/checkIn] in 'webSocketMapping'
2026-06-24T04:39:35.521+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.sys.config.ExceptionLogConfig    : 配置异常日志路由
2026-06-24T04:39:35.531+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.f.s.s.RouterFunctionMapping      : Mapped (GET && /api/diagnostic/password) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221995e198@259c7ff3
(GET && /api/dictionaries) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221995fb70@30865a1
(GET && /api/dictionaries/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221995fd88@35dc4303
(GET && /api/dictionaries/type/{type}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996c000@5707ce70
(GET && /api/dictionaries/check/exists) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996c218@11225084
(POST && /api/dictionaries) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996c430@51470a6c
(PUT && /api/dictionaries/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996c648@6d48f1c
(DELETE && /api/dictionaries/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996c860@6f49a5f8
(GET && /api/users) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996ca78@6c6c7ee5
(GET && /api/users/page) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996cc90@5911d6e
(GET && /api/users/count) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996cea8@271fdeaf
(GET && /api/users/username/{username}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996d0c0@55bd9d1
(GET && /api/users/check/username) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996d2d8@a4f14c9
(GET && /api/users/check/email) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996d4f0@7b81283
(POST && /api/users) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996d708@5e8b5e7d
(GET && /api/users/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996d920@5c5812c
(PUT && /api/users/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996db38@77de3401
(DELETE && /api/users/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996dd50@30350c73
(POST && /api/users/{id}/action/change-password) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996df68@34c9c4be
(POST && /api/users/{id}/action/logical-delete) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996e180@1d2cffea
(POST && /api/users/logical-delete) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996e398@1b54ae72
(POST && /api/users/action/restore) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996e5b0@39a7fff
(POST && /api/users/{id}/action/restore) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996e7c8@798ca706
(GET && /api/users/{id}/roles) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996e9e0@3a5c472
(POST && /api/users/{id}/roles) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996ebf8@3dbcdd4a
(GET && /api/menus) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996ee10@6d093885
(GET && /api/menus/tree) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996f028@712106b5
(GET && /api/menus/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996f240@5c8adab7
(POST && /api/menus) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996f458@7070ae1
(PUT && /api/menus/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996f670@236ec794
(DELETE && /api/menus/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996f888@5a0379e2
(GET && /api/roles) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996faa0@50564f77
(GET && /api/roles/page) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996fcb8@6fb9179e
(GET && /api/roles/count) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996b000@3abe3f9a
(GET && /api/roles/name/{roleName}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996b218@7b338d46
(GET && /api/roles/check-name) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996b430@19fc48a0
(GET && /api/roles/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996b648@3edea9e6
(POST && /api/roles) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996b860@75d70348
(PUT && /api/roles/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996ba78@12e9e909
(DELETE && /api/roles/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996bc90@69ab1abc
(POST && /api/roles/{id}/restore) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996a800@22f10ff6
(GET && /api/roles/{id}/permissions) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996aa18@6ff185a3
(POST && /api/roles/{id}/permissions) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221996ac30@320d98f5
(GET && /api/config) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219970000@3c20af2
(GET && /api/config/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219970218@29e63bc3
(GET && /api/config/key/{configKey}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219970430@4a596fc1
(POST && /api/config) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219970648@144d8c4f
(PUT && /api/config/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219970860@7cb81ae
(DELETE && /api/config/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219970a78@1f6b9ab7
(GET && /api/logs/login) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219970c90@1e4dc9fc
(GET && /api/logs/login/page) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219970ea8@661a018e
(GET && /api/logs/login/count) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199710c0@3d872a12
(GET && /api/logs/login/today/count) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199712d8@7efaa137
(GET && /api/logs/login/recent) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199714f0@e08853d
(GET && /api/logs/login/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219971708@3828f303
(POST && /api/logs/login) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219971920@3c7b89ae
(GET && /api/logs/exception) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219971b38@1723640f
(GET && /api/logs/exception/page) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219971d50@5dc83abb
(GET && /api/logs/exception/count) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219971f68@22876aea
(GET && /api/logs/exception/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219972180@4251b1ed
(POST && /api/logs/exception) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219972398@4edea6b4
(GET && /api/logs/operation) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199725b0@52df4036
(GET && /api/logs/operation/export) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199727c8@4b96b0bd
(GET && /api/logs/operation/page) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199729e0@487befb
(GET && /api/logs/operation/count) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219972bf8@3f5743d9
(GET && /api/logs/operation/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219972e10@17a17af5
(POST && /api/logs/operation) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219973028@694c23e4
(POST && /api/auth/login) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219973240@50853850
(POST && /api/auth/register) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219973458@55c9e012
(POST && /api/auth/logout) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219973670@49235e8c
(GET && /api/stats/overview) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219973888@4178074f
(GET && /api/dict/types) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219973aa0@38c6f088
(GET && /api/dict/types/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219973cb8@22955ef2
(GET && /api/dict/types/type/{dictType}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219973ed0@7111b312
(POST && /api/dict/types) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199740e8@70d28000
(PUT && /api/dict/types/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219974300@7f1f6c22
(DELETE && /api/dict/types/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219974518@77f5cffd
(GET && /api/dict/data) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219974730@b807b32
(GET && /api/dict/data/type/{dictType}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219974948@6f3628c2
(GET && /api/dict/data/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219974b60@6bcc277a
(POST && /api/dict/data) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219974d78@321f97d9
(PUT && /api/dict/data/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219974f90@3a4e3343
(DELETE && /api/dict/data/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199751a8@64e06cf0
(GET && /api/notices) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199753c0@6e9d60e1
(GET && /api/notices/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199755d8@207283b4
(GET && /api/notices/status/{status}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199757f0@6b6d68d2
(POST && /api/notices) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219975a08@c8d0ea3
(PUT && /api/notices/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219975c20@912fdbb
(DELETE && /api/notices/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219975e38@3d49b00e
(GET && /api/messages/user/{userId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219976050@3d62648d
(GET && /api/messages/user/{userId}/page) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219976268@59fe8d94
(GET && /api/messages/user/{userId}/unread) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219976480@479f5c35
(GET && /api/messages/user/{userId}/unread/list) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219976698@37264d08
(GET && /api/messages/user/{userId}/unread/page) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199768b0@194e116d
(POST && /api/messages) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219976ac8@3471bdfd
(PUT && /api/messages/{id}/read) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219976ce0@93231b2
(PUT && /api/messages/user/{userId}/read) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219976ef8@cf97391
(DELETE && /api/messages/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219977110@65d5de1a
(GET && /api/files) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219977328@5cf21908
(GET && /api/files/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219977540@44d51c85
(POST && /api/files/upload) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219977758@3f78a75
(GET && /api/files/{id}/download) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219977970@4819a11f
(GET && /api/files/download/{fileName}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219977b88@46fdb4d
(GET && /api/files/{id}/preview) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219977da0@68b2ce71
(GET && /api/files/preview/{fileName}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219978000@57a94530
(DELETE && /api/files/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219978218@52bd1783
(GET && /api/permissions) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219978430@28f20b2a
(GET && /api/permissions/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219978648@56cd8903
(GET && /api/permissions/code/{code}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219978860@4bd0d62f
(GET && /api/permissions/check-code) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219978a78@71ebd1d9
(GET && /api/permissions/count) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219978c90@49f82f95
(POST && /api/permissions) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219978ea8@73c72238
(PUT && /api/permissions/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199790c0@3e6be3c1
(DELETE && /api/permissions/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199792d8@112188cc
(POST && /api/auth/phone/one-click-login) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199794f0@19ad99fa
(POST && /api/auth/phone/send-code) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219979708@5331be15
(POST && /api/auth/phone/code-login) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219979920@32a53a59
(POST && /api/member/auth/miniapp/login) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219979b38@2f5fb329
(GET && /api/member/auth/mp/callback) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219979d50@5ac88d71
(POST && /api/member/auth/mp/callback) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219979f68@457512b
(GET && /api/member/info) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997a180@1f3bd40a
(PUT && /api/member/info) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997a398@4dafea3f
(POST && /api/member/phone/bind) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997a5b0@531245fe
(GET && /api/member/subscribe/status) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997a7c8@6d7298be
(POST && /api/admin/member/{id}/phone) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997a9e0@2c289a9e
(GET && /api/admin/member/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997abf8@1ee47336
(PUT && /api/admin/member/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997ae10@5f18f8a1
(GET && /api/admin/members) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997b028@26d63c94
(GET && /api/admin/members/all) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997b240@4e42beba
(GET && /api/member-cards/active) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997b458@73021987
(GET && /api/member-cards/{memberCardId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997b670@6bc72ab6
(POST && /api/member-cards) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997b888@7ce299c6
(POST && /api/member-card-records/purchase) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997baa0@278e5f8e
(POST && /api/member-card-records/{recordId}/renew) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997bcb8@44a3b4d9
(POST && /api/member-card-records/{recordId}/use) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997bed0@16e3a461
(POST && /api/member-card-records/{recordId}/refund) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997c0e8@7e2723d2
(GET && /api/member-card-records/my-cards/{memberId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997c300@2b0061b7
(GET && /api/member-card-records/{recordId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997c518@72dc0d72
(POST && /api/member-card-records/process-expired) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997c730@79176fe4
(POST && /api/member-card-transactions) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997c948@3ee9eaa7
(GET && /api/member-card-transactions) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997cb60@164c2914
(GET && /api/member-card-transactions/member/{memberId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997cd78@4690132
(GET && /api/member-card-transactions/card/{cardId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997cf90@46c33614
(GET && /api/member-card-transactions/statistics/deduct/{cardId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997d1a8@378e50b9
(GET && /api/member-card-transactions/statistics/renew) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997d3c0@40fdcbd5
(GET && /api/member-card-transactions/statistics/purchase/{memberId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997d5d8@c512269
(GET && /api/groupCourse/list) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997d7f0@537dc661
(POST && /api/groupCourse/page) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997da08@16b35f2f
(GET && /api/groupCourse/types) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997dc20@383e8d4f
(GET && /api/groupCourse/types/search) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997de38@3df9b24b
(GET && /api/groupCourse/types/categories) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997e050@a355b
(GET && /api/groupCourse/types/category/{category}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997e268@c4c4852
(GET && /api/groupCourse/types/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997e480@4054f861
(POST && /api/groupCourse/types) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997e698@30cf61ca
(PUT && /api/groupCourse/types/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997e8b0@61be2a65
(DELETE && /api/groupCourse/types/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997eac8@f5ee0d8
(GET && /api/groupCourse/labels) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997ece0@68ae86a2
(GET && /api/groupCourse/labels/search) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997eef8@23247b4c
(GET && /api/groupCourse/labels/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997f110@33d9904f
(GET && /api/groupCourse/types/{typeId}/labels) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997f328@4b79eecc
(POST && /api/groupCourse/labels) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997f540@57fefa97
(PUT && /api/groupCourse/labels/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997f758@5700053f
(DELETE && /api/groupCourse/labels/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997f970@28a4ac78
(POST && /api/groupCourse/types/{typeId}/labels) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997fb88@2caf282e
(DELETE && /api/groupCourse/types/{typeId}/labels/{labelId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x000002221997fda0@ca5456e
(DELETE && /api/groupCourse/types/{typeId}/labels) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219980000@5b5b9038
(POST && /api/groupCourse/book) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219980218@56912047
(POST && /api/groupCourse/booking/{bookingId}/cancel) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219980430@32a8ce3
(GET && /api/groupCourse/bookings/member/{memberId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219980648@258227dd
(GET && /api/groupCourse/bookings/course/{courseId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219980860@225fb905
(GET && /api/groupCourse/bookings/{bookingId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219980a78@7d932611
(GET && /api/groupCourse/recommend/list) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219980c90@2a09e0d4
(GET && /api/groupCourse/recommend/active) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219980ea8@1e019687
(GET && /api/groupCourse/recommend/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199810c0@41c983d3
(GET && /api/groupCourse/recommend/course/{courseId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199812d8@250e9655
(POST && /api/groupCourse/recommend) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199814f0@4064cd60
(PUT && /api/groupCourse/recommend/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219981708@5243ce45
(DELETE && /api/groupCourse/recommend/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219981920@5f1908c5
(POST && /api/groupCourse/recommend/{id}/enable) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219981b38@e74914d
(POST && /api/groupCourse/recommend/{id}/disable) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219981d50@689d522e
(GET && /api/groupCourse/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219981f68@24e0989e
(GET && /api/groupCourse/{id}/detail) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219982180@33a8f3e7
(POST && /api/groupCourse) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219982398@19fce226
(PUT && /api/groupCourse/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199825b0@1bf2cf15
(DELETE && /api/groupCourse/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199827c8@3b76809d
(POST && /api/groupCourse/{id}/cancel) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199829e0@4fb56bdf
(POST && /api/groupCourse/signin/{memberId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219982bf8@31a65ddd
(POST && /api/groupCourse/search) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219982e10@3ca1a69b
(POST && /api/checkIn) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219983028@33dcbbfa
(GET && /api/checkIn/qrcode) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219983240@57d3c5cd
(GET && /api/checkIn/records) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219983458@5418225f
(GET && /api/checkIn/records/{id}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219983670@65bcc339
(GET && /api/checkIn/statistics) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219983888@3369a71f
(GET && /api/checkIn/daily-stats) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219983aa0@7adde112
(GET && /api/checkIn/records/export) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219983cb8@6f422ecc
(GET && /api/datacount/summary) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219983ed0@6c648d16
(GET && /api/datacount/member) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199840e8@12cb9eda
(GET && /api/datacount/booking) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219984300@70b38e0
(GET && /api/datacount/signin) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219984518@79414283
(GET && /api/datacount/history) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219984730@31857c80
(GET && /api/datacount/export) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219984948@7ff61924
(POST && /api/payment/create) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219984b60@2164f202
(GET && /api/payment/{orderId}) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219984d78@5242e9f7
(POST && /api/payment/{orderId}/refund) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x0000022219984f90@48b9ee43
(POST && /api/payment/notify) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199851a8@7c9e149
(POST && /api/payment/qrcode/create) -> cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199853c0@1bbf750
2026-06-24T04:39:35.533+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.f.s.s.RouterFunctionMapping      : Mapped (GET && /api/exception-logs) -> cn.novalon.gym.manage.sys.config.ExceptionLogConfig$$Lambda/0x0000022219985a68@4473bbc1
(GET && /api/exception-logs/{id}) -> cn.novalon.gym.manage.sys.config.ExceptionLogConfig$$Lambda/0x0000022219985c80@433f8efa
(GET && /api/exception-logs/username/{username}) -> cn.novalon.gym.manage.sys.config.ExceptionLogConfig$$Lambda/0x0000022219985e98@bb4fc7d
2026-06-24T04:39:35.678+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/webjars/**] onto ResourceWebHandler [classpath [META-INF/resources/webjars/]]
2026-06-24T04:39:35.688+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/**] onto ResourceWebHandler [classpath [META-INF/resources/], classpath [resources/], classpath [static/], classpath [public/]]
2026-06-24T04:39:35.693+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/swagger-ui/**] onto ResourceWebHandler [classpath [META-INF/resources/webjars/swagger-ui/5.32.0/]]
2026-06-24T04:39:35.695+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/swagger-ui/*swagger-initializer.js] onto ResourceWebHandler [classpath [META-INF/resources/webjars/swagger-ui/5.32.0/]]
2026-06-24T04:39:35.696+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/webjars/*swagger-ui/**] onto ResourceWebHandler [classpath [META-INF/resources/webjars/]]
2026-06-24T04:39:35.697+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/webjars/*swagger-ui/*swagger-initializer.js] onto ResourceWebHandler [classpath [META-INF/resources/webjars/]]
2026-06-24T04:39:35.699+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/webjars/*swagger-ui/5.32.0/*swagger-initializer.js] onto ResourceWebHandler [classpath [META-INF/resources/webjars/]]
2026-06-24T04:39:35.703+08:00 DEBUG 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Patterns [/webjars/**, /**, /swagger-ui/**, /swagger-ui/*swagger-initializer.js, /webjars/*swagger-ui/**, /webjars/*swagger-ui/*swagger-initializer.js, /webjars/*swagger-ui/5.32.0/*swagger-initializer.js] in 'resourceHandlerMapping'
2026-06-24T04:39:35.738+08:00 TRACE 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Mapped [/ws] onto cn.novalon.gym.manage.notify.websocket.SysWebSocketHandler@6a022b0e
2026-06-24T04:39:35.743+08:00 DEBUG 7516 --- [gym-manage-api] [           main] o.s.w.r.handler.SimpleUrlHandlerMapping  : Patterns [/ws] in 'webSocketHandlerMapping'
2026-06-24T04:39:36.492+08:00  INFO 7516 --- [gym-manage-api] [           main] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 5 endpoints beneath base path '/actuator'
2026-06-24T04:39:36.651+08:00 DEBUG 7516 --- [gym-manage-api] [           main] o.s.w.r.r.m.a.ControllerMethodResolver   : ControllerAdvice beans: 0 @ModelAttribute, 0 @InitBinder, 2 @ExceptionHandler
2026-06-24T04:39:36.785+08:00 DEBUG 7516 --- [gym-manage-api] [           main] o.s.w.s.adapter.HttpWebHandlerAdapter    : enableLoggingRequestDetails='false': form data and headers will be masked to prevent unsafe logging of potentially sensitive data
2026-06-24T04:39:40.851+08:00  INFO 7516 --- [gym-manage-api] [           main] org.flywaydb.core.FlywayExecutor         : Database: jdbc:postgresql://localhost:55432/manage_system (PostgreSQL 18.4)
2026-06-24T04:39:40.880+08:00  WARN 7516 --- [gym-manage-api] [           main] o.f.c.internal.database.base.Database    : Flyway upgrade recommended: PostgreSQL 18.4 is newer than this version of Flyway and support has not been tested. The latest supported version of PostgreSQL is 17.
2026-06-24T04:39:41.149+08:00  INFO 7516 --- [gym-manage-api] [           main] o.f.core.internal.command.DbMigrate      : Current version of schema "public": 24
2026-06-24T04:39:41.162+08:00  INFO 7516 --- [gym-manage-api] [           main] o.f.core.internal.command.DbMigrate      : Schema "public" is up to date. No migration necessary.
2026-06-24T04:39:42.920+08:00  INFO 7516 --- [gym-manage-api] [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port 8084 (http)
2026-06-24T04:39:42.962+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     : Started ManageApplication in 44.04 seconds (process running for 46.777)
2026-06-24T04:39:43.276+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.g.m.g.initializer.QrCodeInitializer  : ===== 开始检查团课二维码缺失情况 =====
2026-06-24T04:39:43.542+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     : === 检查 IOperationLogService ===
2026-06-24T04:39:43.543+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     : IOperationLogService 实现: cn.novalon.gym.manage.sys.core.service.impl.OperationLogService
2026-06-24T04:39:43.545+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     : === 检查已注册的 WebFilter ===
2026-06-24T04:39:43.546+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     : WebFilter 总数: 4
2026-06-24T04:39:43.548+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     :   - org.springframework.security.web.server.WebFilterChainProxy (Order: 无)
2026-06-24T04:39:43.548+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     :   - cn.novalon.gym.manage.sys.audit.OperationLogWebFilter (Order: 2147483647)
2026-06-24T04:39:43.549+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     :   - cn.novalon.gym.manage.sys.filter.RateLimitFilter (Order: 无)
2026-06-24T04:39:43.550+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     :   - cn.novalon.gym.manage.sys.security.JwtAuthenticationFilter (Order: 无)
2026-06-24T04:39:43.557+08:00  INFO 7516 --- [gym-manage-api] [           main] c.n.gym.manage.app.ManageApplication     : 应用程序启动完成
2026-06-24T04:39:45.053+08:00 DEBUG 7516 --- [gym-manage-api] [actor-tcp-nio-1] o.s.r2dbc.core.DefaultDatabaseClient     : Executing SQL statement [SELECT group_course.course_name, group_course.coach_id, group_course.course_type, group_course.start_time, group_course.end_time, group_course.max_members, group_course.current_members, group_course.status, group_course.location, group_course.cover_image, group_course.description, group_course.point_card_amount, group_course.stored_value_amount, group_course.qr_code_path, group_course.id, group_course.create_by, group_course.update_by, group_course.created_at, group_course.updated_at, group_course.deleted_at FROM group_course WHERE group_course.deleted_at IS NULL]
2026-06-24T04:39:46.087+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.113+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.127+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.131+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.135+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.141+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.149+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.154+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.157+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.159+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.165+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.169+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.187+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.200+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.210+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.214+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.218+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.221+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.226+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.236+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.240+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.243+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.250+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.257+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.259+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.262+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.c.GroupCourseConverter         : 转换bean，entity-domain：
2026-06-24T04:39:46.310+08:00  INFO 7516 --- [gym-manage-api] [actor-tcp-nio-1] c.n.g.m.g.initializer.QrCodeInitializer  : ===== 团课二维码检查完毕，共补全 0 个缺失二维码 =====
2026-06-24T04:40:30.204+08:00 TRACE 7516 --- [gym-manage-api] [nio-8084-exec-1] o.s.w.s.adapter.HttpWebHandlerAdapter    : [5a95aafc] HTTP POST "/api/payment/qrcode/create", headers={masked}
2026-06-24T04:40:30.859+08:00 DEBUG 7516 --- [gym-manage-api] [     parallel-2] o.s.w.s.s.DefaultWebSessionManager       : Created new WebSession.
2026-06-24T04:40:30.919+08:00  INFO 7516 --- [gym-manage-api] [     parallel-2] c.n.g.m.sys.audit.OperationLogWebFilter  : WebFilter 拦截请求: POST /api/payment/qrcode/create
2026-06-24T04:40:30.921+08:00  INFO 7516 --- [gym-manage-api] [     parallel-2] c.n.g.m.sys.audit.OperationLogWebFilter  : 未匹配到操作日志配置，跳过: POST /api/payment/qrcode/create
2026-06-24T04:40:30.945+08:00  INFO 7516 --- [gym-manage-api] [     parallel-2] c.n.g.m.sys.audit.OperationLogWebFilter  : WebFilter 拦截请求: POST /api/payment/qrcode/create
2026-06-24T04:40:30.956+08:00  INFO 7516 --- [gym-manage-api] [     parallel-2] c.n.g.m.sys.audit.OperationLogWebFilter  : 未匹配到操作日志配置，跳过: POST /api/payment/qrcode/create
2026-06-24T04:40:31.063+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.069+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.070+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.072+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.073+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.073+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.078+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/dictionaries" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.079+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.081+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.083+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.084+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.091+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.092+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.093+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.094+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.095+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.096+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/users" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.096+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.101+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.105+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.107+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.108+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/users/{id}/action/change-password" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.109+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.110+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/users/{id}/action/logical-delete" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.111+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.120+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/users/logical-delete" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.134+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.137+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/users/action/restore" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.138+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.142+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/users/{id}/action/restore" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.145+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.148+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.148+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/users/{id}/roles" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.151+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.154+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.166+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.171+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.174+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/menus" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.175+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.176+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.177+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.177+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.179+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.180+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.180+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.181+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.182+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.183+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/roles" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.197+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.221+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.227+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.231+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/roles/{id}/restore" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.233+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.234+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.235+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/roles/{id}/permissions" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.236+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.236+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.237+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.239+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.239+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/config" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.243+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.245+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.246+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.247+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.248+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.249+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.250+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.251+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.252+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.252+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/logs/login" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.267+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.270+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.271+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.273+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.274+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.283+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/logs/exception" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.284+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.286+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.287+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.291+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.295+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.297+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.298+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/logs/operation" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.299+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.303+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/auth/login" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.305+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.306+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/auth/register" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.307+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.309+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/auth/logout" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.310+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.314+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.315+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.315+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.315+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.317+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/dict/types" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.318+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.322+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.333+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.336+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.340+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.342+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.345+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/dict/data" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.346+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.364+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.367+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.370+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.375+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.379+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.380+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/notices" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.382+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.383+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.384+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.392+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.394+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.397+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.399+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.400+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.407+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/messages" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.409+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.411+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.416+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.423+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.430+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.439+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.443+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/files/upload" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.444+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.452+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.455+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.455+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.456+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.457+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.459+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.469+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.478+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.485+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.488+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.489+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/permissions" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.492+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.499+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.505+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.510+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/auth/phone/one-click-login" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.515+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.522+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/auth/phone/send-code" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.523+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.525+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/auth/phone/code-login" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.526+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.528+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member/auth/miniapp/login" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.535+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.537+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.539+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member/auth/mp/callback" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.541+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.550+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.555+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.557+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member/phone/bind" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.569+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.570+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.573+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/admin/member/{id}/phone" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.585+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.591+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.595+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.596+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.598+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.603+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.608+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.608+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member-cards" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.609+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.609+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member-card-records/purchase" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.610+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.614+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member-card-records/{recordId}/renew" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.614+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.616+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member-card-records/{recordId}/use" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.618+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.619+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member-card-records/{recordId}/refund" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.621+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.625+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.629+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.630+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member-card-records/process-expired" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.631+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.632+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/member-card-transactions" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.633+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.634+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.634+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.639+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.640+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.640+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.642+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.642+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.644+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/page" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.644+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.644+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.645+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.646+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.646+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.647+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.647+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/types" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.654+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.657+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.658+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.659+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.661+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.667+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.671+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.673+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/labels" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.674+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.674+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.676+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.678+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/types/{typeId}/labels" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.679+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.679+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.682+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.683+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/book" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.683+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.685+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/booking/{bookingId}/cancel" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.690+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.692+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.694+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.696+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.697+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.697+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.697+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.703+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.705+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/recommend" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.705+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.706+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.709+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.710+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/recommend/{id}/enable" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.717+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.719+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/recommend/{id}/disable" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.720+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.722+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.723+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.724+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.725+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "PUT" does not match against value "POST"
2026-06-24T04:40:31.731+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "DELETE" does not match against value "POST"
2026-06-24T04:40:31.732+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.733+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/{id}/cancel" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.733+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.734+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/signin/{memberId}" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.740+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.741+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/groupCourse/search" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.743+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.744+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/checkIn" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.745+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.747+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.753+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.754+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.755+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.755+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.756+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.757+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.758+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.766+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.772+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.774+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.780+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.785+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/payment/create" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.786+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "GET" does not match against value "POST"
2026-06-24T04:40:31.788+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.795+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/payment/{orderId}/refund" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.797+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.799+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/payment/notify" does not match against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.799+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Method "POST" matches against value "POST"
2026-06-24T04:40:31.804+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.server.RequestPredicates       : Pattern "/api/payment/qrcode/create" matches against value "/api/payment/qrcode/create"
2026-06-24T04:40:31.829+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.function.server.RouterFunctions  : [5a95aafc] Matched (POST && /api/payment/qrcode/create)
2026-06-24T04:40:31.861+08:00 DEBUG 7516 --- [gym-manage-api] [     parallel-2] o.s.w.r.f.s.s.RouterFunctionMapping      : [5a95aafc] Mapped to cn.novalon.gym.manage.app.config.SystemRouter$$Lambda/0x00000222199853c0@1bbf750
2026-06-24T04:40:32.330+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] org.springframework.web.HttpLogging      : [5a95aafc] Decoded [CreatePaymentRequest(memberId=null, orderType=MEMBER_CARD, goodsDesc=购买月卡, transAmt=100, tradeType=QRCODE, remark=会员卡类型ID:1, acctId=null, timeExpire=null, delayAcctFlag=null, feeFlag=null, limitPayType=null, channelNo=null, payScene=null, notifyUrl=null)]
2026-06-24T04:40:32.331+08:00  INFO 7516 --- [gym-manage-api] [     parallel-2] c.n.g.m.payment.handler.PaymentHandler   : [Payment] 创建扫码支付订单: memberId=null, orderType=MEMBER_CARD, goodsDesc=购买月卡, transAmt=100
2026-06-24T04:40:32.359+08:00  INFO 7516 --- [gym-manage-api] [     parallel-2] c.n.g.m.p.s.impl.PaymentServiceImpl      : [Alipay] 扫码支付请求: orderId=20260624044032d77433b4, bizContent={"out_trade_no":"20260624044032d77433b4","total_amount":"0.01","subject":"购买月卡","timeout_express":"30m"}
2026-06-24T04:40:38.905+08:00 ERROR 7516 --- [gym-manage-api] [     parallel-2] sdk.comm.err                             : 2026-06-24 04:40:38^_^alipay.trade.precreate^_^null^_^172.27.254.144^_^Windows Server 2022^_^alipay-sdk-java-4.35.120.ALL^_^https://openapi-sandbox.dl.alipaydev.com/gateway.do?charset=UTF-8&method=alipay.trade.precreate&sign=JpHFUFyV8EXmvqxnUceUpXjuIojp0Q00xLkKTMFB0sLV%2FPJwJc4W7gO7xIp%2BllaLNb5AO1hAz90OA4d59HHR%2FLhZYWpYbDoYZAE8N6025eqFI3X8QcoiCcg3DYXKRNOJ5UKSxbcNnn%2BmRXB%2BBJU9KNkQqlkbmVzAmuaCg%2FDbRT4CYSQYgPs%2FuWYN8LAtarFI6ZuR97O99NR6kpLt%2BZQrWezDEq4NVL%2FMGPIrFkvvVUmry0NOL%2FxkIK0SQRouOTn9qkkW7NJMwevFH%2F99BJNMaTYx9pmec9yULECtkvCSU4KDcnUNTY7mSaS09HmJpBB9mvVLkBFlBCXusYMxij8cNQ%3D%3D&notify_url=http%3A%2F%2Flocalhost%3A8084%2Fapi%2Fpayment%2Fnotify&version=1.0&app_id=9021000164699238&sign_type=RSA2&timestamp=2026-06-24+04%3A40%3A32&alipay_sdk=alipay-sdk-java-4.35.120.ALL&format=json^_^^_^<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html> <head><title>504 Gateway Time-out</title></head> <body bgcolor="white"> <h1>504 Gateway Time-out</h1> <p>The gateway did not receive a timely response from the upstream server or application. Sorry for the inconvenience.<br/> Please report this message and include the following information to us.<br/> Thank you very much!</p> <table> <tr> <td>URL:</td> <td>http://openapi-sandbox.dl.alipaydev.com/gateway.do?charset=UTF-8&amp;method=alipay.trade.precreate&amp;sign=JpHFUFyV8EXmvqxnUceUpXjuIojp0Q00xLkKTMFB0sLV%2FPJwJc4W7gO7xIp%2BllaLNb5AO1hAz90OA4d59HHR%2FLhZYWpYbDoYZAE8N6025eqFI3X8QcoiCcg3DYXKRNOJ5UKSxbcNnn%2BmRXB%2BBJU9KNkQqlkbmVzAmuaCg%2FDbRT4CYSQYgPs%2FuWYN8LAtarFI6ZuR97O99NR6kpLt%2BZQrWezDEq4NVL%2FMGPIrFkvvVUmry0NOL%2FxkIK0SQRouOTn9qkkW7NJMwevFH%2F99BJNMaTYx9pmec9yULECtkvCSU4KDcnUNTY7mSaS09HmJpBB9mvVLkBFlBCXusYMxij8cNQ%3D%3D&amp;notify_url=http%3A%2F%2Flocalhost%3A8084%2Fapi%2Fpayment%2Fnotify&amp;version=1.0&amp;app_id=9021000164699238&amp;sign_type=RSA2&amp;timestamp=2026-06-24+04%3A40%3A32&amp;alipay_sdk=alipay-sdk-java-4.35.120.ALL&amp;format=json</td> </tr> <tr> <td>Server:</td> <td>openapi-59.rz21a.sandbox.alipay.net</td> </tr> <tr> <td>Date:</td> <td>2026/06/24 04:40:38</td> </tr> </table> <hr/>Powered by Tengine </body> </html>
2026-06-24T04:40:38.907+08:00 ERROR 7516 --- [gym-manage-api] [     parallel-2] c.n.g.m.p.s.impl.PaymentServiceImpl      : [Alipay] 扫码支付异常: orderId=20260624044032d77433b4

com.alipay.api.AlipayApiException: java.io.IOException: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
<head><title>504 Gateway Time-out</title></head>
<body bgcolor="white">
<h1>504 Gateway Time-out</h1>
<p>The gateway did not receive a timely response from the upstream server or application. Sorry for the inconvenience.<br/>
Please report this message and include the following information to us.<br/>
Thank you very much!</p>
<table>
<tr>
<td>URL:</td>
<td>http://openapi-sandbox.dl.alipaydev.com/gateway.do?charset=UTF-8&amp;method=alipay.trade.precreate&amp;sign=JpHFUFyV8EXmvqxnUceUpXjuIojp0Q00xLkKTMFB0sLV%2FPJwJc4W7gO7xIp%2BllaLNb5AO1hAz90OA4d59HHR%2FLhZYWpYbDoYZAE8N6025eqFI3X8QcoiCcg3DYXKRNOJ5UKSxbcNnn%2BmRXB%2BBJU9KNkQqlkbmVzAmuaCg%2FDbRT4CYSQYgPs%2FuWYN8LAtarFI6ZuR97O99NR6kpLt%2BZQrWezDEq4NVL%2FMGPIrFkvvVUmry0NOL%2FxkIK0SQRouOTn9qkkW7NJMwevFH%2F99BJNMaTYx9pmec9yULECtkvCSU4KDcnUNTY7mSaS09HmJpBB9mvVLkBFlBCXusYMxij8cNQ%3D%3D&amp;notify_url=http%3A%2F%2Flocalhost%3A8084%2Fapi%2Fpayment%2Fnotify&amp;version=1.0&amp;app_id=9021000164699238&amp;sign_type=RSA2&amp;timestamp=2026-06-24+04%3A40%3A32&amp;alipay_sdk=alipay-sdk-java-4.35.120.ALL&amp;format=json</td>
</tr>
<tr>
<td>Server:</td>
<td>openapi-59.rz21a.sandbox.alipay.net</td>
</tr>
<tr>
<td>Date:</td>
<td>2026/06/24 04:40:38</td>
</tr>
</table>
<hr/>Powered by Tengine
</body>
</html>

        at com.alipay.api.AbstractAlipayClient.doPost(AbstractAlipayClient.java:1014) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at com.alipay.api.AbstractAlipayClient._execute(AbstractAlipayClient.java:921) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at com.alipay.api.AbstractAlipayClient.execute(AbstractAlipayClient.java:395) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at com.alipay.api.AbstractAlipayClient.execute(AbstractAlipayClient.java:377) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at com.alipay.api.AbstractAlipayClient.execute(AbstractAlipayClient.java:372) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at com.alipay.api.AbstractAlipayClient.execute(AbstractAlipayClient.java:366) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at cn.novalon.gym.manage.payment.service.impl.PaymentServiceImpl.alipayQrCodePay(PaymentServiceImpl.java:196) ~[gym-payment-1.0.0.jar!/:1.0.0]
        at cn.novalon.gym.manage.payment.handler.PaymentHandler.lambda$createQrCodePayment$2(PaymentHandler.java:65) ~[gym-payment-1.0.0.jar!/:1.0.0]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:132) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:158) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.onNext(FluxContextWrite.java:107) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onNext(FluxMapFuseable.java:299) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onNext(FluxFilterFuseable.java:337) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$BaseFluxToMonoOperator.completePossiblyEmpty(Operators.java:2096) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoCollect$CollectSubscriber.onComplete(MonoCollect.java:145) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher$State.onAllDataRead(AbstractListenerReadPublisher.java:501) ~[spring-web-6.2.17.jar!/:6.2.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher.handlePendingCompletionOrError(AbstractListenerReadPublisher.java:249) ~[spring-web-6.2.17.jar!/:6.2.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher$State$4.onDataAvailable(AbstractListenerReadPublisher.java:404) ~[spring-web-6.2.17.jar!/:6.2.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher.onDataAvailable(AbstractListenerReadPublisher.java:125) ~[spring-web-6.2.17.jar!/:6.2.17]
        at org.springframework.http.server.reactive.ServletServerHttpRequest$RequestBodyPublisher.checkOnDataAvailable(ServletServerHttpRequest.java:347) ~[spring-web-6.2.17.jar!/:6.2.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher.changeToDemandState(AbstractListenerReadPublisher.java:239) ~[spring-web-6.2.17.jar!/:6.2.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher$State$2.request(AbstractListenerReadPublisher.java:354) ~[spring-web-6.2.17.jar!/:6.2.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher$ReadSubscription.request(AbstractListenerReadPublisher.java:280) ~[spring-web-6.2.17.jar!/:6.2.17]
        at reactor.core.publisher.Operators$BaseFluxToMonoOperator.request(Operators.java:2066) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.request(FluxFilterFuseable.java:411) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.request(FluxMapFuseable.java:360) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.request(FluxContextWrite.java:136) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2366) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onSubscribe(FluxOnErrorResume.java:74) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:117) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.onSubscribe(FluxContextWrite.java:101) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onSubscribe(FluxMapFuseable.java:265) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onSubscribe(FluxFilterFuseable.java:305) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$BaseFluxToMonoOperator.onSubscribe(Operators.java:2050) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher$State$1.subscribe(AbstractListenerReadPublisher.java:322) ~[spring-web-6.2.17.jar!/:6.2.17]
        at org.springframework.http.server.reactive.AbstractListenerReadPublisher.subscribe(AbstractListenerReadPublisher.java:112) ~[spring-web-6.2.17.jar!/:6.2.17]
        at reactor.core.publisher.FluxSource.subscribe(FluxSource.java:71) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:74) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.innerNext(FluxConcatMapNoPrefetch.java:259) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onNext(FluxConcatMap.java:865) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:122) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:200) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:122) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatArray$ConcatArraySubscriber.onNext(FluxConcatArray.java:180) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.innerNext(FluxConcatMapNoPrefetch.java:259) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onNext(FluxConcatMap.java:865) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMap$WeakScalarSubscription.request(FluxConcatMap.java:480) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2330) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.request(FluxConcatMapNoPrefetch.java:339) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatArray$ConcatArraySubscriber.request(FluxConcatArray.java:256) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.request(FluxMap.java:164) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeek$PeekSubscriber.request(FluxPeek.java:138) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.request(FluxMap.java:164) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2330) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.request(FluxConcatMapNoPrefetch.java:339) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2366) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2240) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onSubscribe(MonoNext.java:70) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.onSubscribe(FluxConcatMapNoPrefetch.java:164) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Mono.subscribe(Mono.java:4576) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:205) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap.subscribeOrReturn(MonoFlatMap.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:63) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Mono.subscribe(Mono.java:4576) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onComplete(MonoPeekTerminal.java:299) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onComplete(MonoPeekTerminal.java:299) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:155) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:74) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:113) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onNext(MonoPeekTerminal.java:180) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.onNext(FluxPeekFuseable.java:503) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onNext(MonoPeekTerminal.java:180) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onNext(FluxDefaultIfEmpty.java:122) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.innerNext(FluxConcatMapNoPrefetch.java:259) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onNext(FluxConcatMap.java:865) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:158) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:122) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:113) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:854) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:74) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:113) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.tryEmitScalar(FluxFlatMap.java:492) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.onNext(FluxFlatMap.java:424) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onNext(FluxPeekFuseable.java:210) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:335) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:294) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.request(FluxPeekFuseable.java:144) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:373) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onSubscribe(FluxPeekFuseable.java:178) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Mono.subscribe(Mono.java:4576) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.onNext(FluxConcatMapNoPrefetch.java:207) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:335) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:294) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.innerComplete(FluxConcatMapNoPrefetch.java:275) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onComplete(FluxConcatMap.java:889) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.onComplete(MonoFlatMap.java:189) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onComplete(FluxPeekFuseable.java:940) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:85) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2572) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2366) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2240) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Mono.subscribe(Mono.java:4576) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onComplete(MonoNext.java:102) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:850) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:612) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:592) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.request(FluxFlatMap.java:349) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:186) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2330) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.request(FluxPeekFuseable.java:783) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:186) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.request(FluxMap.java:164) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2330) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.request(FluxConcatMapNoPrefetch.java:339) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.request(FluxDefaultIfEmpty.java:98) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.request(MonoPeekTerminal.java:139) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.request(FluxPeekFuseable.java:437) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.request(MonoPeekTerminal.java:139) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:186) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2366) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2240) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onSubscribe(FluxFilter.java:85) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onSubscribe(MonoPeekTerminal.java:152) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.onSubscribe(FluxPeekFuseable.java:471) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onSubscribe(MonoPeekTerminal.java:152) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$BaseFluxToMonoOperator.onSubscribe(Operators.java:2050) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onSubscribe(MonoNext.java:70) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.onSubscribe(FluxConcatMapNoPrefetch.java:164) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Mono.subscribe(Mono.java:4576) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Mono.subscribe(Mono.java:4576) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onComplete(FluxPeekFuseable.java:940) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:85) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2572) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2366) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2240) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Mono.subscribe(Mono.java:4576) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoNext$NextSubscriber.onComplete(MonoNext.java:102) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:850) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:612) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:592) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:469) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onComplete(FluxPeekFuseable.java:277) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:357) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:294) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.request(FluxPeekFuseable.java:144) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:373) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onSubscribe(FluxPeekFuseable.java:178) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$BaseFluxToMonoOperator.completePossiblyEmpty(Operators.java:2096) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onComplete(FluxDefaultIfEmpty.java:134) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onComplete(FluxMap.java:275) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1865) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoCacheTime$CoordinatorSubscriber.signalCached(MonoCacheTime.java:337) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoCacheTime$CoordinatorSubscriber.onNext(MonoCacheTime.java:354) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:200) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:74) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onNext(FluxPeekFuseable.java:210) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onNext(MonoPeekTerminal.java:180) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.publisher.MonoPublishOn$PublishOnSubscriber.run(MonoPublishOn.java:181) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28) ~[reactor-core-3.7.17.jar!/:3.7.17]
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) ~[na:na]
        at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[na:na]
        at java.base/java.lang.Thread.run(Thread.java:1583) ~[na:na]
Caused by: java.io.IOException: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
<head><title>504 Gateway Time-out</title></head>
<body bgcolor="white">
<h1>504 Gateway Time-out</h1>
<p>The gateway did not receive a timely response from the upstream server or application. Sorry for the inconvenience.<br/>
Please report this message and include the following information to us.<br/>
Thank you very much!</p>
<table>
<tr>
<td>URL:</td>
<td>http://openapi-sandbox.dl.alipaydev.com/gateway.do?charset=UTF-8&amp;method=alipay.trade.precreate&amp;sign=JpHFUFyV8EXmvqxnUceUpXjuIojp0Q00xLkKTMFB0sLV%2FPJwJc4W7gO7xIp%2BllaLNb5AO1hAz90OA4d59HHR%2FLhZYWpYbDoYZAE8N6025eqFI3X8QcoiCcg3DYXKRNOJ5UKSxbcNnn%2BmRXB%2BBJU9KNkQqlkbmVzAmuaCg%2FDbRT4CYSQYgPs%2FuWYN8LAtarFI6ZuR97O99NR6kpLt%2BZQrWezDEq4NVL%2FMGPIrFkvvVUmry0NOL%2FxkIK0SQRouOTn9qkkW7NJMwevFH%2F99BJNMaTYx9pmec9yULECtkvCSU4KDcnUNTY7mSaS09HmJpBB9mvVLkBFlBCXusYMxij8cNQ%3D%3D&amp;notify_url=http%3A%2F%2Flocalhost%3A8084%2Fapi%2Fpayment%2Fnotify&amp;version=1.0&amp;app_id=9021000164699238&amp;sign_type=RSA2&amp;timestamp=2026-06-24+04%3A40%3A32&amp;alipay_sdk=alipay-sdk-java-4.35.120.ALL&amp;format=json</td>
</tr>
<tr>
<td>Server:</td>
<td>openapi-59.rz21a.sandbox.alipay.net</td>
</tr>
<tr>
<td>Date:</td>
<td>2026/06/24 04:40:38</td>
</tr>
</table>
<hr/>Powered by Tengine
</body>
</html>

        at com.alipay.api.internal.util.WebUtils.getResponseAsString(WebUtils.java:520) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at com.alipay.api.internal.util.WebUtils.doPost(WebUtils.java:181) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at com.alipay.api.internal.util.WebUtils.doPost(WebUtils.java:142) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        at com.alipay.api.AbstractAlipayClient.doPost(AbstractAlipayClient.java:1002) ~[alipay-sdk-java-4.35.120.ALL.jar!/:na]
        ... 228 common frames omitted

2026-06-24T04:40:39.163+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] org.springframework.web.HttpLogging      : [5a95aafc] Encoding [ApiResponse(code=500, message=null, data=null)]
2026-06-24T04:40:39.370+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] o.s.w.s.adapter.HttpWebHandlerAdapter    : [5a95aafc] Completed 200 OK, headers={masked}
2026-06-24T04:40:39.374+08:00 TRACE 7516 --- [gym-manage-api] [     parallel-2] org.springframework.web.HttpLogging      : [5a95aafc] onComplete
