package com.yami.trading.service;
|
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.yami.trading.bean.contract.domain.ContractOrder;
|
import com.yami.trading.bean.future.domain.FuturesOrder;
|
import com.yami.trading.bean.model.Wallet;
|
import com.yami.trading.bean.model.WalletExtend;
|
import com.yami.trading.service.impl.ContractAndFutureProfit;
|
|
import java.io.Serializable;
|
import java.math.BigDecimal;
|
import java.util.List;
|
import java.util.Map;
|
|
public interface WalletService extends IService<Wallet> {
|
Wallet findByUserId(String userId);
|
public List<WalletExtend> findExtend(String partyId, List<String> list_symbol);
|
|
public List<WalletExtend> findExtend(String partyId);
|
|
WalletExtend saveExtendByPara(String userId, String wallettype);
|
|
|
public Wallet saveWalletByPartyId(String partyId);
|
/**
|
*
|
* @param partyId
|
* @param walletType
|
* @param amount 修改的金额
|
*/
|
public void updateExtend(String partyId, String walletType, double amount);
|
|
/**
|
* 修改拓展钱包 余额 及冻结余额
|
*/
|
public void updateExtend(String partyId, String walletType, double amount, double frozenAmount);
|
/**
|
* 获取总数
|
* @return
|
*/
|
BigDecimal sumMoney(List<String> userIds);
|
void updateMoney(String symbol, String userId, BigDecimal moneyRevise);
|
|
/**
|
* 更新账号余额
|
* @param userId 用户id
|
* @param money 交易金额
|
* @param amountFee 手续费
|
* @param category 交易类型
|
* @param walletType 账户类型 usdt eth
|
* @param contentType 资金日志类型
|
* @param log 日志
|
*/
|
void updateMoney(String symbol,String userId, BigDecimal money, BigDecimal amountFee,
|
String category, String walletType, String contentType, String log);
|
|
// /**
|
// * 获取总资产
|
// * @param userId
|
// * @return
|
// */
|
// AssetsDto getAssets(String userId);
|
|
/**
|
* 获取其他拓展钱包币种的余额
|
*/
|
public Map<String, Object> getMoneyAll(Serializable partyId);
|
public Map<String, Object> getMoneyAll(Serializable partyId, String symbolType);
|
|
/**
|
* 获取币种分类余额 和全部总余额
|
*
|
* @param partyId
|
* @param symbolType
|
* @return
|
*/
|
Map<String, Object> getTotalAssets(String partyId, String symbolType);
|
|
/*
|
* 获取 单个订单 永续合约总资产、总保证金、总未实现盈利
|
*/
|
public Map<String, BigDecimal> getMoneyContractByOrder(ContractOrder order);
|
|
/*
|
* 获取 单个订单 交割合约总资产、总未实现盈利
|
*/
|
public Map<String, Double> getMoneyFuturesByOrder(FuturesOrder order);
|
|
void update(String userId, double gift_sum);
|
|
/**
|
* 重置模拟账户主钱包余额(用于模拟账户重置资金)
|
* @param userId 模拟账户用户ID
|
* @param amount 重置后的金额
|
*/
|
void resetSimWallet(String userId, double amount);
|
|
/*
|
* 获取 所有订单 永续合约总资产、总保证金、总未实现盈利
|
*/
|
public Map<String, Double> getMoneyContract(Serializable partyId, String symbolType);
|
public void updateExtendWithLockAndFreeze(String partyId, String walletType, double amount, double lockAmount, double freezeAmount);
|
|
public void updateWithLockAndFreeze(String partyId, double amount,double lockAmount,double freezeAmount);
|
|
/**
|
* 计算合约盈亏
|
* @param partyId
|
* @param symbolType
|
* @return
|
*/
|
ContractAndFutureProfit calculateContractAndFutureProfit(String partyId, String symbolType);
|
|
}
|