使用lombok的@Data注解简化cp模块的所有bean类

This commit is contained in:
Binary Wang
2017-11-14 11:23:18 +08:00
parent e00e7bb0ca
commit 2226149925
16 changed files with 104 additions and 1062 deletions

View File

@@ -1,14 +1,16 @@
package me.chanjar.weixin.cp.bean; package me.chanjar.weixin.cp.bean;
import lombok.Data;
import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder; import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder;
import java.io.Serializable; import java.io.Serializable;
/** /**
* 微信部门 * 微信部门.
* *
* @author Daniel Qian * @author Daniel Qian
*/ */
@Data
public class WxCpDepart implements Serializable { public class WxCpDepart implements Serializable {
private static final long serialVersionUID = -5028321625140879571L; private static final long serialVersionUID = -5028321625140879571L;
@@ -21,49 +23,8 @@ public class WxCpDepart implements Serializable {
return WxCpGsonBuilder.create().fromJson(json, WxCpDepart.class); return WxCpGsonBuilder.create().fromJson(json, WxCpDepart.class);
} }
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public Integer getParentId() {
return this.parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public Long getOrder() {
return this.order;
}
public void setOrder(Long order) {
this.order = order;
}
public String toJson() { public String toJson() {
return WxCpGsonBuilder.create().toJson(this); return WxCpGsonBuilder.create().toJson(this);
} }
@Override
public String toString() {
return "WxCpDepart{" +
"id=" + this.id +
", name='" + this.name + '\'' +
", parentId=" + this.parentId +
", order=" + this.order +
'}';
}
} }

View File

