package cc.mrbird.febs.dapp.service; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.dapp.dto.*; import cc.mrbird.febs.dapp.entity.DappAccountMoneyChangeEntity; import cc.mrbird.febs.dapp.entity.DappFundFlowEntity; import cc.mrbird.febs.dapp.entity.DappWalletCoinEntity; import cc.mrbird.febs.dapp.entity.DappWalletMineEntity; import cc.mrbird.febs.dapp.vo.ActiveNftListVo; import cc.mrbird.febs.dapp.vo.WalletInfoVo; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springframework.web.bind.annotation.RequestBody; import java.math.BigDecimal; import java.util.List; import java.util.Map; public interface DappWalletService { WalletInfoVo walletInfo(); List recordInPage(RecordInPageDto recordInPageDto); IPage fundFlowInPage(DappFundFlowEntity dappFundFlowEntity, QueryRequest request); IPage walletCoinInPage(DappWalletCoinEntity walletCoin, QueryRequest request); IPage walletMineInPage(DappWalletMineEntity walletMine, QueryRequest request); IPage accountMoneyChangeInPage(DappAccountMoneyChangeEntity change, QueryRequest request); Long transfer(TransferDto transferDto); BigDecimal calPrice(PriceDto priceDto); void withdraw(WithdrawDto withdrawDto); void updateWalletCoinWithLock(BigDecimal amount, Long memberId, int type); void updateWalletMineWithLock(BigDecimal amount, Long memberId, int type); void addFrozenAmountWithLock(BigDecimal amount, Long memberId); void releaseFrozenAmountWithLock(Long memberId); DappWalletCoinEntity findByMemberId(Long memberId); }