package com.iformall.service; import com.iformall.common.ResultData; import com.iformall.domain.po.WxAppinfo; import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.WxPayBill; import com.iformall.enums.EnumPayWay; import java.util.Map; /** * @author gongbiao */ public interface WxPayBillService { /** * 创建支付订单 * * @param record 支付订单请求 * @param payWay * @return */ ResultData createPayBill(WxMerchant merchant,Integer billTypeValue,WxAppinfo appInfo, WxPayBill record, EnumPayWay payWay); /** * 微信支付订单查询 * @param appInfo 支付订单Appinfo * @param record 支付订单 */ ResultData payBillQuery(WxAppinfo appInfo, WxPayBill record); /** * 微信支付关闭订单 * @param appInfo 支付订单Appinfo * @param record 支付订单 */ ResultData payBillClose(WxAppinfo appInfo, WxPayBill record); /** * 异步通知 * * @param paramMap 异步通知参数 * @param payWay 支付方式 * @return */ String notify(String tenantId,Map paramMap, EnumPayWay payWay); /** * 支付成功处理 * * @param record * @param transactionId */ void handleBillPaySuccess(WxPayBill record, String transactionId); /** * 支付状态处理 * * @param record */ void handlePayBillStatusUpdate(WxPayBill record); WxPayBill getById(Long payBillId); void updatePayBillStatus(WxPayBill payBill); WxPayBill queryPayBill(WxPayBill payBill); }