package jnpf.message.util; import com.alibaba.fastjson.JSONObject; import jnpf.util.JsonUtil; import java.util.LinkedHashMap; import java.util.Map; /** * 菜单消息 f_body_text JSON 载荷工具。 */ public final class MenuMessageUtil { private MenuMessageUtil() { } public static String toJson(String menuUrl, String content) { Map payload = new LinkedHashMap<>(); payload.put("menuUrl", menuUrl == null ? "" : menuUrl); payload.put("content", content == null ? "" : content); return JsonUtil.getObjectToString(payload); } public static String ensureJson(String bodyText) { if (bodyText != null && bodyText.startsWith("{")) { try { JSONObject payload = JSONObject.parseObject(bodyText); if (payload.containsKey("menuUrl") && payload.containsKey("content")) { return bodyText; } } catch (Exception ignored) { // 非菜单消息 JSON 按通知正文处理。 } } return toJson("", bodyText); } }