From ce109695e79d21dd0a1cbe1ef3a343c2bcb71f01 Mon Sep 17 00:00:00 2001 From: ssls Date: Mon, 3 Aug 2015 17:09:44 +0800 Subject: [PATCH] --- .../chanjar/weixin/common/api/WxConsts.java | 1 + .../weixin/mp/bean/WxMpXmlOutMessage.java | 8 ++++ ...pXmlOutTransferCustomerServiceMessage.java | 41 +++++++++++++++++++ .../TransferCustomerServiceBuilder.java | 19 +++++++++ 4 files changed, 69 insertions(+) create mode 100644 weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpXmlOutTransferCustomerServiceMessage.java create mode 100644 weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/outxmlbuilder/TransferCustomerServiceBuilder.java diff --git a/weixin-java-common/src/main/java/me/chanjar/weixin/common/api/WxConsts.java b/weixin-java-common/src/main/java/me/chanjar/weixin/common/api/WxConsts.java index 454c6f23..80d16638 100644 --- a/weixin-java-common/src/main/java/me/chanjar/weixin/common/api/WxConsts.java +++ b/weixin-java-common/src/main/java/me/chanjar/weixin/common/api/WxConsts.java @@ -29,6 +29,7 @@ public class WxConsts { public static final String CUSTOM_MSG_MUSIC = "music"; public static final String CUSTOM_MSG_NEWS = "news"; public static final String CUSTOM_MSG_FILE = "file"; + public static final String CUSTOM_MSG_TRANSFER_CUSTOMER_SERVICE = "transfer_customer_service"; /////////////////////// // 群发消息的消息类型 diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpXmlOutMessage.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpXmlOutMessage.java index 370d4430..bca8c143 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpXmlOutMessage.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpXmlOutMessage.java @@ -121,4 +121,12 @@ public abstract class WxMpXmlOutMessage implements Serializable { public static NewsBuilder NEWS() { return new NewsBuilder(); } + /** + * 获得客服消息builder + * + * @return + */ + public static TransferCustomerServiceBuilder TRANSFER_CUSTOMER_SERVICE() { + return new TransferCustomerServiceBuilder(); + } } diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpXmlOutTransferCustomerServiceMessage.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpXmlOutTransferCustomerServiceMessage.java new file mode 100644 index 00000000..5783d2b4 --- /dev/null +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/WxMpXmlOutTransferCustomerServiceMessage.java @@ -0,0 +1,41 @@ +package me.chanjar.weixin.mp.bean; + +import com.thoughtworks.xstream.annotations.XStreamAlias; +import com.thoughtworks.xstream.annotations.XStreamConverter; +import me.chanjar.weixin.common.api.WxConsts; +import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; +import me.chanjar.weixin.common.util.xml.XStreamMediaIdConverter; + +@XStreamAlias("xml") +public class WxMpXmlOutTransferCustomerServiceMessage extends WxMpXmlOutMessage { + @XStreamAlias("TransInfo") + protected final TransInfo transInfo = new TransInfo(); + + public WxMpXmlOutTransferCustomerServiceMessage() { + this.msgType = WxConsts.CUSTOM_MSG_TRANSFER_CUSTOMER_SERVICE; + } + + public String getKfAccount() { + return transInfo.getKfAccount(); + } + + public void setKfAccount(String kfAccount) { + transInfo.setKfAccount(kfAccount); + } + + @XStreamAlias("TransInfo") + public static class TransInfo { + + @XStreamAlias("KfAccount") + @XStreamConverter(value=XStreamCDataConverter.class) + private String kfAccount; + + public String getKfAccount() { + return kfAccount; + } + + public void setKfAccount(String kfAccount) { + this.kfAccount = kfAccount; + } + } +} diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/outxmlbuilder/TransferCustomerServiceBuilder.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/outxmlbuilder/TransferCustomerServiceBuilder.java new file mode 100644 index 00000000..5c4a14a3 --- /dev/null +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/outxmlbuilder/TransferCustomerServiceBuilder.java @@ -0,0 +1,19 @@ +package me.chanjar.weixin.mp.bean.outxmlbuilder; + +import me.chanjar.weixin.mp.bean.WxMpXmlOutTransferCustomerServiceMessage; + +/** + * 客服消息builder + *
+ * 用法: WxMpCustomMessage m = WxMpCustomMessage.TEXT().content(...).toUser(...).build();
+ * 
+ * + * @author chanjarster + */ +public final class TransferCustomerServiceBuilder extends BaseBuilder { + public WxMpXmlOutTransferCustomerServiceMessage build() { + WxMpXmlOutTransferCustomerServiceMessage m = new WxMpXmlOutTransferCustomerServiceMessage(); + setCommon(m); + return m; + } +}