程序包 com.walker.pay
类 AbstractPayEngineManager
java.lang.Object
com.walker.pay.AbstractPayEngineManager
- 所有已实现的接口:
PayEngineManager
-
字段概要
字段 -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明protected abstract OrderacquireOrder(String orderId) 从平台查询数据库,找出订单基本信息。protected abstract List<PayDefinition>由子类实现加载支付定义数据。protected abstract PayEngineProvideracquirePayEngineProvider(PayDefinition payDefinition) 根据支付定义,获取支付引擎提供者对象。generateNotifyResponse(String payDefinitionId, boolean success) 生成接收通知后,给第三方的响应内容。generatePrepareOrder(Order platformOrder) 生成预下单信息。getPayDefinition(String payDefinitionId) 根据支付配置ID,返回支付定义对象。getPayEngineProvider(ServiceProvider serviceProvider, String version, PayType payType) 根据订单信息,返回具体的支付引擎对象。getPayEngineProvider(String payDefinitionId) 根据支付定义ID,返回具体的支付引擎对象。返回所有可用的支付引擎提供者集合。getPayEngineProviderList(ServiceProvider serviceProvider) 根据服务提供商信息,查询包含该提供商的支付对接有几个,因为可能存在多个,如:微信v2、v3等。void加载业务配置的所有支付定义记录。notifyOrder(String payDefinitionId, Object notifyData) 订单(异步)通知调用方法。searchOrderStatus(String orderId) 远程调用第三方接口,查询支付订单状态。voidsetConfiguration(Map<String, Variable> configuration)
-
字段详细资料
-
logger
protected final transient org.slf4j.Logger logger
-
-
构造器详细资料
-
AbstractPayEngineManager
public AbstractPayEngineManager()
-
-
方法详细资料
-
getConfiguration
-
setConfiguration
-
loadPayDefinitionList
public void loadPayDefinitionList()从接口复制的说明:PayEngineManager加载业务配置的所有支付定义记录。- 指定者:
loadPayDefinitionList在接口中PayEngineManager
-
getPayDefinition
从接口复制的说明:PayEngineManager根据支付配置ID,返回支付定义对象。- 指定者:
getPayDefinition在接口中PayEngineManager- 返回:
-
getPayEngineProviderList
从接口复制的说明:PayEngineManager返回所有可用的支付引擎提供者集合。- 指定者:
getPayEngineProviderList在接口中PayEngineManager- 返回:
-
getPayEngineProvider
从接口复制的说明:PayEngineManager根据支付定义ID,返回具体的支付引擎对象。如: 微信支付提供者等。- 指定者:
getPayEngineProvider在接口中PayEngineManager- 返回:
-
getPayEngineProvider
public PayEngineProvider getPayEngineProvider(ServiceProvider serviceProvider, String version, PayType payType) 从接口复制的说明:PayEngineManager根据订单信息,返回具体的支付引擎对象。1)该方法在支付通知时会被内部使用,来确定哪个提供者被调用。- 指定者:
getPayEngineProvider在接口中PayEngineManager- 参数:
serviceProvider- 支付提供者version- 支付提供引擎的版本号payType- (订单)支付类型- 返回:
-
getPayEngineProviderList
从接口复制的说明:PayEngineManager根据服务提供商信息,查询包含该提供商的支付对接有几个,因为可能存在多个,如:微信v2、v3等。 在订单没有传入version版本号的时候,可以检测如果提供商只有一个实现,则无需使用版本号。- 指定者:
getPayEngineProviderList在接口中PayEngineManager- 返回:
-
generatePrepareOrder
从接口复制的说明:PayEngineManager生成预下单信息。- 指定者:
generatePrepareOrder在接口中PayEngineManager- 抛出:
OrderException
-
notifyOrder
从接口复制的说明:PayEngineManager订单(异步)通知调用方法。- 指定者:
notifyOrder在接口中PayEngineManager- 参数:
payDefinitionId- 支付定义ID,由业务确定,因为该方法必须放在独立http方法中被触发。notifyData- 通知原始数据 // * @param orderCallBack 业务回调接口,可选- 返回:
- 如果返回不为空,则表示执行错误,返回了error字符串。
- 抛出:
NotifyException
-
generateNotifyResponse
从接口复制的说明:PayEngineManager生成接收通知后,给第三方的响应内容。- 指定者:
generateNotifyResponse在接口中PayEngineManager- 参数:
payDefinitionId- 支付定义IDsuccess- 是否成功- 返回:
-
searchOrderStatus
从接口复制的说明:PayEngineManager远程调用第三方接口,查询支付订单状态。- 指定者:
searchOrderStatus在接口中PayEngineManager- 参数:
orderId- 系统内部订单号- 返回:
-
acquirePayDefinitionList
由子类实现加载支付定义数据。- 返回:
-
acquirePayEngineProvider
protected abstract PayEngineProvider acquirePayEngineProvider(PayDefinition payDefinition) throws PayEngineNotFoundException 根据支付定义,获取支付引擎提供者对象。- 参数:
payDefinition-- 返回:
- 抛出:
PayEngineNotFoundException
-
acquireOrder
从平台查询数据库,找出订单基本信息。- 参数:
orderId- 平台订单ID,数字- 返回:
-