xiaoyong931011
2021-12-08 f5e6133809c553cfd9fb28ee61019927c547c374
src/main/java/com/xcong/excoin/quartz/job/KLineGeneratorJob.java
@@ -1,28 +1,17 @@
package com.xcong.excoin.quartz.job;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.huobi.client.model.Candlestick;
import com.xcong.excoin.modules.coin.dao.OrderCoinDealDao;
import com.xcong.excoin.modules.coin.entity.OrderCoinsDealEntity;
import com.xcong.excoin.modules.coin.service.OrderCoinService;
import com.xcong.excoin.processor.CoinProcessorFactory;
import com.xcong.excoin.trade.TradePlateModel;
import com.xcong.excoin.utils.RedisUtils;
import com.xcong.excoin.websocket.CandlestickModel;
import com.xcong.excoin.websocket.NewCandlestick;
import com.xcong.excoin.websocket.TradePlateSendWebSocket;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import java.util.Random;
/**
@@ -31,45 +20,10 @@
 */
@Component
@Slf4j
@ConditionalOnProperty(prefix = "app", name = "exchange-trade", havingValue = "true")
public class KLineGeneratorJob {
    @Resource
    private CoinProcessorFactory processorFactory;
    @Resource
   private OrderCoinService orderCoinService;
   @Scheduled(cron = "0/1 * * * * *")
   public void test(){
//      for(int i=1;i<=2;i++){
//         OrderCoinsDealEntity detail = new OrderCoinsDealEntity();
//         detail.setMemberId(13L);
//         //detail.setOrderId(111);
//         detail.setOrderNo("tete");
//         detail.setOrderType(1);
//         detail.setTradeType(1);
//         detail.setSymbol("NEKK");
//         detail.setSymbolCnt(new BigDecimal(10));
//         detail.setEntrustPrice(new BigDecimal(10));
//         detail.setDealPrice(new BigDecimal(i*10*Math.random()));
//         detail.setDealAmount(new BigDecimal(50));
//         detail.setFeeAmount(new BigDecimal(1));
//         detail.setOrderStatus(OrderCoinsDealEntity.ORDERSTATUS_DONE);
//         orderCoinDealDao.insert(detail);
//      }
      Random random = new Random();
      Integer type = OrderCoinsDealEntity.ORDERTYPE_BUY;
      Integer tradeType = OrderCoinsDealEntity.TRADETYPE_FIXEDPRICE;
      int i = random.nextInt(100);
      if(i==0){
         i=10;
      }
      BigDecimal price =   new BigDecimal(i);
      orderCoinService.initOrders("NEKK",type,tradeType,price,new BigDecimal(2),null);
      orderCoinService.initOrders("NEKK",OrderCoinsDealEntity.ORDERTYPE_SELL,tradeType,price,new BigDecimal(2),null);
   }
    /**
@@ -130,6 +84,11 @@
               long time = calendar.getTimeInMillis();
   
               processor.generateKLine(1, Calendar.HOUR_OF_DAY, time);
               // 四小时K线
            int hour = calendar.get(Calendar.HOUR_OF_DAY);
            if(hour%4==0){
               processor.generateKLine(4, Calendar.HOUR_OF_DAY, time);
            }
           }
        });
    }