Prechádzať zdrojové kódy

钉钉消息统一采用markdown

许家凯 4 rokov pred
rodič
commit
9575eeda40

+ 6 - 0
src/main/java/com/winhc/dataworks/flow/touch/bean/DingMsg.java

@@ -22,6 +22,12 @@ import java.time.format.DateTimeFormatter;
 public class DingMsg {
     private static final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
 
+    public static String msg2Md(String msg) {
+        return "#### " + msg +
+                "\n\n" + "> 时间:" + LocalDateTime.now().format(dtf) +
+                "\n\n" + "> 系统信息:" + os();
+    }
+
     public DingMsg(String msgLevel, String project, String flow, String nodeName, String status) {
         this.msgLevel = msgLevel;
         this.project = project;

+ 5 - 1
src/main/java/com/winhc/dataworks/flow/touch/utils/DingUtils.java

@@ -36,7 +36,7 @@ public class DingUtils {
     }
 
     public boolean send(String msg) {
-        return sendByBody(getMsgBody(msg));
+        return sendByBody(getMdBody(msg));
     }
 
     private boolean sendByBody(String body) {
@@ -73,6 +73,10 @@ public class DingUtils {
         return response == null ? "" : response.isSuccessful() ? Objects.requireNonNull(response.body()).string() : "";
     }
 
+    private static String getMdBody(String msg) {
+        return String.format("{\"msgtype\":\"markdown\",\"markdown\":{\"title\":\"%s\",\"text\":\"%s\"}}", "任务通知", DingMsg.msg2Md(msg));
+    }
+
     private static String getMdBody(DingMsg msg) {
         return String.format("{\"msgtype\":\"markdown\",\"markdown\":{\"title\":\"%s\",\"text\":\"%s\"}}", msg.getMsgLevel(), msg.toMd());
     }