类 WechatHandler
java.lang.Object
com.abasecode.opencode.pay.plugin.wechatpay.WechatHandler
- 作者:
- Jon e-mail: ijonso123@gmail.com url: Jon's blog url: project github url: AbaseCode.com
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明private WechatClientPayParamcreateClientPayParam(PayType payType, BaseOrder baseOrder, Payer payer) 付款流程:参数组装 公众号支付第一步 创建JSAPI客户端必须的参数 付款流程:发起JSAPI预支付(向微信发送订单信息),获得返回的prepay_id后封装客户端支付参数包createJsapiCodeUrl(String state) 付款流程 公众号支付第一步 生成公众号JSAPI获取code的URL,通过微信浏览器打开URL,等待微信回调返回codecreateJsapiOpenIdUrl(String code) 付款流程,发给客户端用 封装获取openId的URL(小程序)private Pay4JsapicreateJsapiOrderParams(PayType payType, BaseOrder baseOrder, Payer payer) 付款流程,参数封装 封装JSAPI订单信息(小程序,公众号)private RefundCreatecreateRefundParam(String outTradeNo, String outRefundNo, String reason, int refund, int total) 退款流程,参数封装 生成退款信息private AccessTokengetAccessToken(String code) 付款流程 公众号支付第二步 通过code获取AccessTokenprivate String根据微信支付类型返回AppID关闭流程 关闭订单付款流程:通知处理 处理支付成功通知(解密)查询流程:查询支付 查询订单退款流程:发起退款 发起退款并获得退款结果payRefundNotify(RefundNotice notice) 退款流程:处理退款通知 处理退款通知(并解密)payRefundQuery(String outRefundNo) 查询流程:查询退款 查询退款prePayJsapiMicro(PayType payType, BaseOrder order, String openId) 付款流程:小程序,服务端发起并获得参数 小程序支付第三步,生成客户端需要的参数 再由客户端将参数发送给微信prePayJsapiMp(PayType payType, BaseOrder order, String code) 付款流程:公众号,服务端发起并获得付款参数 公众号支付第三步,生成客户端需要的参数 再由客户端将参数发送给微信
-
构造器详细资料
-
WechatHandler
public WechatHandler()
-
-
方法详细资料
-
createJsapiCodeUrl
付款流程 公众号支付第一步 生成公众号JSAPI获取code的URL,通过微信浏览器打开URL,等待微信回调返回code- 参数:
state- 可不传- 返回:
- url
- 抛出:
UnsupportedEncodingException
-
createJsapiOpenIdUrl
付款流程,发给客户端用 封装获取openId的URL(小程序)- 参数:
code-- 返回:
- url
-
prePayJsapiMp
public WechatClientPayParam prePayJsapiMp(PayType payType, BaseOrder order, String code) throws Exception 付款流程:公众号,服务端发起并获得付款参数 公众号支付第三步,生成客户端需要的参数 再由客户端将参数发送给微信- 参数:
payType- 支付类型order- 订单code- 微信返回的code- 返回:
- ClientPayParam
- 抛出:
Exception
-
prePayJsapiMicro
public WechatClientPayParam prePayJsapiMicro(PayType payType, BaseOrder order, String openId) throws Exception 付款流程:小程序,服务端发起并获得参数 小程序支付第三步,生成客户端需要的参数 再由客户端将参数发送给微信- 参数:
payType- 支付类型order- 订单openId- 支付者openId(通过微信客户端获取)- 返回:
- ClientPayParam
- 抛出:
Exception
-
payNotify
付款流程:通知处理 处理支付成功通知(解密)- 参数:
notice- 微信发起的通知- 返回:
- 通知体
- 抛出:
Exception
-
payRefund
public RefundCreateReturn payRefund(String outTradeNo, String outRefundNo, String reason, int refund, int total) throws Exception 退款流程:发起退款 发起退款并获得退款结果- 参数:
outTradeNo- 商户订单号outRefundNo- 商户退单单号reason- 退款原因refund- 退款金额total- 订单金额- 返回:
- 退款返回参数
- 抛出:
Exception
-
payRefundNotify
退款流程:处理退款通知 处理退款通知(并解密)- 参数:
notice- 退款通知- 返回:
- 解密
- 抛出:
Exception
-
payClose
关闭流程 关闭订单- 参数:
outTradeNo- 订单编号- 返回:
- 关闭情况
- 抛出:
Exception
-
payQuery
查询流程:查询支付 查询订单- 参数:
outTradeNo- 订单编号- 返回:
- 查询结果
- 抛出:
Exception
-
payRefundQuery
查询流程:查询退款 查询退款- 参数:
outRefundNo- 退款单号- 返回:
- 退款内容
- 抛出:
Exception
-
createJsapiOrderParams
付款流程,参数封装 封装JSAPI订单信息(小程序,公众号)- 参数:
payType- 支付类型baseOrder- 订单信息payer- payer- 返回:
- JSAPI订单详情
-
createRefundParam
private RefundCreate createRefundParam(String outTradeNo, String outRefundNo, String reason, int refund, int total) 退款流程,参数封装 生成退款信息- 参数:
outTradeNo-outRefundNo-reason-refund-total-- 返回:
- RefundCreate
-
getAppId
根据微信支付类型返回AppID- 参数:
payType-- 返回:
- appid
-
getAccessToken
付款流程 公众号支付第二步 通过code获取AccessToken- 参数:
code- 第一步获取的code- 返回:
- AccessToken
- 抛出:
Exception
-
createClientPayParam
private WechatClientPayParam createClientPayParam(PayType payType, BaseOrder baseOrder, Payer payer) throws Exception 付款流程:参数组装 公众号支付第一步 创建JSAPI客户端必须的参数 付款流程:发起JSAPI预支付(向微信发送订单信息),获得返回的prepay_id后封装客户端支付参数包- 参数:
payType- 支付类型baseOrder- 基础订单payer- 支付者- 返回:
- 客户端需要的参数
- 抛出:
Exception
-