From 5b3c996e52c363bf94bfdc08faecb27171afc065 Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Thu, 5 Feb 2026 10:47:50 +0800 Subject: [PATCH 1/3] =?UTF-8?q?feat(dingdingLogin)=20-=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/web/DangerOperationController.java | 14 ++++++++++---- .../src/main/resources/templates/form.html | 15 ++++++++------- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/DangerOperationController.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/DangerOperationController.java index 8e4491b0f..7ef9c6db2 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/DangerOperationController.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/DangerOperationController.java @@ -273,7 +273,8 @@ public class DangerOperationController { // 如果没有配置 AppSecret,则无法进行后续交互 if (!StringUtils.hasText(appSecret)) { - log.error("【dingtalk】DingTalk AppSecret not configured"); + log.info("【dingtalk】DingTalk AppSecret not configured"); + model.addAttribute("isAuthenticated", false); model.addAttribute("authError", "服务端未配置 AppSecret,无法登录"); return "form"; } @@ -297,7 +298,8 @@ public class DangerOperationController { String accessToken = tokenJson.getString("accessToken"); if (!StringUtils.hasText(accessToken)) { - log.error("【dingtalk】Failed to get access token: {}", tokenResponse); + log.info("【dingtalk】Failed to get access token: {}", tokenResponse); + model.addAttribute("isAuthenticated", false); model.addAttribute("authError", "钉钉登录验证失败: 无法获取 AccessToken"); return "form"; } @@ -315,13 +317,16 @@ public class DangerOperationController { String mobile = userJson.getString("mobile"); if (!StringUtils.hasText(mobile)) { - log.error("【dingtalk】Failed to get user info: {}", userInfoResponse); + log.info("【dingtalk】Failed to get user info: {}", userInfoResponse); + model.addAttribute("isAuthenticated", false); model.addAttribute("authError", "钉钉登录验证失败: 无法获取用户手机号"); return "form"; } List users = RpcExternalUtil.rpcApiResultProcessor(() -> thirdPartySyncApi.getUserInfosByPhone(mobile), "查询用户是否存在", mobile); if (CollectionUtils.isEmpty(users)) { + log.info("【dingtalk】Failed to get user info2: {}", JSON.toJSONString(users)); + model.addAttribute("isAuthenticated", false); model.addAttribute("authError", "用户未授权!"); return "form"; } @@ -341,7 +346,8 @@ public class DangerOperationController { return "form"; } catch (Exception e) { - log.error("【dingtalk】DingTalk Callback Error", e); + log.info("【dingtalk】DingTalk Callback Error", e); + model.addAttribute("isAuthenticated", false); model.addAttribute("authError", "登录过程中发生异常: " + e.getMessage()); return "form"; } diff --git a/workflow-engine-server/src/main/resources/templates/form.html b/workflow-engine-server/src/main/resources/templates/form.html index eb8cf992e..35e12a1bb 100644 --- a/workflow-engine-server/src/main/resources/templates/form.html +++ b/workflow-engine-server/src/main/resources/templates/form.html @@ -148,7 +148,8 @@
-
@@ -587,20 +588,20 @@ // 页面加载时检查后端消息 document.addEventListener('DOMContentLoaded', function () { // 检查流程操作的后端消息(使用 Thymeleaf JS 内联语法) - /*[[#{ - if (${message != null}) { + const serverMessage = [[${message}]] || null; + if (serverMessage) { operationMessage.classList.remove('hidden'); - if (${message.startsWith('操作成功')}) { + if (serverMessage.includes('成功')) { operationMessage.className = 'mt-4 p-4 rounded-lg bg-green-50 border border-green-200 text-green-700'; } else { operationMessage.className = 'mt-4 p-4 rounded-lg bg-red-50 border border-red-200 text-red-700'; } - operationMessage.innerHTML = '' + '${message}'; + const iconClass = serverMessage.includes('成功') ? 'fa-check-circle' : 'fa-exclamation-circle'; + operationMessage.innerHTML = `${serverMessage}`; } - }]]*/ // 显示授权错误(如果有) - if (authError && authError.textContent.trim() !== '') { + if (authError && authError.textContent.trim() !== '' && !authError.textContent.includes('${authError}')) { authError.classList.remove('hidden'); } }); From 8f52a0d583f914ace5e5a3d562d2b80441f3ea7c Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Thu, 5 Feb 2026 11:06:44 +0800 Subject: [PATCH 2/3] =?UTF-8?q?feat(dingdingLogin)=20-=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- workflow-engine-server/src/main/resources/templates/form.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow-engine-server/src/main/resources/templates/form.html b/workflow-engine-server/src/main/resources/templates/form.html index 35e12a1bb..78a05cda4 100644 --- a/workflow-engine-server/src/main/resources/templates/form.html +++ b/workflow-engine-server/src/main/resources/templates/form.html @@ -588,8 +588,8 @@ // 页面加载时检查后端消息 document.addEventListener('DOMContentLoaded', function () { // 检查流程操作的后端消息(使用 Thymeleaf JS 内联语法) - const serverMessage = [[${message}]] || null; - if (serverMessage) { + const serverMessage = /*[[${message}]]*/ null; + if (serverMessage && serverMessage !== 'null') { operationMessage.classList.remove('hidden'); if (serverMessage.includes('成功')) { operationMessage.className = 'mt-4 p-4 rounded-lg bg-green-50 border border-green-200 text-green-700'; From eb267a2621d2f20391d5ed077a9d7e7093b896ef Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Mon, 9 Feb 2026 13:47:23 +0800 Subject: [PATCH 3/3] =?UTF-8?q?feat(REQ-7129)=20-=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/templates/form.html | 67 ++++++++++++------- 1 file changed, 42 insertions(+), 25 deletions(-) diff --git a/workflow-engine-server/src/main/resources/templates/form.html b/workflow-engine-server/src/main/resources/templates/form.html index 78a05cda4..10de2d6f6 100644 --- a/workflow-engine-server/src/main/resources/templates/form.html +++ b/workflow-engine-server/src/main/resources/templates/form.html @@ -34,35 +34,53 @@ } - @@ -148,8 +166,7 @@
-