| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- package top.lvzhiqiang.mapper;
- import org.apache.ibatis.annotations.Insert;
- import org.apache.ibatis.annotations.MapKey;
- import org.apache.ibatis.annotations.Select;
- import top.lvzhiqiang.entity.CoinHistoryOrder;
- import top.lvzhiqiang.entity.CoinMonitorCurrency;
- import top.lvzhiqiang.entity.CoinPubilcParams;
- import top.lvzhiqiang.entity.CoinTrader;
- import java.util.List;
- import java.util.Map;
- /**
- * coin-Mapper
- *
- * @author lvzhiqiang
- * 2023/9/9 17:37
- */
- public interface CoinMapper {
- @Insert({"<script>" +
- "INSERT ignore INTO coin_order_history(symbol,size,orderId,clientOid,filledQty,fee,price,priceAvg,state,side" +
- ",timeInForce,totalProfits,posSide,marginCoin,leverage,marginMode,orderType,reduceOnly,enterPointSource,tradeSide" +
- ",holdMode,orderSource,cTime,uTime)" +
- " VALUES " +
- "<foreach collection='list' item='p' index=\"index\" separator=\",\">" +
- " ( #{p.symbol}, #{p.size}, #{p.orderId}, #{p.clientOid}, #{p.filledQty}, #{p.fee}, #{p.price}, #{p.priceAvg}, #{p.state}" +
- ", #{p.side}, #{p.timeInForce}, #{p.totalProfits}, #{p.posSide}, #{p.marginCoin}, #{p.leverage}, #{p.marginMode}, #{p.orderType}" +
- ", #{p.reduceOnly}, #{p.enterPointSource}, #{p.tradeSide}, #{p.holdMode}, #{p.orderSource}, #{p.cTime}, #{p.uTime})" +
- "</foreach>" +
- "</script>"})
- int insertHistoryOrderList(List<CoinHistoryOrder> historyOrderList);
- @Select({"<script>" +
- "select * from coin_order_history WHERE 1 = 1" +
- "<if test=\"keyword != null and keyword != ''\">" +
- " and symbol like concat('%',#{keyword},'%')" +
- "</if>" +
- "<if test=\"side != null and side != ''\">" +
- " and side = #{side}" +
- "</if>" +
- " order by ${sortField} ${sort}" +
- "</script>"})
- List<CoinHistoryOrder> findHistoryOrderList(Map<String, Object> params);
- @Select("select symbol,type,category,sort from coin_monitor_currency where delete_flag = 1 order by sort")
- List<CoinMonitorCurrency> findMonitorCurrencyList();
- @Select("select * from coin_public_params where 1=1")
- @MapKey("codeKey")
- List<CoinPubilcParams> findPublicParams();
- @Insert({"<script>" +
- "INSERT INTO coin_trader(traderUid,traderNickName,maxFollowCount,followCount,totalFollowers,profitOrderCount,lossOrderCount," +
- "totalTradeCount,dailyProfitRate,dailyProfit,copyTradeDays,roi,totalProfit,totalFollowersProfit,aum,maxCallbackRate,last3wWinRate," +
- "averageWinRate,traderHeadPic,canTrace,tradingPairsAvailable,profile,lastTradeTime,modify_time)" +
- " VALUES " +
- "<foreach collection='list' item='mt' index=\"index\" separator=\",\">" +
- " (#{mt.traderUid},#{mt.traderNickName},#{mt.maxFollowCount},#{mt.followCount},#{mt.totalFollowers},#{mt.profitOrderCount},#{mt.lossOrderCount}," +
- "#{mt.totalTradeCount},#{mt.dailyProfitRate},#{mt.dailyProfit},#{mt.copyTradeDays},#{mt.roi},#{mt.totalProfit},#{mt.totalFollowersProfit},#{mt.aum}," +
- "#{mt.maxCallbackRate},#{mt.last3wWinRate},#{mt.averageWinRate},#{mt.traderHeadPic},#{mt.canTrace},#{mt.tradingPairsAvailable},#{mt.profile},#{mt.lastTradeTime}, now())" +
- " </foreach>" +
- " ON DUPLICATE KEY UPDATE traderNickName=values(traderNickName),maxFollowCount=values(maxFollowCount),followCount=values(followCount),totalFollowers=values(totalFollowers)," +
- "profitOrderCount=values(profitOrderCount),lossOrderCount=values(lossOrderCount),totalTradeCount=values(totalTradeCount),dailyProfitRate=values(dailyProfitRate)," +
- "dailyProfit=values(dailyProfit),copyTradeDays=values(copyTradeDays),roi=values(roi),totalProfit=values(totalProfit),totalFollowersProfit=values(totalFollowersProfit)," +
- "aum=values(aum),maxCallbackRate=values(maxCallbackRate),last3wWinRate=values(last3wWinRate),averageWinRate=values(averageWinRate),traderHeadPic=values(traderHeadPic)," +
- "canTrace=values(canTrace),tradingPairsAvailable=values(tradingPairsAvailable),profile=values(profile),lastTradeTime=values(lastTradeTime),modify_time=now()" +
- "</script>"})
- void insertMixTradeList(List<CoinTrader> parseMixTradeList);
- @Select({"<script>" +
- "select * from coin_trader WHERE 1 = 1" +
- "<if test=\"keyword != null and keyword != ''\">" +
- " and traderNickName like concat('%',#{keyword},'%')" +
- "</if>" +
- "<if test=\"canTrace != null and canTrace != ''\">" +
- " and canTrace = #{canTrace}" +
- "</if>" +
- " order by ${sortField} ${sort}" +
- "</script>"})
- List<CoinTrader> findMixTraderList(Map<String, Object> params);
- @Select("select concat(traderUid, '|', traderNickName) from coin_monitor_trader where delete_flag = '1'")
- List<String> findMonitorTraderList();
- }
|