package com.oying.modules.hwc.service; import com.alibaba.fastjson2.JSONObject; import com.oying.modules.hwc.domain.HwcResponse; import com.oying.utils.enums.PayTypeEnum; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.NotNull; import java.io.IOException; import java.util.Map; /** * @author xin * @description * @date 2025/1/23 下午3:55 */ public interface SwiftPassService { /** * <一句话功能简述> * <功能详细描述>支付请求 * * @see [类、类#方法、类#成员] */ HwcResponse pay(String ip, String total, String timeExpire, String description, String openId, String orderNum, PayTypeEnum status) throws IOException; /** * <一句话功能简述> * <功能详细描述>订单查询 * * @see [类、类#方法、类#成员] */ JSONObject query(String orderNum, PayTypeEnum status) throws IOException; void closeOrder(String outTradeNo, PayTypeEnum status) throws IOException; /** * <一句话功能简述> * <功能详细描述>退款 * * @see [类、类#方法、类#成员] */ Map refund(String returnNum, String orderNum, @NotNull(message = "备注不能为空") String reason, long refund, long total, PayTypeEnum payType) throws IOException; void alipayCallback(HttpServletRequest request, HttpServletResponse response); void returnNotify(HttpServletRequest request, HttpServletResponse response); }