Skip to content

Commit f3921c7

Browse files
authored
🆕 #2588 【小程序】代码管理增加查询小程序版本信息的接口
1 parent a88619a commit f3921c7

File tree

5 files changed

+122
-14
lines changed

5 files changed

+122
-14
lines changed

weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaCodeService.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,14 @@ public interface WxMaCodeService {
105105
*/
106106
WxMaCodeVersionDistribution getSupportVersion() throws WxErrorException;
107107

108+
/**
109+
* 查询小程序版本信息
110+
*
111+
* @return 小程序的体验版和线上版本信息
112+
* @throws WxErrorException 失败时抛出,具体错误码请看此接口的注释文档
113+
*/
114+
WxMaCodeVersionInfo getVersionInfo() throws WxErrorException;
115+
108116
/**
109117
* 设置最低基础库版本(仅供第三方代小程序调用).
110118
*

weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaCodeServiceImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,12 @@ public WxMaCodeVersionDistribution getSupportVersion() throws WxErrorException {
138138
return WxMaCodeVersionDistribution.fromJson(responseContent);
139139
}
140140

141+
@Override
142+
public WxMaCodeVersionInfo getVersionInfo() throws WxErrorException {
143+
String responseContent = this.service.post(GET_VERSION_INFO_URL, "{}");
144+
return WxMaCodeVersionInfo.fromJson(responseContent);
145+
}
146+
141147
@Override
142148
public void setSupportVersion(String version) throws WxErrorException {
143149
JsonObject param = new JsonObject();
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
package cn.binarywang.wx.miniapp.bean.code;
2+
3+
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
4+
import com.google.gson.annotations.SerializedName;
5+
import lombok.AllArgsConstructor;
6+
import lombok.Data;
7+
import lombok.NoArgsConstructor;
8+
9+
import java.io.Serializable;
10+
11+
/**
12+
* 查询小程序版本信息
13+
*
14+
* @author <a href="https://github.com/leonxi">LeonXi</a>
15+
* @since 2022-04-13 16:45
16+
*/
17+
@Data
18+
@NoArgsConstructor
19+
@AllArgsConstructor
20+
public class WxMaCodeVersionInfo implements Serializable {
21+
22+
private static final long serialVersionUID = 6929700728659511688L;
23+
24+
/**
25+
* 体验版信息
26+
*/
27+
@SerializedName("exp_info")
28+
private ExpInfo expInfo;
29+
30+
/**
31+
* 线上版信息
32+
*/
33+
@SerializedName("release_info")
34+
private ReleaseInfo releaseInfo;
35+
36+
public static WxMaCodeVersionInfo fromJson(String json) {
37+
return WxMaGsonBuilder.create().fromJson(json, WxMaCodeVersionInfo.class);
38+
}
39+
40+
@Data
41+
@NoArgsConstructor
42+
@AllArgsConstructor
43+
public static class ExpInfo implements Serializable {
44+
45+
private static final long serialVersionUID = 6315578419554592943L;
46+
47+
/**
48+
* 提交体验版的时间
49+
*/
50+
@SerializedName("exp_time")
51+
private Long expTime;
52+
53+
/**
54+
* 体验版版本信息
55+
*/
56+
@SerializedName("exp_version")
57+
private String expVersion;
58+
59+
/**
60+
* 体验版版本描述
61+
*/
62+
@SerializedName("exp_desc")
63+
private String expDesc;
64+
}
65+
66+
@Data
67+
@NoArgsConstructor
68+
@AllArgsConstructor
69+
public static class ReleaseInfo implements Serializable {
70+
71+
private static final long serialVersionUID = 2098307354673939939L;
72+
73+
/**
74+
* 发布线上版的时间
75+
*/
76+
@SerializedName("release_time")
77+
private Long releaseTime;
78+
79+
/**
80+
* 线上版版本信息
81+
*/
82+
@SerializedName("release_version")
83+
private String releaseVersion;
84+
85+
/**
86+
* 线上版本描述
87+
*/
88+
@SerializedName("release_desc")
89+
private String releaseDesc;
90+
}
91+
}

weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/constant/WxMaApiUrlConstants.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ public interface Code {
7070
String GET_SUPPORT_VERSION_URL = "https://api.weixin.qq.com/cgi-bin/wxopen/getweappsupportversion";
7171
String SET_SUPPORT_VERSION_URL = "https://api.weixin.qq.com/cgi-bin/wxopen/setweappsupportversion";
7272
String UNDO_CODE_AUDIT_URL = "https://api.weixin.qq.com/wxa/undocodeaudit";
73+
String GET_VERSION_INFO_URL = "https://api.weixin.qq.com/wxa/getversioninfo";
7374
}
7475

7576
public interface Express {

weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaCodeServiceImplTest.java

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,21 @@
11
package cn.binarywang.wx.miniapp.api.impl;
22

3-
import java.util.Arrays;
4-
import java.util.HashMap;
5-
import java.util.List;
6-
import java.util.Map;
7-
8-
import org.testng.annotations.*;
9-
103
import cn.binarywang.wx.miniapp.api.WxMaCodeService;
114
import cn.binarywang.wx.miniapp.api.WxMaService;
12-
import cn.binarywang.wx.miniapp.bean.code.WxMaCategory;
13-
import cn.binarywang.wx.miniapp.bean.code.WxMaCodeAuditStatus;
14-
import cn.binarywang.wx.miniapp.bean.code.WxMaCodeCommitRequest;
15-
import cn.binarywang.wx.miniapp.bean.code.WxMaCodeExtConfig;
16-
import cn.binarywang.wx.miniapp.bean.code.WxMaCodeSubmitAuditRequest;
17-
import cn.binarywang.wx.miniapp.bean.code.WxMaCodeVersionDistribution;
5+
import cn.binarywang.wx.miniapp.bean.code.*;
186
import cn.binarywang.wx.miniapp.config.WxMaConfig;
197
import cn.binarywang.wx.miniapp.test.ApiTestModule;
208
import com.google.inject.Inject;
9+
import org.testng.annotations.Guice;
10+
import org.testng.annotations.Test;
11+
12+
import java.util.Arrays;
13+
import java.util.HashMap;
14+
import java.util.List;
15+
import java.util.Map;
2116

22-
import static org.testng.Assert.*;
17+
import static org.testng.Assert.assertNotNull;
18+
import static org.testng.Assert.assertTrue;
2319

2420
/**
2521
* @author <a href="https://github.com/charmingoh">Charming</a>
@@ -143,6 +139,12 @@ public void testGetSupportVersion() throws Exception {
143139
System.out.println(distribution);
144140
}
145141

142+
@Test
143+
public void testGetVersionInfo() throws Exception {
144+
WxMaCodeVersionInfo versionInfo = wxService.getCodeService().getVersionInfo();
145+
System.out.println(versionInfo);
146+
}
147+
146148
@Test
147149
public void testSetSupportVersion() throws Exception {
148150
wxService.getCodeService().setSupportVersion("1.2.0");

0 commit comments

Comments
 (0)