diff --git a/README.md b/README.md index 2fa0bf6..8b4c667 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,13 @@ #pay-java-parent -##整合支付模块(微信支付,支付宝) +## 整合支付模块 声明: 本项目最初想法自 https://github.com/chanjarster/weixin-java-tools, 15年1月左右关注chanjarster/weixin-java-tools,并将其回调处理修改并进行使用。 开发版 https://git.oschina.net/egzosn/pay-java-parent/tree/develop -###特性 - - +### 特性 1. 不依赖任何 mvc 框架 2. 也不依赖 servlet,仅仅作为工具使用,可轻松嵌入到任何系统里(项目例子利用spring mvc的 @PathVariable进行,推荐使用类似的框架) @@ -17,14 +15,14 @@ 4. 控制层统一异常处理 5. LogBack日志记录 6. 简单快速完成支付模块的开发 - 7. 支持多种支付类型多支付账户扩展(目前已支持微信支付,支付宝支付,友店支付) + 7. 支持多种支付类型多支付账户扩展 -###本项目包含 3 个部分: +### 本项目包含 3 个部分: 1. pay-java-common 公共lib,支付核心与规范定义 2. pay-java-demo 具体的支付demo 3. pay-java-* 具体的支付实现库 -###Maven配置 +### Maven配置 支付核心模块 ```xml @@ -50,12 +48,12 @@ -###使用 +### 使用 这里不多说直接上代码 集群的话,友店可能会有bug。 测试链接 : http://pay.egzosn.com/index.html -######单一支付教程 +###### 单一支付教程 [支付宝](pay-java-ali?dir=1&filepath=pay-java-ali) [微信](pay-java-wx?dir=1&filepath=pay-java-wx) @@ -67,7 +65,7 @@ android 例子 [pay-java-android](http://git.oschina.net/egzosn/pay-java-android) -##交流 +## 交流 很希望更多志同道合友友一起扩展新的的支付接口。 这里感谢[ouyangxiangshao](https://github.com/ouyangxiangshao),[ZhuangXiong](https://github.com/ZhuangXiong) 与[Actinian](http://git.oschina.net/Actinia517) 所提交的安卓例子或者分支 diff --git a/pay-java-ali/README.md b/pay-java-ali/README.md index 7a13917..8cec50e 100644 --- a/pay-java-ali/README.md +++ b/pay-java-ali/README.md @@ -1,8 +1,8 @@ -##支付宝支付简单例子 +## 支付宝支付简单例子 -####支付配置 +#### 支付配置 ```java @@ -49,7 +49,7 @@ ``` -####创建支付服务 +#### 创建支付服务 ```java @@ -61,7 +61,7 @@ ``` -####创建支付订单信息 +#### 创建支付订单信息 ```java @@ -70,7 +70,7 @@ ``` -####扫码付 +#### 扫码付 ```java @@ -83,7 +83,7 @@ ``` -####APP支付 +#### APP支付 ```java @@ -95,7 +95,7 @@ ``` -####即时到帐 WAP 网页支付 +#### 即时到帐 WAP 网页支付 ```java @@ -111,7 +111,7 @@ ``` -####条码付 声波付 +#### 条码付 声波付 ```java @@ -127,7 +127,7 @@ ``` -####回调处理 +#### 回调处理 ```java @@ -146,7 +146,7 @@ ``` -####支付订单查询 +#### 支付订单查询 ```java @@ -155,7 +155,7 @@ ``` -####交易关闭接口 +#### 交易关闭接口 ```java Map result = service..query("支付宝单号", "我方系统单号"); @@ -163,7 +163,7 @@ ``` -####申请退款接口 +#### 申请退款接口 ```java Map result = service.refund("支付宝单号", "我方系统单号", "退款金额", "订单总金额"); @@ -171,14 +171,14 @@ ``` -####查询退款 +#### 查询退款 ```java Map result = service.refundquery("支付宝单号", "我方系统单号"); ``` -####下载对账单 +#### 下载对账单 ```java Map result = service.downloadbill("账单时间:日账单格式为yyyy-MM-dd,月账单格式为yyyy-MM", "账单类型"); diff --git a/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayConfigStorage.java b/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayConfigStorage.java index 8598b24..54acd26 100644 --- a/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayConfigStorage.java +++ b/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayConfigStorage.java @@ -4,23 +4,29 @@ import com.egzosn.pay.common.api.BasePayConfigStorage; /** * 支付配置存储 - * author egan + * @author egan * * email egzosn@gmail.com * date 2016-5-18 14:09:01 */ public class AliPayConfigStorage extends BasePayConfigStorage { - // 商户PID + /** + * 商户PID + */ public volatile String appId ; - // 商户签约拿到的pid,partner_id的简称,合作伙伴身份等同于 partner + /** + * 商户签约拿到的pid,partner_id的简称,合作伙伴身份等同于 partner + */ public volatile String pid ; - //partner_id的简称,合作伙伴身份 -// public volatile String partner ; - // 商户收款账号 + /** + * 商户收款账号 + */ public volatile String seller; - //公钥 + /** + * 公钥 + */ private volatile String aliPublicKey; @@ -44,26 +50,6 @@ public class AliPayConfigStorage extends BasePayConfigStorage { return appId; } - /** - * @see #getPid() - * @return 合作者id - */ - @Deprecated - @Override - public String getPartner() { - return pid; - } - - - /** - * 设置合作者id - * @see #setPid(String) - * @param partner 合作者id - */ - @Deprecated - public void setPartner(String partner) { - this.pid = partner; - } @Override public String getPid() { @@ -74,6 +60,7 @@ public class AliPayConfigStorage extends BasePayConfigStorage { this.pid = pid; } + @Override public String getSeller() { return seller; } diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayConfigStorage.java b/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayConfigStorage.java index 71da64f..6384319 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayConfigStorage.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayConfigStorage.java @@ -16,22 +16,35 @@ import java.util.concurrent.locks.ReentrantLock; public abstract class BasePayConfigStorage implements PayConfigStorage{ - // ali rsa_private 商户私钥,pkcs8格式 - //wx api_key 应用私钥(生成签名时使用) - private volatile String keyPrivate ; - // 支付平台公钥(签名校验使用) + /** + * 应用私钥,rsa_private pkcs8格式 生成签名时使用 + */ + private volatile String keyPrivate; + /** + * 支付平台公钥(签名校验使用) + */ private volatile String keyPublic; - //异步回调地址 + /** + * 异步回调地址 + */ private volatile String notifyUrl; - //同步回调地址 + /** + * 同步回调地址,支付完成后展示的页面 + */ private volatile String returnUrl;; - //签名加密类型 + /** + * 签名加密类型 + */ private volatile String signType; - //字符类型 + /** + * 字符类型 + */ private volatile String inputCharset; - //支付类型 aliPay 支付宝, wxPay微信..等等,开发者自定义,唯一 + /** + * 支付类型 aliPay 支付宝, wxPay微信..等等,扩展支付模块定义唯一。 + */ private volatile String payType; /** @@ -40,13 +53,21 @@ public abstract class BasePayConfigStorage implements PayConfigStorage{ private volatile MsgType msgType; - // 访问令牌 每次请求其他方法都要传入的值 + /** + * 访问令牌 每次请求其他方法都要传入的值 + */ private volatile String accessToken; - // access token 到期时间时间戳 + /** + * access token 到期时间时间戳 + */ private volatile long expiresTime; - //授权码锁 + /** + * 授权码锁 + */ private Lock accessTokenLock = new ReentrantLock(); - + /** + * 是否为沙箱环境,默认为正式环境 + */ private boolean isTest = false; @@ -77,6 +98,7 @@ public abstract class BasePayConfigStorage implements PayConfigStorage{ this.notifyUrl = notifyUrl; } + @Override public String getReturnUrl() { return returnUrl; diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayConfigStorage.java b/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayConfigStorage.java index fdbedf4..f5321fc 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayConfigStorage.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayConfigStorage.java @@ -14,21 +14,14 @@ import java.util.concurrent.locks.Lock; */ public interface PayConfigStorage { - /* + /** * 应用id * @return 应用id */ String getAppid(); + /** * 合作商唯一标识 - * @see #getPid() 代替者 - * @return 合作商唯一标识 - */ - @Deprecated - String getPartner(); - /** - * 合作商唯一标识 - * @see #getPartner() 代替者 * @return 合作商唯一标识 */ String getPid(); diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayMessageRouter.java b/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayMessageRouter.java index eceb744..01b1754 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayMessageRouter.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayMessageRouter.java @@ -2,6 +2,7 @@ package com.egzosn.pay.common.api; import com.egzosn.pay.common.bean.PayMessage; import com.egzosn.pay.common.bean.PayOutMessage; + import com.egzosn.pay.common.util.LogExceptionHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -144,6 +145,7 @@ public class PayMessageRouter { if(rule.isAsync()) { futures.add( executorService.submit(new Runnable() { + @Override public void run() { rule.service(payMessage, payService, exceptionHandler); } diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/bean/MethodType.java b/pay-java-common/src/main/java/com/egzosn/pay/common/bean/MethodType.java index 387bd63..36b02f5 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/bean/MethodType.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/bean/MethodType.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 the original huodull or egan. + * Copyright 2002-2017 the original egan. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,6 +23,7 @@ package com.egzosn.pay.common.bean; * email egzosn@gmail.com * date 2017/2/7 9:52 * + * 请求方式 */ public enum MethodType { GET, POST diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/http/ClientHttpRequest.java b/pay-java-common/src/main/java/com/egzosn/pay/common/http/ClientHttpRequest.java index 774a057..9018abb 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/http/ClientHttpRequest.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/http/ClientHttpRequest.java @@ -32,9 +32,13 @@ import static com.egzosn.pay.common.http.UriVariables.getMapToParameters; * */ public class ClientHttpRequest extends HttpEntityEnclosingRequestBase implements org.apache.http.client.ResponseHandler{ - //http请求 + /** + * http请求方式 get pos + */ private MethodType method; - //响应类型 + /** + * 响应类型 + */ private Class responseType; @@ -43,40 +47,80 @@ public class ClientHttpRequest extends HttpEntityEnclosingRequestBase impleme return this; } + /** + * 空构造 + */ public ClientHttpRequest() { } + /** + * 根据请求地址 请求方法,请求内容对象 + * @param uri 请求地址 + * @param method 请求方法 + * @param request 请求内容 + */ public ClientHttpRequest(URI uri, MethodType method, Object request) { - this.setURI(uri); - this.method = method; + this(uri, method); setParameters(request); } + /** + * 根据请求地址 请求方法 + * @param uri 请求地址 + * @param method 请求方法 + */ public ClientHttpRequest(URI uri, MethodType method) { this.setURI(uri); this.method = method; } + + /** + * 根据请求地址 + * @param uri 请求地址 + */ public ClientHttpRequest(URI uri) { this.setURI(uri); } - + /** + * 根据请求地址 + * @param uri 请求地址 + */ public ClientHttpRequest(String uri) { this.setURI(URI.create(uri)); } + /** + * 根据请求地址 请求方法 + * @param uri 请求地址 + * @param method 请求方法 + */ public ClientHttpRequest(String uri, MethodType method) { this.setURI(URI.create(uri)); this.method = method; } - + /** + * 根据请求地址 请求方法,请求内容对象 + * @param uri 请求地址 + * @param method 请求方法 + * @param request 请求内容 + */ public ClientHttpRequest(String uri, MethodType method, Object request) { - this.setURI(URI.create(uri)); - this.method = method; + this(uri, method); setParameters(request); } + /** + * 设置请求方式 + * + * @param method 请求方式 + * {@link com.egzosn.pay.common.bean.MethodType} 请求方式 + */ public void setMethod(MethodType method) { this.method = method; } + /** + * 获取请求方式 + * @return 请求方式 + */ @Override public String getMethod() { return method.name(); diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/util/sign/SignUtils.java b/pay-java-common/src/main/java/com/egzosn/pay/common/util/sign/SignUtils.java index 6e846b1..6b4da14 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/util/sign/SignUtils.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/util/sign/SignUtils.java @@ -39,6 +39,7 @@ public enum SignUtils { * @param characterEncoding 编码格式 * @return 签名结果 */ + @Override public boolean verify(String text, String sign, String key, String characterEncoding) { return com.egzosn.pay.common.util.sign.encrypt.MD5.verify(text, sign, key, characterEncoding); } diff --git a/pay-java-demo/README.md b/pay-java-demo/README.md index 6b3cb84..fe23432 100644 --- a/pay-java-demo/README.md +++ b/pay-java-demo/README.md @@ -1,6 +1,6 @@ ### 快速入门 -#####1.支付整合配置 +##### 1.支付整合配置 ```java @@ -220,7 +220,7 @@ public class PayResponse { ``` -#####2.支付处理器与拦截器简单实现 +##### 2.支付处理器与拦截器简单实现 ```java /** @@ -271,7 +271,7 @@ public class PayResponse { ``` -#####3.支付响应PayResponse的获取 +##### 3.支付响应PayResponse的获取 ```java @@ -318,7 +318,7 @@ public class ApyAccountService { ``` -#####4.根据账户id与业务id,组拼订单信息(支付宝、微信支付订单)获取支付信息所需的数据 +##### 4.根据账户id与业务id,组拼订单信息(支付宝、微信支付订单)获取支付信息所需的数据 ```java @@ -466,7 +466,7 @@ public class ApyAccountService { ``` -#####5.支付回调 +##### 5.支付回调 ```java diff --git a/pay-java-demo/src/main/java/com/egzosn/pay/demo/service/ApyAccountService.java b/pay-java-demo/src/main/java/com/egzosn/pay/demo/service/ApyAccountService.java index 7c497c1..496d52c 100644 --- a/pay-java-demo/src/main/java/com/egzosn/pay/demo/service/ApyAccountService.java +++ b/pay-java-demo/src/main/java/com/egzosn/pay/demo/service/ApyAccountService.java @@ -23,7 +23,9 @@ public class ApyAccountService { @Resource private AutowireCapableBeanFactory spring; - //缓存 + /** + * 缓存 + */ private final static Map payResponses = new HashMap(); /** diff --git a/pay-java-demo/src/main/java/com/egzosn/pay/demo/service/PayResponse.java b/pay-java-demo/src/main/java/com/egzosn/pay/demo/service/PayResponse.java index e556fa1..5a2f43e 100644 --- a/pay-java-demo/src/main/java/com/egzosn/pay/demo/service/PayResponse.java +++ b/pay-java-demo/src/main/java/com/egzosn/pay/demo/service/PayResponse.java @@ -92,10 +92,14 @@ public class PayResponse { router .rule() .async(false) - .msgType(MsgType.text.name()) //消息类型 - .payType(PayType.aliPay.name()) //支付账户事件类型 - .interceptor(new AliPayMessageInterceptor()) //拦截器 - .handler(autowire(new AliPayMessageHandler(payId))) //处理器 + //消息类型 + .msgType(MsgType.text.name()) + //支付账户事件类型 + .payType(PayType.aliPay.name()) + //拦截器 + .interceptor(new AliPayMessageInterceptor()) + //处理器 + .handler(autowire(new AliPayMessageHandler(payId))) .end() .rule() .async(false) diff --git a/pay-java-fuiou/README.md b/pay-java-fuiou/README.md index ccd1d66..f799eb4 100644 --- a/pay-java-fuiou/README.md +++ b/pay-java-fuiou/README.md @@ -1,8 +1,8 @@ -##富友支付简单例子 +## 富友支付简单例子 -####支付配置 +#### 支付配置 ```java @@ -22,7 +22,7 @@ ``` -####创建支付服务 +#### 创建支付服务 ```java @@ -31,7 +31,7 @@ ``` -####创建支付订单信息 +#### 创建支付订单信息 ```java @@ -41,7 +41,7 @@ ``` -####网页支付 +#### 网页支付 ```java @@ -57,7 +57,7 @@ ``` -####回调处理 +#### 回调处理 ```java diff --git a/pay-java-fuiou/src/main/java/com/egzosn/pay/fuiou/api/FuiouPayConfigStorage.java b/pay-java-fuiou/src/main/java/com/egzosn/pay/fuiou/api/FuiouPayConfigStorage.java index db69a38..8cb051f 100644 --- a/pay-java-fuiou/src/main/java/com/egzosn/pay/fuiou/api/FuiouPayConfigStorage.java +++ b/pay-java-fuiou/src/main/java/com/egzosn/pay/fuiou/api/FuiouPayConfigStorage.java @@ -20,20 +20,10 @@ public class FuiouPayConfigStorage extends BasePayConfigStorage { return null; } - /** - * 合作商唯一标识 - * - * @see #getPid() 代替者 - */ - @Override - public String getPartner () { - return mchntCd; - } /** * 合作商唯一标识 * - * @see #getPartner() 代替者 */ @Override public String getPid () { diff --git a/pay-java-wx-youdian/README.md b/pay-java-wx-youdian/README.md index ebef4f8..4017d50 100644 --- a/pay-java-wx-youdian/README.md +++ b/pay-java-wx-youdian/README.md @@ -1,8 +1,8 @@ -##友店支付简单例子 +## 友店支付简单例子 -####支付配置 +#### 支付配置 ```java @@ -22,7 +22,7 @@ ``` -####创建支付服务 +#### 创建支付服务 ```java @@ -31,7 +31,7 @@ ``` -####创建支付订单信息 +#### 创建支付订单信息 ```java @@ -41,7 +41,7 @@ ``` -####扫码付 +#### 扫码付 ```java @@ -54,7 +54,7 @@ ``` -####回调处理 +#### 回调处理 ```java diff --git a/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayConfigStorage.java b/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayConfigStorage.java index e42d1cb..8523223 100644 --- a/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayConfigStorage.java +++ b/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayConfigStorage.java @@ -12,7 +12,9 @@ import com.egzosn.pay.common.api.BasePayConfigStorage; public class WxYouDianPayConfigStorage extends BasePayConfigStorage { - //账号 + /** + * 账号 + */ public volatile String seller; @@ -26,11 +28,6 @@ public class WxYouDianPayConfigStorage extends BasePayConfigStorage { } - @Override - public String getPartner() { - return null; - } - @Override public String getPid() { return null; diff --git a/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayService.java b/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayService.java index ae27f28..c588d1c 100644 --- a/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayService.java +++ b/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/api/WxYouDianPayService.java @@ -33,13 +33,21 @@ import java.util.concurrent.locks.Lock; */ public class WxYouDianPayService extends BasePayService { protected static final Log LOG = LogFactory.getLog(WxYouDianPayService.class); - //登录获取授权码 + /** + * 登录获取授权码 + */ public final static String LOGIN_URL = "http://life.51youdian.com/Api/CheckoutCounter/login"; - //刷新授权码 + /** + * 刷新授权码 + */ public final static String RESET_LOGIN_URL = "http://life.51youdian.com/Api/CheckoutCounter/resetLogin"; - //查看付款订单状态 + /** + * 查看付款订单状态 + */ public final static String UNIFIEDORDER_STATUS_URL = "http://life.51youdian.com/Api/CheckoutCounter/unifiedorderStatus"; - //预下单链接 + /** + * 预下单链接 + */ public final static String UNIFIED_ORDER_URL = "http://life.51youdian.com/Api/CheckoutCounter/unifiedorder"; @@ -310,14 +318,16 @@ public class WxYouDianPayService extends BasePayService { /** * 具体需要返回的数据为 - *return_code 返回码只有SUCCESS和FAIL - *return_msg 返回具体信息 - *nonce_str 您的服务器新生成随机生成32位字符串 - *sign 为签名,签名规则是您需要发送的所有数据(除了sign)按照字典升序排列后加上&key=xxxxxxxx您的密钥后md5加密,最后转成小写 - *最后把得到的所有需要返回的数据用json格式化成json对象格式如下 - *{"return_code":"SUCCESS","return_msg":"ok","nonce_str":"dddddddddddddddddddd’,’sign’:’sdddddddddddddddddd"} - * @param code return_code + * return_code 返回码只有SUCCESS和FAIL + * return_msg 返回具体信息 + * nonce_str 您的服务器新生成随机生成32位字符串 + * sign 为签名,签名规则是您需要发送的所有数据(除了sign)按照字典升序排列后加上&key=xxxxxxxx您的密钥后md5加密,最后转成小写 + * 最后把得到的所有需要返回的数据用json格式化成json对象格式如下 + * {"return_code":"SUCCESS","return_msg":"ok","nonce_str":"dddddddddddddddddddd’,’sign’:’sdddddddddddddddddd"} + * + * @param code return_code * @param message return_msg + * * @return 返回输出消息 */ @Override diff --git a/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/bean/YoudianTransactionType.java b/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/bean/YoudianTransactionType.java index a25008d..31fa49a 100644 --- a/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/bean/YoudianTransactionType.java +++ b/pay-java-wx-youdian/src/main/java/com/egzosn/pay/wx/youdian/bean/YoudianTransactionType.java @@ -11,9 +11,13 @@ import com.egzosn.pay.common.bean.TransactionType; */ public enum YoudianTransactionType implements TransactionType { - //扫码付 + /** + * 扫码付 + */ NATIVE("unifiedorder"), - //刷卡付 + /** + * 刷卡付 + */ MICROPAY("micropay");//暂未接触 private String method; diff --git a/pay-java-wx/README.md b/pay-java-wx/README.md index 3d53f39..9dc3e90 100644 --- a/pay-java-wx/README.md +++ b/pay-java-wx/README.md @@ -1,8 +1,8 @@ -##微信支付简单例子 +## 微信支付简单例子 -####支付配置 +#### 支付配置 ```java @@ -45,7 +45,7 @@ ``` -####创建支付服务 +#### 创建支付服务 ```java @@ -57,7 +57,7 @@ ``` -####创建支付订单信息 +#### 创建支付订单信息 ```java @@ -66,7 +66,7 @@ ``` -####扫码付 +#### 扫码付 ```java @@ -80,7 +80,7 @@ ``` -####APP支付 +#### APP支付 ```java @@ -92,7 +92,7 @@ ``` -####网页支付 +#### 网页支付 ```java @@ -107,7 +107,7 @@ ``` -####条码付 刷卡付 +#### 条码付 刷卡付 ```java @@ -121,7 +121,7 @@ ``` -####回调处理 +#### 回调处理 ```java @@ -139,7 +139,7 @@ ``` -####支付订单查询 +#### 支付订单查询 ```java @@ -148,7 +148,7 @@ ``` -####交易关闭接口 +#### 交易关闭接口 ```java Map result = service..query("微信单号", "我方系统单号"); @@ -156,7 +156,7 @@ ``` -####申请退款接口 +#### 申请退款接口 ```java Map result = service.refund("微信单号", "我方系统单号", "退款金额", "订单总金额"); @@ -164,14 +164,14 @@ ``` -####查询退款 +#### 查询退款 ```java Map result = service.refundquery("微信单号", "我方系统单号"); ``` -####下载对账单 +#### 下载对账单 ```java Map result = service.downloadbill("账单时间:日账单格式为yyyy-MM-dd,月账单格式为yyyy-MM", "账单类型"); diff --git a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayConfigStorage.java b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayConfigStorage.java index a4afd52..b8ba922 100644 --- a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayConfigStorage.java +++ b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayConfigStorage.java @@ -15,8 +15,13 @@ public class WxPayConfigStorage extends BasePayConfigStorage { public String appSecret; + /** + * 应用id + */ public String appid ; - // 商户号 合作者id + /** + * 商户号 合作者id + */ public String mchId; @@ -35,17 +40,11 @@ public class WxPayConfigStorage extends BasePayConfigStorage { this.appid = appid; } - /** - * 合作商唯一标识 - * @see #getPid() 代替者 - */ - public String getPartner() { - return mchId; - } + + /** * 合作商唯一标识 - * @see #getPartner() 代替者 */ @Override public String getPid() { @@ -53,6 +52,15 @@ public class WxPayConfigStorage extends BasePayConfigStorage { } + /** + * 合作商唯一标识 + */ + public void setPid(String mchId) { + this.mchId = mchId; + } + + + @Override public String getSeller() { return null;