@@ -1,5 +1,6 @@
package me.chanjar.weixin.cp.bean; package me.chanjar.weixin.cp.bean;
import lombok.Data;
import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.cp.bean.article.MpnewsArticle; import me.chanjar.weixin.cp.bean.article.MpnewsArticle;
import me.chanjar.weixin.cp.bean.article.NewArticle; import me.chanjar.weixin.cp.bean.article.NewArticle;
@@ -11,13 +12,14 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
* 消息 * 消息.
* *
* @author Daniel Qian * @author Daniel Qian
*/ */
@Data
public class WxCpMessage implements Serializable { public class WxCpMessage implements Serializable {
private static final long serialVersionUID = -2082278303476631708L; private static final long serialVersionUID = -2082278303476631708L;
private String toUser; private String toUser;
private String toParty; private String toParty;
private String toTag; private String toTag;
@@ -36,104 +38,61 @@ public class WxCpMessage implements Serializable {
private List<MpnewsArticle> mpnewsArticles = new ArrayList<>(); private List<MpnewsArticle> mpnewsArticles = new ArrayList<>();
/** /**
* 获得文本消息builder * 获得文本消息builder.
*/ */
public static TextBuilder TEXT() { public static TextBuilder TEXT() {
return new TextBuilder(); return new TextBuilder();
} }
/** /**
* 获得文本卡片消息builder * 获得文本卡片消息builder.
*/ */
public static TextCardBuilder TEXTCARD() { public static TextCardBuilder TEXTCARD() {
return new TextCardBuilder(); return new TextCardBuilder();
} }
/** /**
* 获得图片消息builder * 获得图片消息builder.
*/ */
public static ImageBuilder IMAGE() { public static ImageBuilder IMAGE() {
return new ImageBuilder(); return new ImageBuilder();
} }
/** /**
* 获得语音消息builder * 获得语音消息builder.
*/ */
public static VoiceBuilder VOICE() { public static VoiceBuilder VOICE() {
return new VoiceBuilder(); return new VoiceBuilder();
} }
/** /**
* 获得视频消息builder * 获得视频消息builder.
*/ */
public static VideoBuilder VIDEO() { public static VideoBuilder VIDEO() {
return new VideoBuilder(); return new VideoBuilder();
} }
/** /**
* 获得图文消息builder * 获得图文消息builder.
*/ */
public static NewsBuilder NEWS() { public static NewsBuilder NEWS() {
return new NewsBuilder(); return new NewsBuilder();
} }
/** /**
* 获得mpnews图文消息builder * 获得mpnews图文消息builder.
*/ */
public static MpnewsBuilder MPNEWS() { public static MpnewsBuilder MPNEWS() {
return new MpnewsBuilder(); return new MpnewsBuilder();
} }
/** /**
* 获得文件消息builder * 获得文件消息builder.
*/ */
public static FileBuilder FILE() { public static FileBuilder FILE() {
return new FileBuilder(); return new FileBuilder();
} }
public List<MpnewsArticle> getMpnewsArticles() {
return mpnewsArticles;
}
public void setMpnewsArticles(List<MpnewsArticle> mpnewsArticles) {
this.mpnewsArticles = mpnewsArticles;
}
public String getToUser() {
return this.toUser;
}
public void setToUser(String toUser) {
this.toUser = toUser;
}
public String getToParty() {
return this.toParty;
}
public void setToParty(String toParty) {
this.toParty = toParty;
}
public String getToTag() {
return this.toTag;
}
public void setToTag(String toTag) {
this.toTag = toTag;
}
public Integer getAgentId() {
return this.agentId;
}
public void setAgentId(Integer agentId) {
this.agentId = agentId;
}
public String getMsgType() {
return this.msgType;
}
/** /**
* <pre> * <pre>
@@ -153,87 +112,8 @@ public class WxCpMessage implements Serializable {
this.msgType = msgType; this.msgType = msgType;
} }
public String getSafe() {
return this.safe;
}
public void setSafe(String safe) {
this.safe = safe;
}
public String getContent() {
return this.content;
}
public void setContent(String content) {
this.content = content;
}
public String getMediaId() {
return this.mediaId;
}
public void setMediaId(String mediaId) {
this.mediaId = mediaId;
}
public String getThumbMediaId() {
return this.thumbMediaId;
}
public void setThumbMediaId(String thumbMediaId) {
this.thumbMediaId = thumbMediaId;
}
public String getTitle() {
return this.title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return this.description;
}
public void setDescription(String description) {
this.description = description;
}
public String getMusicUrl() {
return this.musicUrl;
}
public void setMusicUrl(String musicUrl) {
this.musicUrl = musicUrl;
}
public String getHqMusicUrl() {
return this.hqMusicUrl;
}
public void setHqMusicUrl(String hqMusicUrl) {
this.hqMusicUrl = hqMusicUrl;
}
public List<NewArticle> getArticles() {
return this.articles;
}
public void setArticles(List<NewArticle> articles) {
this.articles = articles;
}
public String toJson() { public String toJson() {
return WxCpGsonBuilder.INSTANCE.create().toJson(this); return WxCpGsonBuilder.INSTANCE.create().toJson(this);
} }
public String getUrl() {
return this.url;
}
public void setUrl(String url) {
this.url = url;
}
} }

View File

@@ -2,21 +2,25 @@ package me.chanjar.weixin.cp.bean;
import com.google.common.base.Splitter; import com.google.common.base.Splitter;
import com.google.gson.annotations.SerializedName; import com.google.gson.annotations.SerializedName;
import lombok.Data;
import me.chanjar.weixin.common.util.ToStringUtils; import me.chanjar.weixin.common.util.ToStringUtils;
import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder; import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import java.io.Serializable;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
/** /**
* <pre> * 消息发送结果对象类.
* 消息发送结果对象类
* Created by Binary Wang on 2017-6-22. * Created by Binary Wang on 2017-6-22.
*
* @author <a href="https://github.com/binarywang">Binary Wang</a> * @author <a href="https://github.com/binarywang">Binary Wang</a>
* </pre>
*/ */
public class WxCpMessageSendResult { @Data
public class WxCpMessageSendResult implements Serializable {
private static final long serialVersionUID = 916455987193190004L;
@Override @Override
public String toString() { public String toString() {
return ToStringUtils.toSimpleString(this); return ToStringUtils.toSimpleString(this);
@@ -41,52 +45,13 @@ public class WxCpMessageSendResult {
@SerializedName("invalidtag") @SerializedName("invalidtag")
private String invalidTag; private String invalidTag;
public Integer getErrCode() {
return this.errCode;
}
public void setErrCode(Integer errCode) {
this.errCode = errCode;
}
public String getErrMsg() {
return this.errMsg;
}
public void setErrMsg(String errMsg) {
this.errMsg = errMsg;
}
public String getInvalidUser() {
return this.invalidUser;
}
public void setInvalidUser(String invalidUser) {
this.invalidUser = invalidUser;
}
public String getInvalidParty() {
return this.invalidParty;
}
public void setInvalidParty(String invalidParty) {
this.invalidParty = invalidParty;
}
public String getInvalidTag() {
return this.invalidTag;
}
public void setInvalidTag(String invalidTag) {
this.invalidTag = invalidTag;
}
public List<String> getInvalidUserList() { public List<String> getInvalidUserList() {
return this.content2List(this.invalidUser); return this.content2List(this.invalidUser);
} }
private List<String> content2List(String content) { private List<String> content2List(String content) {
if(StringUtils.isBlank(content)){ if (StringUtils.isBlank(content)) {
return Collections.emptyList(); return Collections.emptyList();
} }

View File

@@ -1,50 +1,30 @@
package me.chanjar.weixin.cp.bean; package me.chanjar.weixin.cp.bean;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder; import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder;
import java.io.Serializable; import java.io.Serializable;
/** /**
* Created by Daniel Qian * Created by Daniel Qian.
*/ */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class WxCpTag implements Serializable { public class WxCpTag implements Serializable {
private static final long serialVersionUID = -7243320279646928402L; private static final long serialVersionUID = -7243320279646928402L;
private String id; private String id;
private String name; private String name;
public WxCpTag() {
super();
}
public WxCpTag(String id, String name) {
super();
this.id = id;
this.name = name;
}
public static WxCpTag fromJson(String json) { public static WxCpTag fromJson(String json) {
return WxCpGsonBuilder.create().fromJson(json, WxCpTag.class); return WxCpGsonBuilder.create().fromJson(json, WxCpTag.class);
} }
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return this.id;
}
public void setId(String id) {
this.id = id;
}
public String toJson() { public String toJson() {
return WxCpGsonBuilder.create().toJson(this); return WxCpGsonBuilder.create().toJson(this);
} }

View File

@@ -2,21 +2,25 @@ package me.chanjar.weixin.cp.bean;
import com.google.common.base.Splitter; import com.google.common.base.Splitter;
import com.google.gson.annotations.SerializedName; import com.google.gson.annotations.SerializedName;
import lombok.Data;
import me.chanjar.weixin.common.util.ToStringUtils; import me.chanjar.weixin.common.util.ToStringUtils;
import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder; import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import java.io.Serializable;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
/** /**
* <pre> * 为标签添加或移除用户结果对象类.
* 为标签添加或移除用户结果对象类
* Created by Binary Wang on 2017-6-22. * Created by Binary Wang on 2017-6-22.
*
* @author <a href="https://github.com/binarywang">Binary Wang</a> * @author <a href="https://github.com/binarywang">Binary Wang</a>
* </pre>
*/ */
public class WxCpTagAddOrRemoveUsersResult { @Data
public class WxCpTagAddOrRemoveUsersResult implements Serializable {
private static final long serialVersionUID = 1420065684270213578L;
@Override @Override
public String toString() { public String toString() {
return ToStringUtils.toSimpleString(this); return ToStringUtils.toSimpleString(this);
@@ -38,44 +42,12 @@ public class WxCpTagAddOrRemoveUsersResult {
@SerializedName("invalidparty") @SerializedName("invalidparty")
private String[] invalidParty; private String[] invalidParty;
public Integer getErrCode() {
return this.errCode;
}
public void setErrCode(Integer errCode) {
this.errCode = errCode;
}
public String getErrMsg() {
return this.errMsg;
}
public void setErrMsg(String errMsg) {
this.errMsg = errMsg;
}
public String getInvalidUser() {
return this.invalidUsers;
}
public void setInvalidUser(String invalidUser) {
this.invalidUsers = invalidUser;
}
public String[] getInvalidParty() {
return this.invalidParty;
}
public void setInvalidParty(String[] invalidParty) {
this.invalidParty = invalidParty;
}
public List<String> getInvalidUserList() { public List<String> getInvalidUserList() {
return this.content2List(this.invalidUsers); return this.content2List(this.invalidUsers);
} }
private List<String> content2List(String content) { private List<String> content2List(String content) {
if(StringUtils.isBlank(content)){ if (StringUtils.isBlank(content)) {
return Collections.emptyList(); return Collections.emptyList();
} }

View File

@@ -1,5 +1,7 @@
package me.chanjar.weixin.cp.bean; package me.chanjar.weixin.cp.bean;
import lombok.AllArgsConstructor;
import lombok.Data;
import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder; import me.chanjar.weixin.cp.util.json.WxCpGsonBuilder;
import java.io.Serializable; import java.io.Serializable;
@@ -7,12 +9,12 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
* 微信用户信息 * 微信用户信息.
* *
* @author Daniel Qian * @author Daniel Qian
*/ */
@Data
public class WxCpUser implements Serializable { public class WxCpUser implements Serializable {
public enum Gender { public enum Gender {
MALE("", "1"), MALE("", "1"),
FEMAIL("", "2"); FEMAIL("", "2");
@@ -62,159 +64,23 @@ public class WxCpUser implements Serializable {
private String englishName; private String englishName;
private String telephone; private String telephone;
public static WxCpUser fromJson(String json) {
return WxCpGsonBuilder.INSTANCE.create().fromJson(json, WxCpUser.class);
}
public String getUserId() {
return this.userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public Integer[] getDepartIds() {
return this.departIds;
}
public void setDepartIds(Integer[] departIds) {
this.departIds = departIds;
}
public Gender getGender() {
return this.gender;
}
public void setGender(Gender gender) {
this.gender = gender;
}
public String getPosition() {
return this.position;
}
public void setPosition(String position) {
this.position = position;
}
public String getMobile() {
return this.mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getTelephone() {
return this.telephone;
}
public void setTelephone(String telephone) {
this.telephone = telephone;
}
public String getEmail() {
return this.email;
}
public void setEmail(String email) {
this.email = email;
}
public String getAvatar() {
return this.avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
public Integer getStatus() {
return this.status;
}
public void setStatus(Integer status) {
this.status = status;
}
public Integer getEnable() {
return this.enable;
}
public void setEnable(Integer enable) {
this.enable = enable;
}
public void addExtAttr(String name, String value) { public void addExtAttr(String name, String value) {
this.extAttrs.add(new Attr(name, value)); this.extAttrs.add(new Attr(name, value));
} }
public List<Attr> getExtAttrs() { public static WxCpUser fromJson(String json) {
return this.extAttrs; return WxCpGsonBuilder.INSTANCE.create().fromJson(json, WxCpUser.class);
}
public Integer getIsLeader() {
return isLeader;
}
public void setIsLeader(Integer isLeader) {
this.isLeader = isLeader;
}
public Integer getHideMobile() {
return hideMobile;
}
public void setHideMobile(Integer hideMobile) {
this.hideMobile = hideMobile;
}
public String getEnglishName() {
return englishName;
}
public void setEnglishName(String englishName) {
this.englishName = englishName;
} }
public String toJson() { public String toJson() {
return WxCpGsonBuilder.INSTANCE.create().toJson(this); return WxCpGsonBuilder.INSTANCE.create().toJson(this);
} }
@Data
@AllArgsConstructor
public static class Attr { public static class Attr {
private String name; private String name;
private String value; private String value;
public Attr(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return this.value;
}
public void setValue(String value) {
this.value = value;
}
} }
} }

View File

@@ -2,6 +2,7 @@ package me.chanjar.weixin.cp.bean;
import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamConverter; import com.thoughtworks.xstream.annotations.XStreamConverter;
import lombok.Data;
import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.ToStringUtils; import me.chanjar.weixin.common.util.ToStringUtils;
import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; import me.chanjar.weixin.common.util.xml.XStreamCDataConverter;
@@ -28,6 +29,7 @@ import java.util.List;
* @author Daniel Qian * @author Daniel Qian
*/ */
@XStreamAlias("xml") @XStreamAlias("xml")
@Data
public class WxCpXmlMessage implements Serializable { public class WxCpXmlMessage implements Serializable {
private static final long serialVersionUID = -1042994982179476410L; private static final long serialVersionUID = -1042994982179476410L;
@@ -130,28 +132,29 @@ public class WxCpXmlMessage implements Serializable {
// 群发消息返回的结果 // 群发消息返回的结果
/////////////////////////////////////// ///////////////////////////////////////
/** /**
* 群发的结果 * 群发的结果.
*/ */
@XStreamAlias("Status") @XStreamAlias("Status")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String status; private String status;
/** /**
* group_id下粉丝数或者openid_list中的粉丝数 * group_id下粉丝数或者openid_list中的粉丝数.
*/ */
@XStreamAlias("TotalCount") @XStreamAlias("TotalCount")
private Integer totalCount; private Integer totalCount;
/** /**
* 过滤过滤是指特定地区、性别的过滤、用户设置拒收的过滤用户接收已超4条的过滤准备发送的粉丝数原则上filterCount = sentCount + errorCount * 过滤.
* 过滤是指特定地区、性别的过滤、用户设置拒收的过滤用户接收已超4条的过滤准备发送的粉丝数原则上filterCount = sentCount + errorCount
*/ */
@XStreamAlias("FilterCount") @XStreamAlias("FilterCount")
private Integer filterCount; private Integer filterCount;
/** /**
* 发送成功的粉丝数 * 发送成功的粉丝数.
*/ */
@XStreamAlias("SentCount") @XStreamAlias("SentCount")
private Integer sentCount; private Integer sentCount;
/** /**
* 发送失败的粉丝数 * 发送失败的粉丝数.
*/ */
@XStreamAlias("ErrorCount") @XStreamAlias("ErrorCount")
private Integer errorCount; private Integer errorCount;
@@ -176,7 +179,7 @@ public class WxCpXmlMessage implements Serializable {
} }
/** /**
* 从加密字符串转换 * 从加密字符串转换.
*/ */
public static WxCpXmlMessage fromEncryptedXml( public static WxCpXmlMessage fromEncryptedXml(
String encryptedXml, String encryptedXml,
@@ -198,30 +201,6 @@ public class WxCpXmlMessage implements Serializable {
} }
} }
public Integer getAgentId() {
return this.agentId;
}
public void setAgentId(Integer agentId) {
this.agentId = agentId;
}
public String getToUserName() {
return this.toUserName;
}
public void setToUserName(String toUserName) {
this.toUserName = toUserName;
}
public Long getCreateTime() {
return this.createTime;
}
public void setCreateTime(Long createTime) {
this.createTime = createTime;
}
/** /**
* <pre> * <pre>
* 当接受用户消息时,可能会获得以下值: * 当接受用户消息时,可能会获得以下值:
@@ -247,322 +226,54 @@ public class WxCpXmlMessage implements Serializable {
* {@link WxConsts.XmlMsgType#VIDEO} * {@link WxConsts.XmlMsgType#VIDEO}
* {@link WxConsts.XmlMsgType#NEWS} * {@link WxConsts.XmlMsgType#NEWS}
* </pre> * </pre>
*
* @param msgType
*/ */
public void setMsgType(String msgType) { public void setMsgType(String msgType) {
this.msgType = msgType; this.msgType = msgType;
} }
public String getContent() {
return this.content;
}
public void setContent(String content) {
this.content = content;
}
public Long getMsgId() {
return this.msgId;
}
public void setMsgId(Long msgId) {
this.msgId = msgId;
}
public String getPicUrl() {
return this.picUrl;
}
public void setPicUrl(String picUrl) {
this.picUrl = picUrl;
}
public String getMediaId() {
return this.mediaId;
}
public void setMediaId(String mediaId) {
this.mediaId = mediaId;
}
public String getFormat() {
return this.format;
}
public void setFormat(String format) {
this.format = format;
}
public String getThumbMediaId() {
return this.thumbMediaId;
}
public void setThumbMediaId(String thumbMediaId) {
this.thumbMediaId = thumbMediaId;
}
public Double getLocationX() {
return this.locationX;
}
public void setLocationX(Double locationX) {
this.locationX = locationX;
}
public Double getLocationY() {
return this.locationY;
}
public void setLocationY(Double locationY) {
this.locationY = locationY;
}
public Double getScale() {
return this.scale;
}
public void setScale(Double scale) {
this.scale = scale;
}
public String getLabel() {
return this.label;
}
public void setLabel(String label) {
this.label = label;
}
public String getTitle() {
return this.title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return this.description;
}
public void setDescription(String description) {
this.description = description;
}
public String getUrl() {
return this.url;
}
public void setUrl(String url) {
this.url = url;
}
public String getEvent() {
return this.event;
}
public void setEvent(String event) {
this.event = event;
}
public String getEventKey() {
return this.eventKey;
}
public void setEventKey(String eventKey) {
this.eventKey = eventKey;
}
public String getTicket() {
return this.ticket;
}
public void setTicket(String ticket) {
this.ticket = ticket;
}
public Double getLatitude() {
return this.latitude;
}
public void setLatitude(Double latitude) {
this.latitude = latitude;
}
public Double getLongitude() {
return this.longitude;
}
public void setLongitude(Double longitude) {
this.longitude = longitude;
}
public Double getPrecision() {
return this.precision;
}
public void setPrecision(Double precision) {
this.precision = precision;
}
public String getRecognition() {
return this.recognition;
}
public void setRecognition(String recognition) {
this.recognition = recognition;
}
public String getFromUserName() {
return this.fromUserName;
}
public void setFromUserName(String fromUserName) {
this.fromUserName = fromUserName;
}
public String getStatus() {
return this.status;
}
public void setStatus(String status) {
this.status = status;
}
public Integer getTotalCount() {
return this.totalCount;
}
public void setTotalCount(Integer totalCount) {
this.totalCount = totalCount;
}
public Integer getFilterCount() {
return this.filterCount;
}
public void setFilterCount(Integer filterCount) {
this.filterCount = filterCount;
}
public Integer getSentCount() {
return this.sentCount;
}
public void setSentCount(Integer sentCount) {
this.sentCount = sentCount;
}
public Integer getErrorCount() {
return this.errorCount;
}
public void setErrorCount(Integer errorCount) {
this.errorCount = errorCount;
}
public WxCpXmlMessage.ScanCodeInfo getScanCodeInfo() {
return this.scanCodeInfo;
}
public void setScanCodeInfo(WxCpXmlMessage.ScanCodeInfo scanCodeInfo) {
this.scanCodeInfo = scanCodeInfo;
}
public WxCpXmlMessage.SendPicsInfo getSendPicsInfo() {
return this.sendPicsInfo;
}
public void setSendPicsInfo(WxCpXmlMessage.SendPicsInfo sendPicsInfo) {
this.sendPicsInfo = sendPicsInfo;
}
public WxCpXmlMessage.SendLocationInfo getSendLocationInfo() {
return this.sendLocationInfo;
}
public void setSendLocationInfo(WxCpXmlMessage.SendLocationInfo sendLocationInfo) {
this.sendLocationInfo = sendLocationInfo;
}
@Override @Override
public String toString() { public String toString() {
return ToStringUtils.toSimpleString(this); return ToStringUtils.toSimpleString(this);
} }
@Data
@XStreamAlias("ScanCodeInfo") @XStreamAlias("ScanCodeInfo")
public static class ScanCodeInfo { public static class ScanCodeInfo {
/**
* 扫描类型一般是qrcode.
*/
@XStreamAlias("ScanType") @XStreamAlias("ScanType")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String scanType; private String scanType;
/**
* 扫描结果,即二维码对应的字符串信息.
*/
@XStreamAlias("ScanResult") @XStreamAlias("ScanResult")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String scanResult; private String scanResult;
/**
* 扫描类型一般是qrcode
*/
public String getScanType() {
return this.scanType;
}
public void setScanType(String scanType) {
this.scanType = scanType;
}
/**
* 扫描结果,即二维码对应的字符串信息
*/
public String getScanResult() {
return this.scanResult;
}
public void setScanResult(String scanResult) {
this.scanResult = scanResult;
}
} }
@Data
@XStreamAlias("SendPicsInfo") @XStreamAlias("SendPicsInfo")
public static class SendPicsInfo { public static class SendPicsInfo {
@XStreamAlias("PicList") @XStreamAlias("PicList")
protected final List<Item> picList = new ArrayList<>(); protected final List<Item> picList = new ArrayList<>();
@XStreamAlias("Count") @XStreamAlias("Count")
private Long count; private Long count;
public Long getCount() {
return this.count;
}
public void setCount(Long count) {
this.count = count;
}
public List<Item> getPicList() {
return this.picList;
}
@XStreamAlias("item") @XStreamAlias("item")
@Data
public static class Item { public static class Item {
@XStreamAlias("PicMd5Sum") @XStreamAlias("PicMd5Sum")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String PicMd5Sum; private String picMd5Sum;
public String getPicMd5Sum() {
return this.PicMd5Sum;
}
public void setPicMd5Sum(String picMd5Sum) {
this.PicMd5Sum = picMd5Sum;
}
} }
} }
@Data
@XStreamAlias("SendLocationInfo") @XStreamAlias("SendLocationInfo")
public static class SendLocationInfo { public static class SendLocationInfo {
@@ -584,47 +295,8 @@ public class WxCpXmlMessage implements Serializable {
@XStreamAlias("Poiname") @XStreamAlias("Poiname")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String poiname; private String poiName;
public String getLocationX() {
return this.locationX;
}
public void setLocationX(String locationX) {
this.locationX = locationX;
}
public String getLocationY() {
return this.locationY;
}
public void setLocationY(String locationY) {
this.locationY = locationY;
}
public String getScale() {
return this.scale;
}
public void setScale(String scale) {
this.scale = scale;
}
public String getLabel() {
return this.label;
}
public void setLabel(String label) {
this.label = label;
}
public String getPoiname() {
return this.poiname;
}
public void setPoiname(String poiname) {
this.poiname = poiname;
}
} }
} }

View File

@@ -2,10 +2,12 @@ package me.chanjar.weixin.cp.bean;
import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamConverter; import com.thoughtworks.xstream.annotations.XStreamConverter;
import lombok.Data;
import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.XStreamMediaIdConverter; import me.chanjar.weixin.common.util.xml.XStreamMediaIdConverter;
@XStreamAlias("xml") @XStreamAlias("xml")
@Data
public class WxCpXmlOutImageMessage extends WxCpXmlOutMessage { public class WxCpXmlOutImageMessage extends WxCpXmlOutMessage {
private static final long serialVersionUID = -1099446240667237313L; private static final long serialVersionUID = -1099446240667237313L;
@@ -17,12 +19,4 @@ public class WxCpXmlOutImageMessage extends WxCpXmlOutMessage {
this.msgType = WxConsts.XmlMsgType.IMAGE; this.msgType = WxConsts.XmlMsgType.IMAGE;
} }
public String getMediaId() {
return this.mediaId;
}
public void setMediaId(String mediaId) {
this.mediaId = mediaId;
}
} }

View File

@@ -2,6 +2,7 @@ package me.chanjar.weixin.cp.bean;
import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamConverter; import com.thoughtworks.xstream.annotations.XStreamConverter;
import lombok.Data;
import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; import me.chanjar.weixin.common.util.xml.XStreamCDataConverter;
import me.chanjar.weixin.cp.config.WxCpConfigStorage; import me.chanjar.weixin.cp.config.WxCpConfigStorage;
import me.chanjar.weixin.cp.bean.outxmlbuilder.*; import me.chanjar.weixin.cp.bean.outxmlbuilder.*;
@@ -11,8 +12,8 @@ import me.chanjar.weixin.cp.util.xml.XStreamTransformer;
import java.io.Serializable; import java.io.Serializable;
@XStreamAlias("xml") @XStreamAlias("xml")
@Data
public abstract class WxCpXmlOutMessage implements Serializable { public abstract class WxCpXmlOutMessage implements Serializable {
private static final long serialVersionUID = 1418629839964153110L; private static final long serialVersionUID = 1418629839964153110L;
@XStreamAlias("ToUserName") @XStreamAlias("ToUserName")
@@ -31,78 +32,46 @@ public abstract class WxCpXmlOutMessage implements Serializable {
protected String msgType; protected String msgType;
/** /**
* 获得文本消息builder * 获得文本消息builder.
*/ */
public static TextBuilder TEXT() { public static TextBuilder TEXT() {
return new TextBuilder(); return new TextBuilder();
} }
/** /**
* 获得图片消息builder * 获得图片消息builder.
*/ */
public static ImageBuilder IMAGE() { public static ImageBuilder IMAGE() {
return new ImageBuilder(); return new ImageBuilder();
} }
/** /**
* 获得语音消息builder * 获得语音消息builder.
*/ */
public static VoiceBuilder VOICE() { public static VoiceBuilder VOICE() {
return new VoiceBuilder(); return new VoiceBuilder();
} }
/** /**
* 获得视频消息builder * 获得视频消息builder.
*/ */
public static VideoBuilder VIDEO() { public static VideoBuilder VIDEO() {
return new VideoBuilder(); return new VideoBuilder();
} }
/** /**
* 获得图文消息builder * 获得图文消息builder.
*/ */
public static NewsBuilder NEWS() { public static NewsBuilder NEWS() {
return new NewsBuilder(); return new NewsBuilder();
} }
public String getToUserName() {
return this.toUserName;
}
public void setToUserName(String toUserName) {
this.toUserName = toUserName;
}
public String getFromUserName() {
return this.fromUserName;
}
public void setFromUserName(String fromUserName) {
this.fromUserName = fromUserName;
}
public Long getCreateTime() {
return this.createTime;
}
public void setCreateTime(Long createTime) {
this.createTime = createTime;
}
public String getMsgType() {
return this.msgType;
}
public void setMsgType(String msgType) {
this.msgType = msgType;
}
protected String toXml() { protected String toXml() {
return XStreamTransformer.toXml((Class) this.getClass(), this); return XStreamTransformer.toXml((Class) this.getClass(), this);
} }
/** /**
* 转换成加密的xml格式 * 转换成加密的xml格式.
*/ */
public String toEncryptedXml(WxCpConfigStorage wxCpConfigStorage) { public String toEncryptedXml(WxCpConfigStorage wxCpConfigStorage) {
String plainXml = toXml(); String plainXml = toXml();

View File

@@ -2,6 +2,7 @@ package me.chanjar.weixin.cp.bean;
import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamConverter; import com.thoughtworks.xstream.annotations.XStreamConverter;
import lombok.Data;
import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; import me.chanjar.weixin.common.util.xml.XStreamCDataConverter;
@@ -9,11 +10,13 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
@XStreamAlias("xml") @XStreamAlias("xml")
@Data
public class WxCpXmlOutNewsMessage extends WxCpXmlOutMessage { public class WxCpXmlOutNewsMessage extends WxCpXmlOutMessage {
private static final long serialVersionUID = -5796178637883178826L; private static final long serialVersionUID = -5796178637883178826L;
@XStreamAlias("Articles") @XStreamAlias("Articles")
protected final List<Item> articles = new ArrayList<>(); protected final List<Item> articles = new ArrayList<>();
@XStreamAlias("ArticleCount") @XStreamAlias("ArticleCount")
protected int articleCount; protected int articleCount;
@@ -21,72 +24,32 @@ public class WxCpXmlOutNewsMessage extends WxCpXmlOutMessage {
this.msgType = WxConsts.XmlMsgType.NEWS; this.msgType = WxConsts.XmlMsgType.NEWS;
} }
public int getArticleCount() {
return this.articleCount;
}
public void addArticle(Item item) { public void addArticle(Item item) {
this.articles.add(item); this.articles.add(item);
this.articleCount = this.articles.size(); this.articleCount = this.articles.size();
} }
public List<Item> getArticles() {
return this.articles;
}
@XStreamAlias("item") @XStreamAlias("item")
@Data
public static class Item { public static class Item {
@XStreamAlias("Title") @XStreamAlias("Title")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String Title; private String title;
@XStreamAlias("Description") @XStreamAlias("Description")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String Description; private String description;
@XStreamAlias("PicUrl") @XStreamAlias("PicUrl")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String PicUrl; private String picUrl;
@XStreamAlias("Url") @XStreamAlias("Url")
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String Url; private String url;
public String getTitle() {
return this.Title;
}
public void setTitle(String title) {
this.Title = title;
}
public String getDescription() {
return this.Description;
}
public void setDescription(String description) {
this.Description = description;
}
public String getPicUrl() {
return this.PicUrl;
}
public void setPicUrl(String picUrl) {
this.PicUrl = picUrl;
}
public String getUrl() {
return this.Url;
}
public void setUrl(String url) {
this.Url = url;
}
} }
} }

View File

@@ -2,10 +2,12 @@ package me.chanjar.weixin.cp.bean;
import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamConverter; import com.thoughtworks.xstream.annotations.XStreamConverter;
import lombok.Data;
import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; import me.chanjar.weixin.common.util.xml.XStreamCDataConverter;
@XStreamAlias("xml") @XStreamAlias("xml")
@Data
public class WxCpXmlOutTextMessage extends WxCpXmlOutMessage { public class WxCpXmlOutTextMessage extends WxCpXmlOutMessage {
private static final long serialVersionUID = 2569239617185930232L; private static final long serialVersionUID = 2569239617185930232L;
@@ -17,13 +19,4 @@ public class WxCpXmlOutTextMessage extends WxCpXmlOutMessage {
this.msgType = WxConsts.XmlMsgType.TEXT; this.msgType = WxConsts.XmlMsgType.TEXT;
} }
public String getContent() {
return this.content;
}
public void setContent(String content) {
this.content = content;
}
} }

View File

@@ -2,10 +2,12 @@ package me.chanjar.weixin.cp.bean;
import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamConverter; import com.thoughtworks.xstream.annotations.XStreamConverter;
import lombok.Data;
import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; import me.chanjar.weixin.common.util.xml.XStreamCDataConverter;
@XStreamAlias("xml") @XStreamAlias("xml")
@Data
public class WxCpXmlOutVideoMessage extends WxCpXmlOutMessage { public class WxCpXmlOutVideoMessage extends WxCpXmlOutMessage {
private static final long serialVersionUID = -8672761162722733622L; private static final long serialVersionUID = -8672761162722733622L;
@@ -40,7 +42,7 @@ public class WxCpXmlOutVideoMessage extends WxCpXmlOutMessage {
this.video.setDescription(description); this.video.setDescription(description);
} }
@Data
@XStreamAlias("Video") @XStreamAlias("Video")
public static class Video { public static class Video {
@@ -56,30 +58,6 @@ public class WxCpXmlOutVideoMessage extends WxCpXmlOutMessage {
@XStreamConverter(value = XStreamCDataConverter.class) @XStreamConverter(value = XStreamCDataConverter.class)
private String description; private String description;
public String getMediaId() {
return this.mediaId;
}
public void setMediaId(String mediaId) {
this.mediaId = mediaId;
}
public String getTitle() {
return this.title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return this.description;
}
public void setDescription(String description) {
this.description = description;
}
} }
} }

View File

@@ -2,10 +2,12 @@ package me.chanjar.weixin.cp.bean;
import com.thoughtworks.xstream.annotations.XStreamAlias; import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamConverter; import com.thoughtworks.xstream.annotations.XStreamConverter;
import lombok.Data;
import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.api.WxConsts;
import me.chanjar.weixin.common.util.xml.XStreamMediaIdConverter; import me.chanjar.weixin.common.util.xml.XStreamMediaIdConverter;
@XStreamAlias("xml") @XStreamAlias("xml")
@Data
public class WxCpXmlOutVoiceMessage extends WxCpXmlOutMessage { public class WxCpXmlOutVoiceMessage extends WxCpXmlOutMessage {
private static final long serialVersionUID = -7947384031546099340L; private static final long serialVersionUID = -7947384031546099340L;
@@ -17,12 +19,4 @@ public class WxCpXmlOutVoiceMessage extends WxCpXmlOutMessage {
this.msgType = WxConsts.XmlMsgType.VOICE; this.msgType = WxConsts.XmlMsgType.VOICE;
} }
public String getMediaId() {
return this.mediaId;
}
public void setMediaId(String mediaId) {
this.mediaId = mediaId;
}
} }

View File

@@ -1,5 +1,8 @@
package me.chanjar.weixin.cp.bean.article; package me.chanjar.weixin.cp.bean.article;
import lombok.Builder;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
/** /**
@@ -9,6 +12,8 @@ import java.io.Serializable;
* *
* @author Binary Wang * @author Binary Wang
*/ */
@Data
@Builder(builderMethodName = "newBuilder")
public class MpnewsArticle implements Serializable { public class MpnewsArticle implements Serializable {
private static final long serialVersionUID = 6985871812170756481L; private static final long serialVersionUID = 6985871812170756481L;
@@ -20,125 +25,4 @@ public class MpnewsArticle implements Serializable {
private String digest; private String digest;
private String showCoverPic; private String showCoverPic;
private MpnewsArticle(Builder builder) {
setTitle(builder.title);
setThumbMediaId(builder.thumbMediaId);
setAuthor(builder.author);
setContentSourceUrl(builder.contentSourceUrl);
setContent(builder.content);
setDigest(builder.digest);
setShowCoverPic(builder.showCoverPic);
}
public static Builder newBuilder() {
return new Builder();
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getThumbMediaId() {
return thumbMediaId;
}
public void setThumbMediaId(String thumbMediaId) {
this.thumbMediaId = thumbMediaId;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public String getContentSourceUrl() {
return contentSourceUrl;
}
public void setContentSourceUrl(String contentSourceUrl) {
this.contentSourceUrl = contentSourceUrl;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getDigest() {
return digest;
}
public void setDigest(String digest) {
this.digest = digest;
}
public String getShowCoverPic() {
return showCoverPic;
}
public void setShowCoverPic(String showCoverPic) {
this.showCoverPic = showCoverPic;
}
public static final class Builder {
private String title;
private String thumbMediaId;
private String author;
private String contentSourceUrl;
private String content;
private String digest;
private String showCoverPic;
private Builder() {
}
public Builder title(String title) {
this.title = title;
return this;
}
public Builder thumbMediaId(String thumbMediaId) {
this.thumbMediaId = thumbMediaId;
return this;
}
public Builder author(String author) {
this.author = author;
return this;
}
public Builder contentSourceUrl(String contentSourceUrl) {
this.contentSourceUrl = contentSourceUrl;
return this;
}
public Builder content(String content) {
this.content = content;
return this;
}
public Builder digest(String digest) {
this.digest = digest;
return this;
}
public Builder showCoverPic(String showCoverPic) {
this.showCoverPic = showCoverPic;
return this;
}
public MpnewsArticle build() {
return new MpnewsArticle(this);
}
}
} }

View File

@@ -1,5 +1,7 @@
package me.chanjar.weixin.cp.bean.article; package me.chanjar.weixin.cp.bean.article;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
/** /**
@@ -9,6 +11,7 @@ import java.io.Serializable;
* *
* @author Binary Wang * @author Binary Wang
*/ */
@Data
public class NewArticle implements Serializable { public class NewArticle implements Serializable {
private static final long serialVersionUID = 4087852055781140659L; private static final long serialVersionUID = 4087852055781140659L;
@@ -17,36 +20,4 @@ public class NewArticle implements Serializable {
private String url; private String url;
private String picUrl; private String picUrl;
public String getTitle() {
return this.title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return this.description;
}
public void setDescription(String description) {
this.description = description;
}
public String getUrl() {
return this.url;
}
public void setUrl(String url) {
this.url = url;
}
public String getPicUrl() {
return this.picUrl;
}
public void setPicUrl(String picUrl) {
this.picUrl = picUrl;
}
} }

View File

@@ -86,7 +86,7 @@ public class WxCpXmlMessageTest {
assertEquals(wxMessage.getSendLocationInfo().getLocationY(), "113"); assertEquals(wxMessage.getSendLocationInfo().getLocationY(), "113");
assertEquals(wxMessage.getSendLocationInfo().getScale(), "15"); assertEquals(wxMessage.getSendLocationInfo().getScale(), "15");
assertEquals(wxMessage.getSendLocationInfo().getLabel(), " 广州市海珠区客村艺苑路 106号"); assertEquals(wxMessage.getSendLocationInfo().getLabel(), " 广州市海珠区客村艺苑路 106号");
assertEquals(wxMessage.getSendLocationInfo().getPoiname(), "wo de poi"); assertEquals(wxMessage.getSendLocationInfo().getPoiName(), "wo de poi");
} }
public void testSendPicsInfo() { public void testSendPicsInfo() {