From d28b5d1161e11a42aeb7b7910927cfd1592ad874 Mon Sep 17 00:00:00 2001 From: chenxing Date: Sat, 3 Oct 2026 16:42:21 +0800 Subject: [PATCH] =?UTF-8?q?feat(embed):=20=E6=96=B0=E5=A2=9E=E5=8A=9E?= =?UTF-8?q?=E4=BB=B6=E8=BF=9B=E5=BA=A6=E5=B5=8C=E5=85=A5=E9=A1=B5=E7=AD=BE?= =?UTF-8?q?=E5=8F=91=E7=AB=AF=E7=82=B9=E4=B8=8E=E5=85=8D=E7=AD=BE=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E7=AB=AF=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/oapi/OapiFlowController.java | 15 +++ .../controller/open/OpenEmbedController.java | 64 ++++++++++ .../yunhai/flowcenter/model/OapiModels.java | 9 ++ .../flowcenter/service/OapiFlowService.java | 45 +++++++ src/main/resources/application.yml | 8 ++ .../flowcenter/oapi/OapiFlowContractIT.java | 110 ++++++++++++++++++ 6 files changed, 251 insertions(+) create mode 100644 src/main/java/com/yunhai/flowcenter/controller/open/OpenEmbedController.java diff --git a/src/main/java/com/yunhai/flowcenter/controller/oapi/OapiFlowController.java b/src/main/java/com/yunhai/flowcenter/controller/oapi/OapiFlowController.java index cd7fd20..efb7627 100644 --- a/src/main/java/com/yunhai/flowcenter/controller/oapi/OapiFlowController.java +++ b/src/main/java/com/yunhai/flowcenter/controller/oapi/OapiFlowController.java @@ -25,6 +25,7 @@ import java.util.List; * - POST /oapi/flow/instance/{instanceId}/withdraw?schId=&submitterId= → data=null(提交人复核后撤回) * - GET /oapi/flow/progress?instanceId=|bizType=&bizId=&schId= → data={status,steps:[…]} * - GET /oapi/flow/diagram/url?instanceId=|flowGuid=&mode=&schId= → data={imgUrl,expiresIn} + * - GET /oapi/flow/embed/url?instanceId=|bizType=&bizId=&mode=&schId= → data={pageUrl,expiresIn} * - POST /oapi/flow/callback/reg?schId= → data={secret} * 应用内审批(2026-09 第三步,原"刻意不提供审批动作"立场由该方案修订:登录身份由调用方 * 应用按其 CAS 会话保证并以 operatorId 传入,本端按任务办理人逐字复核,审计链不断): @@ -89,6 +90,20 @@ public class OapiFlowController { return flowService.diagramUrl(schId, instanceId, flowGuid, mode); } + /** + * 办件进度嵌入页换址(iframe 场景,token 模式与换图同构):pageUrl 为 flow-center 前端 + * 绝对地址,子应用直接放 {@code