feat:通知新增分支参数
This commit is contained in:
@@ -18,14 +18,14 @@ public class ApiChangeNotifier {
|
||||
private final WeComMarkdownSender sender = new WeComMarkdownSender();
|
||||
|
||||
public int sendAll(String webhookUrl, List<EndpointChangeReport> reports,
|
||||
String modifier, String modifyTime, boolean wecomEnabled) {
|
||||
String modifier, String modifyTime, String branch, boolean wecomEnabled) {
|
||||
if (reports == null || reports.isEmpty()) {
|
||||
System.out.println("无 API 变更,不发送通知");
|
||||
return 0;
|
||||
}
|
||||
int sent = 0;
|
||||
for (EndpointChangeReport report : reports) {
|
||||
String markdown = buildMarkdown(report, modifier, modifyTime);
|
||||
String markdown = buildMarkdown(report, modifier, modifyTime, branch);
|
||||
if (wecomEnabled) {
|
||||
if (sender.send(webhookUrl, markdown)) {
|
||||
sent++;
|
||||
@@ -43,20 +43,20 @@ public class ApiChangeNotifier {
|
||||
return sent;
|
||||
}
|
||||
|
||||
public String buildMarkdown(EndpointChangeReport report, String modifier, String modifyTime) {
|
||||
public String buildMarkdown(EndpointChangeReport report, String modifier, String modifyTime, String branch) {
|
||||
ApiChangeKind kind = report.getChangeKind();
|
||||
if (kind == ApiChangeKind.PATH_CHANGED
|
||||
|| kind == ApiChangeKind.NEW_ENDPOINT
|
||||
|| kind == ApiChangeKind.REMOVED_ENDPOINT) {
|
||||
return buildPathMarkdown(report, modifier, modifyTime);
|
||||
return buildPathMarkdown(report, modifier, modifyTime, branch);
|
||||
}
|
||||
if (kind == ApiChangeKind.METHOD_CHANGED) {
|
||||
return buildMethodMarkdown(report, modifier, modifyTime);
|
||||
return buildMethodMarkdown(report, modifier, modifyTime, branch);
|
||||
}
|
||||
return buildParamMarkdown(report, modifier, modifyTime);
|
||||
return buildParamMarkdown(report, modifier, modifyTime, branch);
|
||||
}
|
||||
|
||||
private String buildPathMarkdown(EndpointChangeReport report, String modifier, String modifyTime) {
|
||||
private String buildPathMarkdown(EndpointChangeReport report, String modifier, String modifyTime, String branch) {
|
||||
String changeLabel;
|
||||
switch (report.getChangeKind()) {
|
||||
case NEW_ENDPOINT:
|
||||
@@ -72,10 +72,10 @@ public class ApiChangeNotifier {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("# 【API路径变更通知】").append("\n\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("变更类型", MarkdownStyles.colorWarning(changeLabel))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("路径",
|
||||
MarkdownStyles.colorInfo(MarkdownStyles.safe(report.getSourceFile())))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("修改人", MarkdownStyles.colorComment(modifier))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("时间", MarkdownStyles.colorComment(modifyTime))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("路径", MarkdownStyles.colorInfo(MarkdownStyles.safe(report.getSourceFile())))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("分支", MarkdownStyles.colorComment(branch))).append("\n");
|
||||
sb.append("\n## 【URI变更详情】").append("\n\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("接口说明", formatEndpointDescription(report))).append("\n");
|
||||
appendPathUriLines(sb, report, changeLabel);
|
||||
@@ -103,12 +103,13 @@ public class ApiChangeNotifier {
|
||||
}
|
||||
}
|
||||
|
||||
private String buildMethodMarkdown(EndpointChangeReport report, String modifier, String modifyTime) {
|
||||
private String buildMethodMarkdown(EndpointChangeReport report, String modifier, String modifyTime, String branch) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("# 【API请求方式变更通知】").append("\n\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("变更类型", MarkdownStyles.colorWarning("修改请求方式"))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("路径",
|
||||
MarkdownStyles.colorInfo(MarkdownStyles.safe(report.getSourceFile())))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("分支", MarkdownStyles.colorComment(branch))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("修改人", MarkdownStyles.colorComment(modifier))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("时间", MarkdownStyles.colorComment(modifyTime))).append("\n");
|
||||
sb.append("\n## 【请求方式变更详情】").append("\n\n");
|
||||
@@ -122,7 +123,7 @@ public class ApiChangeNotifier {
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
private String buildParamMarkdown(EndpointChangeReport report, String modifier, String modifyTime) {
|
||||
private String buildParamMarkdown(EndpointChangeReport report, String modifier, String modifyTime, String branch) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("# 【API参数变更通知】").append("\n\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("修改人", MarkdownStyles.colorComment(modifier))).append("\n");
|
||||
@@ -133,6 +134,7 @@ public class ApiChangeNotifier {
|
||||
+ MarkdownStyles.inlineCode(report.getUri()))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("路径",
|
||||
MarkdownStyles.colorInfo(MarkdownStyles.safe(report.getSourceFile())))).append("\n");
|
||||
sb.append(MarkdownStyles.quoteKvBold("分支", MarkdownStyles.colorComment(branch))).append("\n");
|
||||
sb.append("\n## 【接口参数变动详情】").append("\n\n");
|
||||
appendParameterDetails(sb, report);
|
||||
return sb.toString();
|
||||
|
||||
Reference in New Issue
Block a user