# Conflicts: # weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/AbstractRequestExecutor.java # weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/MediaDownloadRequestExecutor.java # weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/MediaUploadRequestExecutor.java # weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/SimpleGetRequestExecutor.java # weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/SimplePostRequestExecutor.java # weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/impl/jodd/WxMpServiceImpl.java # weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/impl/okhttp/WxMpServiceImpl.java # weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/http/MaterialDeleteRequestExecutor.java # weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/http/MaterialNewsInfoRequestExecutor.java # weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/http/MaterialUploadRequestExecutor.java # weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/http/MaterialVideoInfoRequestExecutor.java # weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/http/MediaImgUploadRequestExecutor.java # weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/http/QrCodeRequestExecutor.javamaster
| @@ -5,7 +5,7 @@ | |||||
| <modelVersion>4.0.0</modelVersion> | <modelVersion>4.0.0</modelVersion> | ||||
| <groupId>com.github.binarywang</groupId> | <groupId>com.github.binarywang</groupId> | ||||
| <artifactId>weixin-java-parent</artifactId> | <artifactId>weixin-java-parent</artifactId> | ||||
| <version>2.7.0-SNAPSHOT</version> | |||||
| <version>2.6.1.BETA</version> | |||||
| <packaging>pom</packaging> | <packaging>pom</packaging> | ||||
| <name>WeiXin Java Tools - Parent</name> | <name>WeiXin Java Tools - Parent</name> | ||||
| <description>微信公众号、企业号上级POM</description> | <description>微信公众号、企业号上级POM</description> | ||||
| @@ -6,7 +6,7 @@ | |||||
| <parent> | <parent> | ||||
| <groupId>com.github.binarywang</groupId> | <groupId>com.github.binarywang</groupId> | ||||
| <artifactId>weixin-java-parent</artifactId> | <artifactId>weixin-java-parent</artifactId> | ||||
| <version>2.7.0-SNAPSHOT</version> | |||||
| <version>2.6.1.BETA</version> | |||||
| </parent> | </parent> | ||||
| <artifactId>weixin-java-common</artifactId> | <artifactId>weixin-java-common</artifactId> | ||||
| @@ -91,6 +91,10 @@ public class WxConsts { | |||||
| public static final String EVT_CARD_PASS_CHECK = "card_pass_check"; | public static final String EVT_CARD_PASS_CHECK = "card_pass_check"; | ||||
| public static final String EVT_CARD_NOT_PASS_CHECK = "card_not_pass_check"; | public static final String EVT_CARD_NOT_PASS_CHECK = "card_not_pass_check"; | ||||
| public static final String EVT_USER_GET_CARD = "user_get_card"; | public static final String EVT_USER_GET_CARD = "user_get_card"; | ||||
| /** | |||||
| * 卡券转赠事件 | |||||
| */ | |||||
| public static final String EVT_USER_GIFTING_CARD = "user_gifting_card"; | |||||
| public static final String EVT_USER_DEL_CARD = "user_del_card"; | public static final String EVT_USER_DEL_CARD = "user_del_card"; | ||||
| public static final String EVT_USER_CONSUME_CARD = "user_consume_card"; | public static final String EVT_USER_CONSUME_CARD = "user_consume_card"; | ||||
| public static final String EVT_USER_PAY_FROM_PAY_CELL = "user_pay_from_pay_cell"; | public static final String EVT_USER_PAY_FROM_PAY_CELL = "user_pay_from_pay_cell"; | ||||
| @@ -101,7 +105,8 @@ public class WxConsts { | |||||
| public static final String EVT_KF_CLOSE_SESSION = "kf_close_session"; // 客服关闭会话 | public static final String EVT_KF_CLOSE_SESSION = "kf_close_session"; // 客服关闭会话 | ||||
| public static final String EVT_KF_SWITCH_SESSION = "kf_switch_session"; // 客服转接会话 | public static final String EVT_KF_SWITCH_SESSION = "kf_switch_session"; // 客服转接会话 | ||||
| public static final String EVT_POI_CHECK_NOTIFY = "poi_check_notify"; //门店审核事件推送 | public static final String EVT_POI_CHECK_NOTIFY = "poi_check_notify"; //门店审核事件推送 | ||||
| public static final String EVN_SUBMIT_MEMBERCARD_USER_INFO = "submit_membercard_user_info"; //接收会员信息事件推送 | |||||
| public static final String EVT_SUBMIT_MEMBERCARD_USER_INFO = "submit_membercard_user_info"; //接收会员信息事件推送 | |||||
| //以下为微信认证事件 | //以下为微信认证事件 | ||||
| /** | /** | ||||
| * 资质认证成功 | * 资质认证成功 | ||||
| @@ -185,7 +190,7 @@ public class WxConsts { | |||||
| * 跳转图文消息URL | * 跳转图文消息URL | ||||
| */ | */ | ||||
| public static final String BUTTON_VIEW_LIMITED = "view_limited"; | public static final String BUTTON_VIEW_LIMITED = "view_limited"; | ||||
| /** | /** | ||||
| * 不弹出授权页面,直接跳转,只能获取用户openid | * 不弹出授权页面,直接跳转,只能获取用户openid | ||||
| */ | */ | ||||
| @@ -6,7 +6,7 @@ | |||||
| <parent> | <parent> | ||||
| <groupId>com.github.binarywang</groupId> | <groupId>com.github.binarywang</groupId> | ||||
| <artifactId>weixin-java-parent</artifactId> | <artifactId>weixin-java-parent</artifactId> | ||||
| <version>2.7.0-SNAPSHOT</version> | |||||
| <version>2.6.1.BETA</version> | |||||
| </parent> | </parent> | ||||
| <artifactId>weixin-java-cp</artifactId> | <artifactId>weixin-java-cp</artifactId> | ||||
| @@ -8,8 +8,8 @@ import me.chanjar.weixin.common.util.http.HttpType; | |||||
| import me.chanjar.weixin.common.util.http.apache.ApacheHttpClientBuilder; | import me.chanjar.weixin.common.util.http.apache.ApacheHttpClientBuilder; | ||||
| import me.chanjar.weixin.common.util.http.apache.DefaultApacheHttpClientBuilder; | import me.chanjar.weixin.common.util.http.apache.DefaultApacheHttpClientBuilder; | ||||
| import me.chanjar.weixin.cp.api.WxCpConfigStorage; | import me.chanjar.weixin.cp.api.WxCpConfigStorage; | ||||
| import me.chanjar.weixin.cp.api.impl.AbstractWxCpServiceImpl; | |||||
| import me.chanjar.weixin.cp.api.impl.AbstractWxCpServiceImpl; | |||||
| import org.apache.http.HttpHost; | import org.apache.http.HttpHost; | ||||
| import org.apache.http.client.config.RequestConfig; | import org.apache.http.client.config.RequestConfig; | ||||
| import org.apache.http.client.methods.CloseableHttpResponse; | import org.apache.http.client.methods.CloseableHttpResponse; | ||||
| @@ -6,7 +6,7 @@ | |||||
| <parent> | <parent> | ||||
| <groupId>com.github.binarywang</groupId> | <groupId>com.github.binarywang</groupId> | ||||
| <artifactId>weixin-java-parent</artifactId> | <artifactId>weixin-java-parent</artifactId> | ||||
| <version>2.7.0-SNAPSHOT</version> | |||||
| <version>2.6.1.BETA</version> | |||||
| </parent> | </parent> | ||||
| <artifactId>weixin-java-mp</artifactId> | <artifactId>weixin-java-mp</artifactId> | ||||
| <name>WeiXin Java Tools - MP</name> | <name>WeiXin Java Tools - MP</name> | ||||
| @@ -12,7 +12,6 @@ public interface WxMpCardService { | |||||
| /** | /** | ||||
| * 得到WxMpService | * 得到WxMpService | ||||
| * @return | |||||
| */ | */ | ||||
| WxMpService getWxMpService(); | WxMpService getWxMpService(); | ||||
| @@ -20,7 +19,6 @@ public interface WxMpCardService { | |||||
| * 获得卡券api_ticket,不强制刷新卡券api_ticket | * 获得卡券api_ticket,不强制刷新卡券api_ticket | ||||
| * | * | ||||
| * @return 卡券api_ticket | * @return 卡券api_ticket | ||||
| * @throws WxErrorException | |||||
| * @see #getCardApiTicket(boolean) | * @see #getCardApiTicket(boolean) | ||||
| */ | */ | ||||
| String getCardApiTicket() throws WxErrorException; | String getCardApiTicket() throws WxErrorException; | ||||
| @@ -34,10 +34,6 @@ public class WxMpCardServiceImpl implements WxMpCardService { | |||||
| this.wxMpService = wxMpService; | this.wxMpService = wxMpService; | ||||
| } | } | ||||
| /** | |||||
| * 得到WxMpService | |||||
| * @return | |||||
| */ | |||||
| @Override | @Override | ||||
| public WxMpService getWxMpService(){ | public WxMpService getWxMpService(){ | ||||
| return this.wxMpService; | return this.wxMpService; | ||||
| @@ -0,0 +1,50 @@ | |||||
| package me.chanjar.weixin.mp.bean.message; | |||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | |||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | |||||
| import me.chanjar.weixin.common.util.ToStringUtils; | |||||
| import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | |||||
| /** | |||||
| * <pre> | |||||
| * Created by BinaryWang on 2017/5/4. | |||||
| * </pre> | |||||
| * | |||||
| * @author Binary Wang | |||||
| */ | |||||
| @XStreamAlias("HardWare") | |||||
| public class HardWare { | |||||
| /** | |||||
| * 消息展示,目前支持myrank(排行榜) | |||||
| */ | |||||
| @XStreamAlias("MessageView") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String messageView; | |||||
| /** | |||||
| * 消息点击动作,目前支持ranklist(点击跳转排行榜) | |||||
| */ | |||||
| @XStreamAlias("MessageAction") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String messageAction; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| public String getMessageView() { | |||||
| return messageView; | |||||
| } | |||||
| public void setMessageView(String messageView) { | |||||
| this.messageView = messageView; | |||||
| } | |||||
| public String getMessageAction() { | |||||
| return messageAction; | |||||
| } | |||||
| public void setMessageAction(String messageAction) { | |||||
| this.messageAction = messageAction; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,52 @@ | |||||
| package me.chanjar.weixin.mp.bean.message; | |||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | |||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | |||||
| import me.chanjar.weixin.common.util.ToStringUtils; | |||||
| import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | |||||
| /** | |||||
| * <pre> | |||||
| * Created by BinaryWang on 2017/5/4. | |||||
| * </pre> | |||||
| * | |||||
| * @author Binary Wang | |||||
| */ | |||||
| @XStreamAlias("ScanCodeInfo") | |||||
| public class ScanCodeInfo { | |||||
| @XStreamAlias("ScanType") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String scanType; | |||||
| @XStreamAlias("ScanResult") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String scanResult; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| /** | |||||
| * 扫描类型,一般是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; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,82 @@ | |||||
| package me.chanjar.weixin.mp.bean.message; | |||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | |||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | |||||
| import me.chanjar.weixin.common.util.ToStringUtils; | |||||
| import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | |||||
| /** | |||||
| * <pre> | |||||
| * Created by BinaryWang on 2017/5/4. | |||||
| * </pre> | |||||
| * | |||||
| * @author Binary Wang | |||||
| */ | |||||
| @XStreamAlias("SendLocationInfo") | |||||
| public class SendLocationInfo { | |||||
| @XStreamAlias("Location_X") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String locationX; | |||||
| @XStreamAlias("Location_Y") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String locationY; | |||||
| @XStreamAlias("Scale") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String scale; | |||||
| @XStreamAlias("Label") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String label; | |||||
| @XStreamAlias("Poiname") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String poiname; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| 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; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,61 @@ | |||||
| package me.chanjar.weixin.mp.bean.message; | |||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | |||||
| import com.thoughtworks.xstream.annotations.XStreamConverter; | |||||
| import me.chanjar.weixin.common.util.ToStringUtils; | |||||
| import me.chanjar.weixin.common.util.xml.XStreamCDataConverter; | |||||
| import java.util.ArrayList; | |||||
| import java.util.List; | |||||
| /** | |||||
| * <pre> | |||||
| * Created by BinaryWang on 2017/5/4. | |||||
| * </pre> | |||||
| * | |||||
| * @author Binary Wang | |||||
| */ | |||||
| @XStreamAlias("SendPicsInfo") | |||||
| public class SendPicsInfo { | |||||
| @XStreamAlias("PicList") | |||||
| protected final List<Item> picList = new ArrayList<>(); | |||||
| @XStreamAlias("Count") | |||||
| private Long count; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| public Long getCount() { | |||||
| return this.count; | |||||
| } | |||||
| public void setCount(Long count) { | |||||
| this.count = count; | |||||
| } | |||||
| public List<Item> getPicList() { | |||||
| return this.picList; | |||||
| } | |||||
| @XStreamAlias("item") | |||||
| public static class Item { | |||||
| @XStreamAlias("PicMd5Sum") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String picMd5Sum; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| public String getPicMd5Sum() { | |||||
| return this.picMd5Sum; | |||||
| } | |||||
| public void setPicMd5Sum(String picMd5Sum) { | |||||
| this.picMd5Sum = picMd5Sum; | |||||
| } | |||||
| } | |||||
| } | |||||
| @@ -12,8 +12,6 @@ import org.apache.commons.io.IOUtils; | |||||
| import java.io.IOException; | import java.io.IOException; | ||||
| import java.io.InputStream; | import java.io.InputStream; | ||||
| import java.io.Serializable; | import java.io.Serializable; | ||||
| import java.util.ArrayList; | |||||
| import java.util.List; | |||||
| /** | /** | ||||
| * <pre> | * <pre> | ||||
| @@ -199,6 +197,30 @@ public class WxMpXmlMessage implements Serializable { | |||||
| @XStreamAlias("OuterId") | @XStreamAlias("OuterId") | ||||
| private Integer outerId; | private Integer outerId; | ||||
| /** | |||||
| * 用户删除会员卡后可重新找回,当用户本次操作为找回时,该值为1,否则为0 | |||||
| */ | |||||
| @XStreamAlias("IsRestoreMemberCard") | |||||
| private String isRestoreMemberCard; | |||||
| /** | |||||
| * 领取场景值,用于领取渠道数据统计。可在生成二维码接口及添加Addcard接口中自定义该字段的字符串值。 | |||||
| */ | |||||
| @XStreamAlias("OuterStr") | |||||
| private String outerStr; | |||||
| /** | |||||
| * 是否转赠退回,0代表不是,1代表是。 | |||||
| */ | |||||
| @XStreamAlias("IsReturnBack") | |||||
| private String isReturnBack; | |||||
| /** | |||||
| * 是否是群转赠,0代表不是,1代表是。 | |||||
| */ | |||||
| @XStreamAlias("IsChatRoom") | |||||
| private String isChatRoom; | |||||
| @XStreamAlias("ScanCodeInfo") | @XStreamAlias("ScanCodeInfo") | ||||
| private ScanCodeInfo scanCodeInfo = new ScanCodeInfo(); | private ScanCodeInfo scanCodeInfo = new ScanCodeInfo(); | ||||
| @@ -314,11 +336,11 @@ public class WxMpXmlMessage implements Serializable { | |||||
| /** | /** | ||||
| * 从加密字符串转换 | * 从加密字符串转换 | ||||
| * | * | ||||
| * @param encryptedXml | |||||
| * @param wxMpConfigStorage | |||||
| * @param timestamp | |||||
| * @param nonce | |||||
| * @param msgSignature | |||||
| * @param encryptedXml 密文 | |||||
| * @param wxMpConfigStorage 配置存储器对象 | |||||
| * @param timestamp 时间戳 | |||||
| * @param nonce 随机串 | |||||
| * @param msgSignature 签名串 | |||||
| */ | */ | ||||
| public static WxMpXmlMessage fromEncryptedXml(String encryptedXml, | public static WxMpXmlMessage fromEncryptedXml(String encryptedXml, | ||||
| WxMpConfigStorage wxMpConfigStorage, String timestamp, String nonce, | WxMpConfigStorage wxMpConfigStorage, String timestamp, String nonce, | ||||
| @@ -750,28 +772,28 @@ public class WxMpXmlMessage implements Serializable { | |||||
| this.outerId = outerId; | this.outerId = outerId; | ||||
| } | } | ||||
| public WxMpXmlMessage.ScanCodeInfo getScanCodeInfo() { | |||||
| public ScanCodeInfo getScanCodeInfo() { | |||||
| return this.scanCodeInfo; | return this.scanCodeInfo; | ||||
| } | } | ||||
| public void setScanCodeInfo(WxMpXmlMessage.ScanCodeInfo scanCodeInfo) { | |||||
| public void setScanCodeInfo(ScanCodeInfo scanCodeInfo) { | |||||
| this.scanCodeInfo = scanCodeInfo; | this.scanCodeInfo = scanCodeInfo; | ||||
| } | } | ||||
| public WxMpXmlMessage.SendPicsInfo getSendPicsInfo() { | |||||
| public SendPicsInfo getSendPicsInfo() { | |||||
| return this.sendPicsInfo; | return this.sendPicsInfo; | ||||
| } | } | ||||
| public void setSendPicsInfo(WxMpXmlMessage.SendPicsInfo sendPicsInfo) { | |||||
| public void setSendPicsInfo(SendPicsInfo sendPicsInfo) { | |||||
| this.sendPicsInfo = sendPicsInfo; | this.sendPicsInfo = sendPicsInfo; | ||||
| } | } | ||||
| public WxMpXmlMessage.SendLocationInfo getSendLocationInfo() { | |||||
| public SendLocationInfo getSendLocationInfo() { | |||||
| return this.sendLocationInfo; | return this.sendLocationInfo; | ||||
| } | } | ||||
| public void setSendLocationInfo( | public void setSendLocationInfo( | ||||
| WxMpXmlMessage.SendLocationInfo sendLocationInfo) { | |||||
| SendLocationInfo sendLocationInfo) { | |||||
| this.sendLocationInfo = sendLocationInfo; | this.sendLocationInfo = sendLocationInfo; | ||||
| } | } | ||||
| @@ -807,198 +829,41 @@ public class WxMpXmlMessage implements Serializable { | |||||
| this.fromKfAccount = fromKfAccount; | this.fromKfAccount = fromKfAccount; | ||||
| } | } | ||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| public String getIsRestoreMemberCard() { | |||||
| return isRestoreMemberCard; | |||||
| } | } | ||||
| @XStreamAlias("HardWare") | |||||
| public static class HardWare { | |||||
| /** | |||||
| * 消息展示,目前支持myrank(排行榜) | |||||
| */ | |||||
| @XStreamAlias("MessageView") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String messageView; | |||||
| /** | |||||
| * 消息点击动作,目前支持ranklist(点击跳转排行榜) | |||||
| */ | |||||
| @XStreamAlias("MessageAction") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String messageAction; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| public String getMessageView() { | |||||
| return messageView; | |||||
| } | |||||
| public void setMessageView(String messageView) { | |||||
| this.messageView = messageView; | |||||
| } | |||||
| public String getMessageAction() { | |||||
| return messageAction; | |||||
| } | |||||
| public void setMessageAction(String messageAction) { | |||||
| this.messageAction = messageAction; | |||||
| } | |||||
| public void setIsRestoreMemberCard(String isRestoreMemberCard) { | |||||
| this.isRestoreMemberCard = isRestoreMemberCard; | |||||
| } | } | ||||
| @XStreamAlias("ScanCodeInfo") | |||||
| public static class ScanCodeInfo { | |||||
| @XStreamAlias("ScanType") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String scanType; | |||||
| @XStreamAlias("ScanResult") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String scanResult; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| /** | |||||
| * 扫描类型,一般是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; | |||||
| } | |||||
| public String getOuterStr() { | |||||
| return outerStr; | |||||
| } | } | ||||
| @XStreamAlias("SendPicsInfo") | |||||
| public static class SendPicsInfo { | |||||
| @XStreamAlias("PicList") | |||||
| protected final List<Item> picList = new ArrayList<>(); | |||||
| @XStreamAlias("Count") | |||||
| private Long count; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| public Long getCount() { | |||||
| return this.count; | |||||
| } | |||||
| public void setCount(Long count) { | |||||
| this.count = count; | |||||
| } | |||||
| public List<Item> getPicList() { | |||||
| return this.picList; | |||||
| } | |||||
| @XStreamAlias("item") | |||||
| public static class Item { | |||||
| @XStreamAlias("PicMd5Sum") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String picMd5Sum; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| public String getPicMd5Sum() { | |||||
| return this.picMd5Sum; | |||||
| } | |||||
| public void setPicMd5Sum(String picMd5Sum) { | |||||
| this.picMd5Sum = picMd5Sum; | |||||
| } | |||||
| } | |||||
| public void setOuterStr(String outerStr) { | |||||
| this.outerStr = outerStr; | |||||
| } | } | ||||
| @XStreamAlias("SendLocationInfo") | |||||
| public static class SendLocationInfo { | |||||
| @XStreamAlias("Location_X") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String locationX; | |||||
| @XStreamAlias("Location_Y") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String locationY; | |||||
| @XStreamAlias("Scale") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String scale; | |||||
| @XStreamAlias("Label") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String label; | |||||
| @XStreamAlias("Poiname") | |||||
| @XStreamConverter(value = XStreamCDataConverter.class) | |||||
| private String poiname; | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | |||||
| 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 getIsReturnBack() { | |||||
| return isReturnBack; | |||||
| } | |||||
| public String getLabel() { | |||||
| return this.label; | |||||
| } | |||||
| public void setIsReturnBack(String isReturnBack) { | |||||
| this.isReturnBack = isReturnBack; | |||||
| } | |||||
| public void setLabel(String label) { | |||||
| this.label = label; | |||||
| } | |||||
| public String getIsChatRoom() { | |||||
| return isChatRoom; | |||||
| } | |||||
| public String getPoiname() { | |||||
| return this.poiname; | |||||
| } | |||||
| public void setIsChatRoom(String isChatRoom) { | |||||
| this.isChatRoom = isChatRoom; | |||||
| } | |||||
| public void setPoiname(String poiname) { | |||||
| this.poiname = poiname; | |||||
| } | |||||
| @Override | |||||
| public String toString() { | |||||
| return ToStringUtils.toSimpleString(this); | |||||
| } | } | ||||
| } | } | ||||
| @@ -5,7 +5,7 @@ | |||||
| <parent> | <parent> | ||||
| <artifactId>weixin-java-parent</artifactId> | <artifactId>weixin-java-parent</artifactId> | ||||
| <groupId>com.github.binarywang</groupId> | <groupId>com.github.binarywang</groupId> | ||||
| <version>2.7.0-SNAPSHOT</version> | |||||
| <version>2.6.1.BETA</version> | |||||
| </parent> | </parent> | ||||
| <modelVersion>4.0.0</modelVersion> | <modelVersion>4.0.0</modelVersion> | ||||
| @@ -22,7 +22,7 @@ | |||||
| <dependency> | <dependency> | ||||
| <groupId>com.github.binarywang</groupId> | <groupId>com.github.binarywang</groupId> | ||||
| <artifactId>qrcode-utils</artifactId> | <artifactId>qrcode-utils</artifactId> | ||||
| <version>1.0</version> | |||||
| <version>1.1</version> | |||||
| </dependency> | </dependency> | ||||
| <dependency> | <dependency> | ||||
| @@ -129,7 +129,7 @@ public class WxPayConfig { | |||||
| * 微信支付是否使用仿真测试环境 | * 微信支付是否使用仿真测试环境 | ||||
| * 默认不使用 | * 默认不使用 | ||||
| */ | */ | ||||
| public boolean useSandboxForWxPay() { | |||||
| public boolean useSandbox() { | |||||
| return false; | return false; | ||||
| } | } | ||||
| @@ -45,7 +45,7 @@ public class WxPayServiceImpl implements WxPayService { | |||||
| } | } | ||||
| private String getPayBaseUrl() { | private String getPayBaseUrl() { | ||||
| if (this.getConfig().useSandboxForWxPay()) { | |||||
| if (this.getConfig().useSandbox()) { | |||||
| return PAY_BASE_URL + "/sandboxnew"; | return PAY_BASE_URL + "/sandboxnew"; | ||||
| } | } | ||||
| @@ -203,7 +203,7 @@ public class WxPayServiceImpl implements WxPayService { | |||||
| configMap.put("noncestr", String.valueOf(System.currentTimeMillis())); | configMap.put("noncestr", String.valueOf(System.currentTimeMillis())); | ||||
| configMap.put("appid", appId); | configMap.put("appid", appId); | ||||
| // 此map用于客户端与微信服务器交互 | // 此map用于客户端与微信服务器交互 | ||||
| payInfo.put("paySign", SignUtils.createSign(payInfo, this.getConfig().getMchKey())); | |||||
| payInfo.put("sign", SignUtils.createSign(configMap, this.getConfig().getMchKey())); | |||||
| payInfo.put("prepayId", prepayId); | payInfo.put("prepayId", prepayId); | ||||
| payInfo.put("partnerId", partnerid); | payInfo.put("partnerId", partnerid); | ||||
| payInfo.put("appId", appId); | payInfo.put("appId", appId); | ||||
| @@ -2,13 +2,6 @@ package com.github.binarywang.wxpay.testbase; | |||||
| import com.github.binarywang.wxpay.config.WxPayConfig; | import com.github.binarywang.wxpay.config.WxPayConfig; | ||||
| import com.thoughtworks.xstream.annotations.XStreamAlias; | import com.thoughtworks.xstream.annotations.XStreamAlias; | ||||
| import org.apache.commons.lang3.builder.ToStringBuilder; | |||||
| import org.apache.http.ssl.SSLContexts; | |||||
| import javax.net.ssl.SSLContext; | |||||
| import java.io.File; | |||||
| import java.io.FileInputStream; | |||||
| import java.security.KeyStore; | |||||
| @XStreamAlias("xml") | @XStreamAlias("xml") | ||||
| public class XmlWxPayConfig extends WxPayConfig { | public class XmlWxPayConfig extends WxPayConfig { | ||||
| @@ -23,9 +16,9 @@ public class XmlWxPayConfig extends WxPayConfig { | |||||
| } | } | ||||
| @Override | @Override | ||||
| public boolean useSandboxForWxPay() { | |||||
| public boolean useSandbox() { | |||||
| //沙箱环境不成熟,有问题无法使用,暂时屏蔽掉 | //沙箱环境不成熟,有问题无法使用,暂时屏蔽掉 | ||||
| // return true; | |||||
| // return true; | |||||
| return false; | return false; | ||||
| } | } | ||||
| } | } | ||||