xiaoyong931011
2023-05-29 7b6b9968d3729e2611737e54954bb6ebd42b53bf
twoCoin项目修改
4 files modified
78 ■■■■ changed files
src/main/java/cc/mrbird/febs/dapp/mapper/DappAKlineMapper.java 4 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java 11 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/dapp/DappAKlineMapper.xml 16 ●●●●● patch | view | raw | blame | history
src/test/java/cc/mrbird/febs/MemberTest.java 47 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/mapper/DappAKlineMapper.java
@@ -26,4 +26,8 @@
    List<AKLineLimitVo> selectListByTypeAndLimit(@Param("type")int type, @Param("kLineLimit")int kLineLimit);
    DappAKlineEntity selectOneByType();
    DappAKlineEntity selectOneHourByType();
    List<DappAKlineEntity> selectListByIds(@Param("min")Long id, @Param("max")Long id1);
}
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
@@ -1709,11 +1709,12 @@
        );
        BigDecimal coinAPrice = new BigDecimal(dataDictionaryCustom.getValue());
        DateTime dateTime = DateUtil.offsetHour(DateUtil.date(), -1);
        String format = DateUtil.format(dateTime, "yyyy-MM-dd HH");
        List<String> dataDayStrList = new ArrayList<>();
        dataDayStrList.add(format);
        List<DappAKlineEntity> dappAKlineEntities = dappAKlineMapper.selectListByTypeAndHour(dataDayStrList);
        /**
         * 查询出上一条更新的小时数据
         */
        DappAKlineEntity minRecord = dappAKlineMapper.selectOneHourByType();
        DappAKlineEntity maxRecord = dappAKlineMapper.selectOneByType();
        List<DappAKlineEntity> dappAKlineEntities = dappAKlineMapper.selectListByIds(minRecord.getId(),maxRecord.getId());
        DappAKlineEntity dappAKlineEntity = new DappAKlineEntity();
        dappAKlineEntity.setType(1);
src/main/resources/mapper/dapp/DappAKlineMapper.xml
@@ -61,4 +61,20 @@
        order by a.create_time asc
    </select>
    <select id="selectOneHourByType" resultType="cc.mrbird.febs.dapp.entity.DappAKlineEntity">
        select
            a.*
        from dapp_a_kline a
        where type = 1
        order by a.create_time desc
            limit 1
    </select>
    <select id="selectListByIds" resultType="cc.mrbird.febs.dapp.entity.DappAKlineEntity">
        select
            a.*
        from dapp_a_kline a
        where id between #{min} and #{max}
    </select>
</mapper>
src/test/java/cc/mrbird/febs/MemberTest.java
@@ -6,8 +6,10 @@
import cc.mrbird.febs.dapp.chain.ChainEnum;
import cc.mrbird.febs.dapp.chain.ChainService;
import cc.mrbird.febs.dapp.contract.ContractMain;
import cc.mrbird.febs.dapp.entity.DappAKlineEntity;
import cc.mrbird.febs.dapp.entity.DappMemberEntity;
import cc.mrbird.febs.dapp.entity.DataDictionaryCustom;
import cc.mrbird.febs.dapp.mapper.DappAKlineMapper;
import cc.mrbird.febs.dapp.mapper.DappFundFlowDao;
import cc.mrbird.febs.dapp.mapper.DappMemberDao;
import cc.mrbird.febs.dapp.mapper.DataDictionaryCustomMapper;
@@ -15,6 +17,8 @@
import cc.mrbird.febs.dapp.vo.AKLineLimitVo;
import cc.mrbird.febs.dapp.vo.AKLineVo;
import cc.mrbird.febs.rabbit.producer.ChainProducer;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONArray;
@@ -30,6 +34,7 @@
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
 * @author wzy
@@ -54,6 +59,9 @@
    private ChainProducer chainProducer;
    @Autowired
    private DappAKlineMapper dappAKlineMapper;
    @Autowired
    private RedisUtils redisUtils;
    //        String address = dappMemberEntity.getAddress();
//        String hash = ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(address, amount);
@@ -62,25 +70,32 @@
//        }
    public static void main(String[] args) {
        List<JSONObject> objects = new ArrayList<>();
        AKLineVo akLineVo = new AKLineVo();
        akLineVo.setCreateTime(DateUtil.date());
        akLineVo.setClosePrice(BigDecimal.ZERO);
        akLineVo.setOpenPrice(BigDecimal.ZERO);
        akLineVo.setLowestPrice(BigDecimal.ZERO);
        akLineVo.setHighestPrice(BigDecimal.ZERO);
        JSONObject parseObj = JSONUtil.parseObj(akLineVo);
        objects.add(parseObj);
        objects.add(parseObj);
        objects.add(parseObj);
        objects.add(parseObj);
        System.out.println(objects);
    }
    @Test
    public void tranfer(){
//        dappSystemService.antKLineMsg(1);
        dappSystemService.AntACoinInMsg(780L);
        DateTime dateTime = DateUtil.offsetHour(DateUtil.date(), -1);
        String format = DateUtil.format(dateTime, "yyyy-MM-dd HH");
        List<String> dataDayStrList = new ArrayList<>();
        dataDayStrList.add(format);
        List<DappAKlineEntity> dappAKlineEntities = dappAKlineMapper.selectListByTypeAndHour(dataDayStrList);
        DappAKlineEntity dappAKlineEntity = new DappAKlineEntity();
        if(CollUtil.isNotEmpty(dappAKlineEntities)){
            List<BigDecimal> openPriceList = dappAKlineEntities.stream().map(DappAKlineEntity::getOpenPrice).collect(Collectors.toList());
            BigDecimal openPrice = openPriceList.stream().min(BigDecimal::compareTo).get();
            System.out.println(openPrice);
            //获取最高价
            List<BigDecimal> highestPriceList = dappAKlineEntities.stream().map(DappAKlineEntity::getHighestPrice).collect(Collectors.toList());
            BigDecimal highestPrice = highestPriceList.stream().max(BigDecimal::compareTo).get();
            System.out.println(highestPrice);
            List<BigDecimal> lowestPriceList = dappAKlineEntities.stream().map(DappAKlineEntity::getLowestPrice).collect(Collectors.toList());
            BigDecimal lowestPrice = lowestPriceList.stream().min(BigDecimal::compareTo).get();
            System.out.println(lowestPrice);
        }
        System.out.println(dappAKlineEntities);
//        dappSystemService.AntACoinInMsg(780L);
//        dappSystemService.aKlineJobHour();
//        dappSystemService.aKlineJobDay();
//        dappSystemService.AntACoinInMsg(164L);