diff --git a/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/controller/KsimTestController.java b/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/controller/KsimTestController.java index 4964f79..22970b1 100644 --- a/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/controller/KsimTestController.java +++ b/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/controller/KsimTestController.java @@ -40,6 +40,8 @@ public class KsimTestController { String content = (String) params.getOrDefault("content", ""); String linkUrl = (String) params.getOrDefault("linkUrl", ""); String linkTitle = (String) params.getOrDefault("linkTitle", ""); + String linkOpenMode = (String) params.getOrDefault("linkOpenMode", "Exe"); + String dataFormat = (String) params.getOrDefault("dataFormat", "JsonListView"); Object data = params.get("data"); // --- Step 1: 创建 Token --- @@ -73,15 +75,14 @@ public class KsimTestController { dto.setToUserValue(toUserValue); dto.setTitle(title); dto.setContent(content); - if (data != null) { - dto.setData(data); - } + dto.setData(data != null ? data : new JSONObject()); + dto.setLinkOpenMode(linkOpenMode != null && !linkOpenMode.isEmpty() ? linkOpenMode : "Exe"); + dto.setDataFormat(dataFormat != null && !dataFormat.isEmpty() ? dataFormat : "JsonListView"); if (linkTitle != null && !linkTitle.isEmpty()) { dto.setLinkTitle(linkTitle); } if (linkUrl != null && !linkUrl.isEmpty()) { dto.setLinkUrl(linkUrl); - dto.setLinkOpenMode("Web"); } String msgUrl = host + "/api-open/v1/msg/send"; diff --git a/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/service/IKsimMessageService.java b/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/service/IKsimMessageService.java index f7b33f0..1627e56 100644 --- a/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/service/IKsimMessageService.java +++ b/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/service/IKsimMessageService.java @@ -10,5 +10,5 @@ public interface IKsimMessageService { Result sendMessage(String toUserKeyType, String toUserValue, String title, String content, String linkUrl, String linkTitle, - Object data); + Object data, String linkOpenMode, String dataFormat); } diff --git a/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/service/impl/KsimMessageServiceImpl.java b/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/service/impl/KsimMessageServiceImpl.java index 4ab5eef..d395c77 100644 --- a/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/service/impl/KsimMessageServiceImpl.java +++ b/jeecg-boot-module/jeecg-module-im/src/main/java/org/jeecg/modules/ksim/service/impl/KsimMessageServiceImpl.java @@ -25,7 +25,7 @@ public class KsimMessageServiceImpl implements IKsimMessageService { public Result sendMessage(String toUserKeyType, String toUserValue, String title, String content, String linkUrl, String linkTitle, - Object data) { + Object data, String linkOpenMode, String dataFormat) { String token = tokenManager.getToken(); KsimMsgSendDTO dto = new KsimMsgSendDTO(); @@ -33,13 +33,17 @@ public class KsimMessageServiceImpl implements IKsimMessageService { dto.setToUserValue(toUserValue); dto.setTitle(title); dto.setContent(content); - dto.setData(data); + // data 默认 {} + dto.setData(data != null ? data : new JSONObject()); + // linkOpenMode 默认 "Exe" + dto.setLinkOpenMode(linkOpenMode != null && !linkOpenMode.isEmpty() ? linkOpenMode : "Exe"); + // dataFormat 默认 "JsonListView" + dto.setDataFormat(dataFormat != null && !dataFormat.isEmpty() ? dataFormat : "JsonListView"); if (linkTitle != null && !linkTitle.isEmpty()) { dto.setLinkTitle(linkTitle); } if (linkUrl != null && !linkUrl.isEmpty()) { dto.setLinkUrl(linkUrl); - dto.setLinkOpenMode("Web"); } KsimApiResult apiResult = apiClient.sendMsg(token, dto);