1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- package com.xc.utils.task.index;
- import com.xc.dao.StockMapper;
- import com.xc.pojo.IndexInfo;
- import com.xc.service.DbStockService;
- import com.xc.service.IUserPositionService;
- import com.xc.utils.DateTimeUtil;
- import com.xc.utils.stock.BuyAndSellUtils;
- import com.xc.utils.thread.ThreadUtil;
- import com.xc.vo.stock.StockListVO;
- import org.apache.commons.lang3.StringUtils;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.scheduling.annotation.Scheduled;
- import org.springframework.stereotype.Component;
- import java.math.BigDecimal;
- import java.util.Date;
- import java.util.List;
- @Component
- public class EntrustTask {
- private static final Logger log = LoggerFactory.getLogger(EntrustTask.class);
- // private static final String am_begin = "9:30";
- //
- // private static final String am_end = "11:30";
- //
- // private static final String pm_begin = "13:00";
- //
- // private static final String pm_end = "23:00";
- @Autowired
- IUserPositionService iUserPositionService;
- @Autowired
- private StockMapper stockMapper;
- @Autowired
- DbStockService dbStockService;
- // 星期一到星期五的每天9点到15点触发 每3分钟触发一次
- @Scheduled(cron = "*/3 * * * * ?")
- public void toEntrust() {
- boolean am = true;
- boolean pm = true;
- // try {
- // // 开市时间要获取DB中的
- // am = BuyAndSellUtils.isTransTime(am_begin, am_end);
- // pm = BuyAndSellUtils.isTransTime(pm_begin, pm_end);
- // } catch (Exception e) {
- // log.error("执行定时任务出错,e = {}", e);
- // }
- // log.info("当前 am = {} pm = {}", Boolean.valueOf(am), Boolean.valueOf(pm));
- if (am || pm) {
- log.info("=====定时任务===计算委托==开始,当前时间 {} =====", DateTimeUtil.dateToStr(new Date()));
- doTask();
- log.info("=====定时任务===计算委托==结束,当前时间 {} =====", DateTimeUtil.dateToStr(new Date()));
- } else {
- log.info("当前时间不为周一至周五,或者不在交易时间内,不执行(委托)定时任务");
- }
- }
- private void doTask() {
- try {
- ThreadUtil.executeInThread(obj -> {
- iUserPositionService.fulfill();
- });
- } catch (Exception e) {
- // 数据库不存在
- log.info("数据库不存在");
- }
- }
- }
|