Просмотр исходного кода

小程序接口权限查看待完成版

xujunwei 3 лет назад
Родитель
Сommit
5818c254fc

+ 52 - 0
framework-common/src/main/java/com/mrxu/framework/common/xcx/api/PrivacyInterfaceApi.java

@@ -0,0 +1,52 @@
+package com.mrxu.framework.common.xcx.api;
+
+import com.alibaba.fastjson.JSONObject;
+import com.mrxu.framework.common.weixin.base.WxHttp;
+import com.mrxu.framework.common.weixin.base.WxResult;
+import com.mrxu.framework.common.xcx.bean.InterfaceList;
+
+// 隐私接口
+public class PrivacyInterfaceApi {
+
+    // 获取接口状态
+    private static final String get_privacy_interface = "https://api.weixin.qq.com/wxa/security/get_privacy_interface?access_token=";
+
+    // 申请接口
+    private static final String apply_privacy_interface = "https://api.weixin.qq.com/wxa/security/apply_privacy_interface?access_token=";
+
+    /**
+     * https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/2.0/api/apply_api/get_privacy_interface.html
+     * 获取接口列表
+     */
+    public static InterfaceList get(String accessToken) {
+        InterfaceList rs = WxHttp.get(InterfaceList.class,get_privacy_interface+accessToken,null);
+        return rs;
+    }
+
+    /**
+     * https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/2.0/api/apply_api/apply_privacy_interface.html
+     * 申请接口
+     * access_token	string	是	第三方平台接口调用令牌authorizer_access_token
+     * api_name	string	是	申请的 api 英文名,例如wx.choosePoi,严格区分大小写
+     * content	string	是	申请说原因,不超过300个字符;需要以utf-8编码提交,否则会出现审核失败
+     * url_list	string array	否	(辅助网页)例如,上传官网网页链接用于辅助审核
+     * pic_list	string array	否	(辅助图片)填写图片的url ,最多10个
+     * video_list	string array	否	(辅助视频)填写视频的链接 ,最多支持1个;视频格式只支持mp4格式
+     */ 
+    public static WxResult apply(String accessToken,
+                                 String api_name,
+                                 String content,
+                                 String [] url_list,
+                                 String [] pic_list,
+                                 String [] video_list) {
+        JSONObject json = new JSONObject();
+        json.put("api_name", api_name);
+        json.put("content", content);
+        json.put("url_list", url_list);
+        json.put("pic_list", pic_list);
+        json.put("video_list", video_list);
+        WxResult rs = WxHttp.post(WxResult.class,apply_privacy_interface+accessToken,json);
+        return rs;
+    }
+
+}

+ 69 - 0
framework-common/src/main/java/com/mrxu/framework/common/xcx/bean/InterfaceList.java

@@ -0,0 +1,69 @@
+package com.mrxu.framework.common.xcx.bean;
+
+import com.mrxu.framework.common.util.DateFunc;
+import com.mrxu.framework.common.weixin.base.WxResult;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+// 接口列表
+@Data
+public class InterfaceList extends WxResult {
+
+    private List<Interface> interface_list;
+
+    @Data
+    public class Interface {
+        // api 英文名
+        private String api_name;
+        // api 中文名
+        private String api_ch_name;
+        // api描述
+        private String api_desc;
+        // 申请时间 ,该字段发起申请后才会有
+        private Integer apply_time;
+        // 接口状态,该字段发起申请后才会有
+        private Integer status;
+        // 申请单号,该字段发起申请后才会有
+        private Integer audit_id;
+        // 申请被驳回原因或者无权限,该字段申请驳回时才会有
+        private String fail_reason;
+        // api文档链接
+        private String api_link;
+        // 分组名
+        private String group_name;
+
+        // 获取状态描述
+        public String getStatusDes() {
+            if(status.equals(1)) {
+                return "待申请开通";
+            }
+            if(status.equals(2)) {
+                return "无权限";
+            }
+            if(status.equals(3)) {
+                return "申请中";
+            }
+            if(status.equals(4)) {
+                return "申请失败";
+            }
+            if(status.equals(1)) {
+                return "待申请开通";
+            }
+            if(status.equals(5)) {
+                return "已开通";
+            }
+            return "未申请";
+        }
+
+        public String getApplyTime() {
+            if(apply_time == null) {
+                return "未申请";
+            }
+            return DateFunc.getTimeStr(new Date(apply_time*1000));
+        }
+    }
+
+
+}