package com.tzy.framework.pay.service;

import com.tzy.common.dto.OutDTO;
import com.tzy.framework.pay.dto.PaymentInfoResponseDto;
import com.tzy.framework.pay.dto.PaymentRequestDto;
import com.tzy.framework.pay.dto.RefundRequestDto;
import com.tzy.framework.pay.dto.ResultMap;

import java.math.BigDecimal;
import java.util.Map;

public interface HmPayService {

    public String hmTradeCreate(String payWay ,String buyerId, String orderNo, BigDecimal totalAmount, String body);

    public String tradeCreate(Map<String,Object> param);

    public ResultMap tradeCreate(PaymentRequestDto paymentRequestDto);

    public ResultMap refundOrder(Map<String,Object> param);

    public OutDTO queryOrder(Map<String,Object> param);

    public PaymentInfoResponseDto queryOrder(String appid,String orderNo);

    public OutDTO queryRefundOrder(Map<String,Object> param);

    public OutDTO cancelOrder(Map<String,Object> param);

    public ResultMap tradeCreateNew(PaymentRequestDto paymentRequestDto);

    public ResultMap refundOrder(RefundRequestDto refundRequestDto);

    public PaymentInfoResponseDto queryOrder(PaymentRequestDto paymentRequestDto);

}
