diff --git a/weixin-java-open/src/main/java/me/chanjar/weixin/open/api/WxOpenMaService.java b/weixin-java-open/src/main/java/me/chanjar/weixin/open/api/WxOpenMaService.java index ca11627ba..9e3156a1b 100644 --- a/weixin-java-open/src/main/java/me/chanjar/weixin/open/api/WxOpenMaService.java +++ b/weixin-java-open/src/main/java/me/chanjar/weixin/open/api/WxOpenMaService.java @@ -42,6 +42,11 @@ public interface WxOpenMaService extends WxMaService { */ String API_SET_WEBVIEW_DOMAIN = "https://api.weixin.qq.com/wxa/setwebviewdomain"; + /** + * 获取业务域名校验文件(仅供第三方代小程序调用) + */ + String API_GET_WEBVIEW_DOMAIN_CONFIRM_FILE = "https://api.weixin.qq.com/wxa/get_webviewdomain_confirmfile"; + /** * 获取帐号基本信息 *
@@ -138,10 +143,15 @@ public interface WxOpenMaService extends WxMaService {
   String API_RELEASE = "https://api.weixin.qq.com/wxa/release";
 
   /**
-   * 10. 修改小程序线上代码的可见状态(仅供第三方代小程序调用)
+   * 10.1 修改小程序线上代码的可见状态(仅供第三方代小程序调用)
    */
   String API_CHANGE_VISITSTATUS = "https://api.weixin.qq.com/wxa/change_visitstatus";
 
+  /**
+   * 10.2 查询小程序线上代码的可见状态(仅供第三方代小程序调用)
+   */
+  String API_GET_VISITSTATUS = "https://api.weixin.qq.com/wxa/getvisitstatus";
+
   /**
    * 11.小程序版本回退(仅供第三方代小程序调用)
    */
@@ -315,6 +325,14 @@ public interface WxOpenMaService extends WxMaService {
    */
   WxOpenMaWebDomainResult setWebViewDomainInfo(String action, List domainList) throws WxErrorException;
 
+  /**
+   * 获取业务域名校验文件
+   *
+   * @return 业务域名校验文件信息
+   * @throws WxErrorException 操作失败时抛出,具体错误码请看文档
+   */
+  WxOpenMaDomainConfirmFileResult getWebviewDomainConfirmFile() throws WxErrorException;
+
   /**
    * 获取小程序的信息
    *
@@ -477,7 +495,7 @@ public interface WxOpenMaService extends WxMaService {
   WxOpenResult releaseAudited() throws WxErrorException;
 
   /**
-   * 10. 修改小程序线上代码的可见状态(仅供第三方代小程序调用)
+   * 10.1 修改小程序线上代码的可见状态(仅供第三方代小程序调用)
    *
    * @param action the action
    * @return the wx open result
@@ -485,6 +503,14 @@ public interface WxOpenMaService extends WxMaService {
    */
   WxOpenResult changeVisitStatus(String action) throws WxErrorException;
 
+  /**
+   * 10.2 查询小程序服务状态(仅供第三方代小程序调用)
+   *
+   * @return 小程序服务状态
+   * @throws WxErrorException 查询失败时返回,具体错误码请看此接口的注释文档
+   */
+  WxOpenMaVisitStatusResult getVisitStatus() throws WxErrorException;
+
   /**
    * 11. 小程序版本回退(仅供第三方代小程序调用)
    *
diff --git a/weixin-java-open/src/main/java/me/chanjar/weixin/open/api/impl/WxOpenMaServiceImpl.java b/weixin-java-open/src/main/java/me/chanjar/weixin/open/api/impl/WxOpenMaServiceImpl.java
index faab12503..5c5e6f65e 100644
--- a/weixin-java-open/src/main/java/me/chanjar/weixin/open/api/impl/WxOpenMaServiceImpl.java
+++ b/weixin-java-open/src/main/java/me/chanjar/weixin/open/api/impl/WxOpenMaServiceImpl.java
@@ -120,6 +120,11 @@ public class WxOpenMaServiceImpl extends WxMaServiceImpl implements WxOpenMaServ
     return WxMaGsonBuilder.create().fromJson(response, WxOpenMaWebDomainResult.class);
   }
 
+  @Override
+  public WxOpenMaDomainConfirmFileResult getWebviewDomainConfirmFile() throws WxErrorException {
+    String responseContent = post(API_GET_WEBVIEW_DOMAIN_CONFIRM_FILE, "{}");
+    return WxOpenMaDomainConfirmFileResult.fromJson(responseContent);
+  }
 
   @Override
   public String getAccountBasicInfo() throws WxErrorException {
@@ -255,6 +260,12 @@ public class WxOpenMaServiceImpl extends WxMaServiceImpl implements WxOpenMaServ
     return WxMaGsonBuilder.create().fromJson(response, WxOpenResult.class);
   }
 
+  @Override
+  public WxOpenMaVisitStatusResult getVisitStatus() throws WxErrorException {
+    String responseContent = post(API_GET_VISITSTATUS, "{}");
+    return WxOpenMaVisitStatusResult.fromJson(responseContent);
+  }
+
   @Override
   public WxOpenResult revertCodeRelease() throws WxErrorException {
     String response = get(API_REVERT_CODE_RELEASE, null);
diff --git a/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaDomainConfirmFileResult.java b/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaDomainConfirmFileResult.java
new file mode 100644
index 000000000..595c298f4
--- /dev/null
+++ b/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaDomainConfirmFileResult.java
@@ -0,0 +1,32 @@
+package me.chanjar.weixin.open.bean.result;
+
+import com.google.gson.annotations.SerializedName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import me.chanjar.weixin.common.util.json.WxGsonBuilder;
+
+/**
+ * 业务域名校验文件
+ *
+ * @author vostro2013
+ * @date 2023/06/06
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class WxOpenMaDomainConfirmFileResult extends WxOpenResult {
+  /**
+   * 文件名
+   */
+  @SerializedName("file_name")
+  private String fileName;
+
+  /**
+   * 文件内容
+   */
+  @SerializedName("file_content")
+  private String fileContent;
+
+  public static WxOpenMaDomainConfirmFileResult fromJson(String json) {
+    return WxGsonBuilder.create().fromJson(json, WxOpenMaDomainConfirmFileResult.class);
+  }
+}
\ No newline at end of file
diff --git a/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaDomainResult.java b/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaDomainResult.java
index 86879f7a6..028dd62e2 100644
--- a/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaDomainResult.java
+++ b/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaDomainResult.java
@@ -3,6 +3,7 @@ package me.chanjar.weixin.open.bean.result;
 import com.google.gson.annotations.SerializedName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import me.chanjar.weixin.common.util.json.WxGsonBuilder;
 
 import java.util.List;
 
@@ -17,16 +18,49 @@ import java.util.List;
 public class WxOpenMaDomainResult extends WxOpenResult {
   private static final long serialVersionUID = 3406315629639573330L;
 
+  /**
+   * request合法域名
+   */
   @SerializedName("requestdomain")
-  List requestdomainList;
-
+  private List requestDomain;
+  /**
+   * socket合法域名
+   */
   @SerializedName("wsrequestdomain")
-  List wsrequestdomainList;
-
+  private List wsRequestDomain;
+  /**
+   * uploadFile合法域名
+   */
   @SerializedName("uploaddomain")
-  List uploaddomainList;
-
+  private List uploadDomain;
+  /**
+   * downloadFile合法域名
+   */
   @SerializedName("downloaddomain")
-  List downloaddomainList;
+  private List downloadDomain;
+  /**
+   * request不合法域名
+   */
+  @SerializedName("invalid_requestdomain")
+  private List invalidRequestDomain;
+  /**
+   * socket不合法域名
+   */
+  @SerializedName("invalid_wsrequestdomain")
+  private List invalidWsRequestDomain;
+  /**
+   * uploadFile不合法域名
+   */
+  @SerializedName("invalid_uploaddomain")
+  private List invalidUploadDomain;
+  /**
+   * downloadFile不合法域名
+   */
+  @SerializedName("invalid_downloaddomain")
+  private List invalidDownloadDomain;
+
+  public static WxOpenMaDomainResult fromJson(String json) {
+    return WxGsonBuilder.create().fromJson(json, WxOpenMaDomainResult.class);
+  }
 
 }
diff --git a/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaQueryAuditResult.java b/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaQueryAuditResult.java
index de5167d32..7b50b6e32 100644
--- a/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaQueryAuditResult.java
+++ b/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaQueryAuditResult.java
@@ -35,4 +35,19 @@ public class WxOpenMaQueryAuditResult extends WxOpenResult {
    */
   @SerializedName(value = "screenshot")
   private String screenShot;
+  /**
+   * 审核版本
+   */
+  @SerializedName("user_version")
+  private String userVersion;
+  /**
+   * 版本描述
+   */
+  @SerializedName("user_desc")
+  private String userDesc;
+  /**
+   * 时间戳,提交审核的时间
+   */
+  @SerializedName("submit_audit_time")
+  private Long submitAuditTime;
 }
diff --git a/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaVisitStatusResult.java b/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaVisitStatusResult.java
new file mode 100644
index 000000000..c319e89ac
--- /dev/null
+++ b/weixin-java-open/src/main/java/me/chanjar/weixin/open/bean/result/WxOpenMaVisitStatusResult.java
@@ -0,0 +1,21 @@
+package me.chanjar.weixin.open.bean.result;
+
+import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 小程序服务状态
+ *
+ * @author vostro2013
+ * @date 2023/06/06
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class WxOpenMaVisitStatusResult extends WxOpenResult {
+  private Integer status;
+
+  public static WxOpenMaVisitStatusResult fromJson(String json) {
+    return WxMaGsonBuilder.create().fromJson(json, WxOpenMaVisitStatusResult.class);
+  }
+}
\ No newline at end of file