| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- package top.lvzhiqiang.mapper;
- import org.apache.ibatis.annotations.Insert;
- import org.apache.ibatis.annotations.MapKey;
- import org.apache.ibatis.annotations.Select;
- import org.apache.ibatis.annotations.Update;
- import top.lvzhiqiang.entity.*;
- 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();
- @Select({"<script>" +
- "select * from coin_watchlist WHERE delete_flag = 1" +
- "<if test=\"keyword != null and keyword != ''\">" +
- " and name like concat('%',#{keyword},'%')" +
- "</if>" +
- "<if test=\"filterField != null and filterField != ''\">" +
- " and filter_flag = #{filterField}" +
- "</if>" +
- "<if test=\"trackCategoryField != null and trackCategoryField != ''\">" +
- " and track_category like concat('%',#{trackCategoryField},'%')" +
- "</if>" +
- " order by ${sortField} ${sort}" +
- "</script>"})
- List<CoinWatchlist> findWatchlistList(Map<String, Object> params);
- @Update("update coin_watchlist set total_market_ranking=#{totalMarketRanking},total_market_value=#{totalMarketValue}," +
- "mark_price=#{markPrice},highest_historical_price=#{highestHistoricalPrice},lowest_historical_price=#{lowestHistoricalPrice}," +
- "highest_historical_date=#{highestHistoricalDate},lowest_historical_date=#{lowestHistoricalDate},increase_multiple=#{increaseMultiple}," +
- "issuing_days=#{issuingDays},modify_time=now() where id = #{id}")
- int updateCoinWatchlist(CoinWatchlist coinWatchlist);
- @Update("update coin_watchlist set remark=#{remark},modify_time=now() where symbol = #{symbol}")
- int updateCoinWatchlistRemark(CoinWatchlist coinWatchlist);
- @Select("select * from coin_watchlist where symbol = #{symbol}")
- CoinWatchlist findWatchlistBySymbol(String symbol);
- }
|