mirror of
https://gitee.com/binary/weixin-java-tools.git
synced 2026-03-10 00:13:40 +08:00
#759 增加三方平台代小程序业务接口:代码管理、模板管理、成员管理、发布审核等
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 微信小程序三方平台代上传代码提交额外信息对象
|
||||
* <p>
|
||||
* 如果代码中已经有配置,则配置的合并规则为:除了pages和tabBar.list直接覆盖原配置,其他都为插入或同级覆盖。
|
||||
* </p>
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxMaOpenCommitExtInfo implements Serializable {
|
||||
|
||||
WxMaOpenCommitExtInfo() {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 授权小程序Appid,可填入商户小程序AppID,以区分不同商户
|
||||
*/
|
||||
private String extAppid;
|
||||
|
||||
@SerializedName("ext")
|
||||
private Map<String, Object> extMap;
|
||||
|
||||
@SerializedName("extPages")
|
||||
private Map<String, WxMaOpenPage> extPages;
|
||||
|
||||
/**
|
||||
* 页面路径列表(和app.json结构一致)
|
||||
*/
|
||||
@SerializedName("pages")
|
||||
private List<String> pageList;
|
||||
|
||||
@SerializedName("window")
|
||||
private WxMaOpenWindow window;
|
||||
|
||||
@SerializedName("networkTimeout")
|
||||
private WxMaOpenNetworkTimeout networkTimeout;
|
||||
|
||||
@SerializedName("tabBar")
|
||||
private WxMaOpenTabBar tabBar;
|
||||
|
||||
/**
|
||||
* 添加扩展项
|
||||
*
|
||||
* @param key
|
||||
* @param value
|
||||
*/
|
||||
public void addExt(String key, String value) {
|
||||
if (extMap == null)
|
||||
extMap = new HashMap<>();
|
||||
if (StringUtils.isNoneBlank(key, value))
|
||||
extMap.put(key, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加扩展页面
|
||||
*
|
||||
* @param pagePath
|
||||
* @param page
|
||||
*/
|
||||
public void addExtPage(String pagePath, WxMaOpenPage page) {
|
||||
if (extPages == null)
|
||||
extPages = new HashMap<>();
|
||||
if (StringUtils.isNotBlank(pagePath) && page != null)
|
||||
extPages.put(pagePath, page);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加页面
|
||||
*
|
||||
* @param pagePath
|
||||
*/
|
||||
public void addPage(String pagePath) {
|
||||
if (pageList == null)
|
||||
pageList = new ArrayList<>();
|
||||
if (StringUtils.isNotBlank(pagePath))
|
||||
pageList.add(pagePath);
|
||||
}
|
||||
|
||||
public static WxMaOpenCommitExtInfo INSTANCE() {
|
||||
return new WxMaOpenCommitExtInfo();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxMaOpenNetworkTimeout implements Serializable {
|
||||
|
||||
private Integer request;
|
||||
|
||||
private Integer connectSocket;
|
||||
|
||||
private Integer uploadFile;
|
||||
|
||||
private Integer downloadFile;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxMaOpenPage implements Serializable {
|
||||
private String navigationBarBackgroundColor;
|
||||
private String navigationBarTextStyle;
|
||||
private String navigationBarTitleText;
|
||||
private String backgroundColor;
|
||||
private String backgroundTextStyle;
|
||||
private Boolean enablePullDownRefresh;
|
||||
private Integer onReachBottomDistance;
|
||||
private Boolean disableScroll;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NonNull;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxMaOpenTab implements Serializable {
|
||||
@NonNull
|
||||
private String pagePath;
|
||||
|
||||
@NonNull
|
||||
private String text;
|
||||
private String iconPath;
|
||||
private String selectedIconPath;
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.NonNull;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* tabBar对象
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
public class WxMaOpenTabBar implements Serializable {
|
||||
@NonNull
|
||||
private String color;
|
||||
|
||||
@NonNull
|
||||
private String selectedColor;
|
||||
|
||||
@NonNull
|
||||
private String backgroundColor;
|
||||
|
||||
private String borderStyle;
|
||||
|
||||
@NonNull
|
||||
@SerializedName("list")
|
||||
private List<WxMaOpenTab> tabList;
|
||||
|
||||
private String position;
|
||||
|
||||
/**
|
||||
* 添加tab
|
||||
*
|
||||
* @param text
|
||||
* @param pagePath
|
||||
*/
|
||||
public void addTab(String text, String pagePath) {
|
||||
if (tabList == null)
|
||||
tabList = new ArrayList<>();
|
||||
tabList.add(new WxMaOpenTab(pagePath, text));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* window对象
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxMaOpenWindow implements Serializable {
|
||||
private String navigationBarBackgroundColor;
|
||||
|
||||
private String navigationBarTextStyle;
|
||||
|
||||
private String navigationBarTitleText;
|
||||
|
||||
private String navigationStyle;
|
||||
|
||||
private String backgroundColor;
|
||||
|
||||
private String backgroundTextStyle;
|
||||
|
||||
private String backgroundColorTop;
|
||||
|
||||
private String backgroundColorBottom;
|
||||
|
||||
private Boolean enablePullDownRefresh;
|
||||
|
||||
private Integer onReachBottomDistance;
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import lombok.Data;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* 微信小程序体验二维码参数
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxMaQrcodeParam {
|
||||
|
||||
WxMaQrcodeParam() {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 页面路径
|
||||
*/
|
||||
private String pagePath;
|
||||
|
||||
/**
|
||||
* 页面参数
|
||||
*/
|
||||
private Map<String, String> pageParams;
|
||||
|
||||
/**
|
||||
* 添加页面参数
|
||||
*
|
||||
* @param key
|
||||
* @param value
|
||||
*/
|
||||
public WxMaQrcodeParam addPageParam(String key, String value) {
|
||||
if (StringUtils.isNoneBlank(key, value)) {
|
||||
if (pageParams == null)
|
||||
pageParams = new HashMap<>();
|
||||
pageParams.put(key, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加页面参数
|
||||
*
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
public WxMaQrcodeParam addPageParam(Map<String, String> params) {
|
||||
if (params != null) {
|
||||
if (pageParams == null)
|
||||
pageParams = new HashMap<>();
|
||||
pageParams.putAll(params);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 组装完整的页面请求路径(带参数)
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public String getRequestPath() {
|
||||
if (StringUtils.isNotBlank(getPagePath()) && getPageParams() != null && !getPageParams().isEmpty()) {
|
||||
Set<String> keys = getPageParams().keySet();
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (String key : keys) {
|
||||
sb.append("&").append(key).append("=").append(getPageParams().get(key));
|
||||
}
|
||||
return pagePath + "?" + sb.substring(1);
|
||||
} else {
|
||||
return pagePath;
|
||||
}
|
||||
}
|
||||
|
||||
public static WxMaQrcodeParam create(String pagePath) {
|
||||
WxMaQrcodeParam instance = new WxMaQrcodeParam();
|
||||
instance.setPagePath(pagePath);
|
||||
return instance;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 微信小程序分类目录
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaCategory implements Serializable {
|
||||
|
||||
@SerializedName("first_class")
|
||||
private String firstClass;
|
||||
|
||||
@SerializedName("second_class")
|
||||
private String secondClass;
|
||||
|
||||
@SerializedName("third_class")
|
||||
private String thirdClass;
|
||||
|
||||
@SerializedName("first_id")
|
||||
private Integer firstId;
|
||||
|
||||
@SerializedName("second_id")
|
||||
private Integer secondId;
|
||||
|
||||
@SerializedName("third_id")
|
||||
private Integer thirdId;
|
||||
|
||||
public String toString() {
|
||||
return ToStringBuilder.reflectionToString(this, ToStringStyle.JSON_STYLE);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 微信开放平台小程序成员对象
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/12
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaMember implements Serializable {
|
||||
/**
|
||||
* 人员对应的唯一字符串
|
||||
*/
|
||||
private String userstr;
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
package me.chanjar.weixin.open.bean.ma;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 三方平台提交小程序代码审核
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaSubmitAudit implements Serializable {
|
||||
|
||||
|
||||
/**
|
||||
* 小程序的页面,可通过“获取小程序的第三方提交代码的页面配置”接口获得
|
||||
*/
|
||||
@SerializedName("address")
|
||||
private String pagePath;
|
||||
|
||||
/**
|
||||
* 小程序的标签,多个标签用空格分隔,标签不能多于10个,标签长度不超过20
|
||||
*/
|
||||
@SerializedName("tag")
|
||||
private String tag;
|
||||
|
||||
/**
|
||||
* 类目名称,可通过“获取授权小程序帐号的可选类目”接口获得
|
||||
*/
|
||||
@SerializedName("first_class")
|
||||
private String firstClass;
|
||||
|
||||
@SerializedName("second_class")
|
||||
private String secondClass;
|
||||
|
||||
@SerializedName("third_class")
|
||||
private String thirdClass;
|
||||
|
||||
/**
|
||||
* 类目的ID,可通过“获取授权小程序帐号的可选类目”接口获得
|
||||
*/
|
||||
@SerializedName("first_id")
|
||||
private Integer firstId;
|
||||
|
||||
@SerializedName("second_id")
|
||||
private Integer secondId;
|
||||
|
||||
@SerializedName("third_id")
|
||||
private Integer thirdId;
|
||||
|
||||
/**
|
||||
* 小程序页面的标题,标题长度不超过32
|
||||
*/
|
||||
@SerializedName("title")
|
||||
private String title;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package me.chanjar.weixin.open.bean.message;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
import me.chanjar.weixin.open.bean.ma.WxOpenMaSubmitAudit;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 微信小程序代码包提交审核(仅供第三方开发者代小程序调用)
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/13
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaSubmitAuditMessage implements Serializable {
|
||||
|
||||
@SerializedName("item_list")
|
||||
private List<WxOpenMaSubmitAudit> itemList;
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package me.chanjar.weixin.open.bean.result;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
import me.chanjar.weixin.open.bean.ma.WxOpenMaCategory;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 微信开放平台小程序分类目录列表返回
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/12
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaCategoryListResult implements Serializable {
|
||||
|
||||
private String errcode;
|
||||
private String errmsg;
|
||||
|
||||
@SerializedName("category_list")
|
||||
List<WxOpenMaCategory> categoryList;
|
||||
|
||||
public String toString() {
|
||||
return ToStringBuilder.reflectionToString(this, ToStringStyle.JSON_STYLE);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package me.chanjar.weixin.open.bean.result;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 微信开放平台小程序域名设置返回对象
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/12
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaDomainResult implements Serializable {
|
||||
|
||||
private String errcode;
|
||||
private String errmsg;
|
||||
|
||||
@SerializedName("requestdomain")
|
||||
List<String> requestdomainList;
|
||||
|
||||
@SerializedName("wsrequestdomain")
|
||||
List<String> wsrequestdomainList;
|
||||
|
||||
@SerializedName("uploaddomain")
|
||||
List<String> uploaddomainList;
|
||||
|
||||
@SerializedName("downloaddomain")
|
||||
List<String> downloaddomainList;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package me.chanjar.weixin.open.bean.result;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 微信开放平台小程序第三方提交代码的页面配置列表
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/12
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaPageListResult implements Serializable {
|
||||
|
||||
private String errcode;
|
||||
private String errmsg;
|
||||
|
||||
@SerializedName("page_list")
|
||||
List<String> pageList;
|
||||
|
||||
public String toString() {
|
||||
return ToStringBuilder.reflectionToString(this, ToStringStyle.JSON_STYLE);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package me.chanjar.weixin.open.bean.result;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 微信开放平台小程序发布代码审核结果
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/12
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaSubmitAuditResult implements Serializable {
|
||||
|
||||
private String errcode;
|
||||
private String errmsg;
|
||||
|
||||
/**
|
||||
* 审核编号
|
||||
*/
|
||||
@SerializedName("auditid")
|
||||
Long auditId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package me.chanjar.weixin.open.bean.result;
|
||||
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
import lombok.Data;
|
||||
import me.chanjar.weixin.open.bean.ma.WxOpenMaMember;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 微信开放平台小程序体验者列表返回
|
||||
*
|
||||
* @author yqx
|
||||
* @date 2018/9/12
|
||||
*/
|
||||
@Data
|
||||
public class WxOpenMaTesterListResult implements Serializable {
|
||||
|
||||
private String errcode;
|
||||
private String errmsg;
|
||||
|
||||
@SerializedName("members")
|
||||
List<WxOpenMaMember> membersList;
|
||||
|
||||
public String toString() {
|
||||
return ToStringBuilder.reflectionToString(this, ToStringStyle.JSON_STYLE);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user