package com.supplier.mapper;

import com.supplier.model.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;

@Mapper
public interface WxPayMapper {
    void pay(WxPay wxPay);

    void payUpdate(WxPay wxPay);

    int getPolling(String releUuid);

    void wxCash(WxWithdrawal wxWithdrawal);

    WxPay getRefundVal(String releUuid);

    List<WxRefund> getUserRefund(WxRefund wxRefund);

    void updateRefundType(@Param("releUuid") String releUuid, @Param("refundState") String refundState);

    WxRefund getRefund(WxRefund wxRefund);

    void buySupplierBalance(WxPay wxPay);

    void updateBalance(@Param("totalFee") Double totalFee, @Param("code") String code);

    void updateBuySupplier(WxPay buySupplier);

    int getTopUp(WxPay wxPay);

    List<WxPay> getTopUpTimeOut();

    void delTopOut(WxPay wxPay);

    void updateBuyOfferNum(BuyOfferNum buyOfferNum);

    int getOfferNum(BuyOfferNum buyOfferNum);

    List<BuyOfferNum> getOfferNumTimeOut();

    void delOfferNum(BuyOfferNum buyOfferNum);

    int getUserRefundCount(WxRefund wxRefund);

    List<WxRefund> getAuditRefund(WxRefund wxRefund);

    int getAuditRefundCount(WxRefund wxRefund);

    void deletePay(WxPay wxPay);

    void addSupplierBalanceOf(Supplier supplier);

    void subtractBalance(@Param("bigDecimal2")String bigDecimal2, @Param("code")String code);

    List<TopUpRecord> getTopUpRecord(TopUpRecord topUpRecord);

    void updateBalanceChild(@Param("totalFee") Double totalFee, @Param("code") String code);

    void addSupplierBalanceOfChild(Supplier supplier);
}
