|
@@ -3,18 +3,23 @@ package beilv.competition.service.impl;
|
|
|
import beilv.common.core.text.Convert;
|
|
import beilv.common.core.text.Convert;
|
|
|
import beilv.common.utils.ShiroUtils;
|
|
import beilv.common.utils.ShiroUtils;
|
|
|
import beilv.competition.domain.Competition;
|
|
import beilv.competition.domain.Competition;
|
|
|
|
|
+import beilv.competition.domain.RedisTask;
|
|
|
import beilv.competition.mapper.CompetitionMapper;
|
|
import beilv.competition.mapper.CompetitionMapper;
|
|
|
import beilv.competition.service.ICompetitionService;
|
|
import beilv.competition.service.ICompetitionService;
|
|
|
import beilv.competition.task.CloseReg;
|
|
import beilv.competition.task.CloseReg;
|
|
|
import beilv.stadium.domain.Stadium;
|
|
import beilv.stadium.domain.Stadium;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
+import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
import javax.annotation.PostConstruct;
|
|
import javax.annotation.PostConstruct;
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.Timer;
|
|
import java.util.Timer;
|
|
|
|
|
|
|
|
|
|
+import static beilv.competition.domain.Constant.TASK_QUEUE;
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 赛事发布Service业务层处理
|
|
* 赛事发布Service业务层处理
|
|
|
*
|
|
*
|
|
@@ -24,9 +29,12 @@ import java.util.Timer;
|
|
|
@Service
|
|
@Service
|
|
|
public class CompetitionServiceImpl implements ICompetitionService {
|
|
public class CompetitionServiceImpl implements ICompetitionService {
|
|
|
|
|
|
|
|
- @Autowired
|
|
|
|
|
|
|
+ @Resource
|
|
|
private CompetitionMapper competitionMapper;
|
|
private CompetitionMapper competitionMapper;
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private StringRedisTemplate redisTemplate;
|
|
|
|
|
+
|
|
|
private final static String DAI_FA_BU = "competiton_state_1";
|
|
private final static String DAI_FA_BU = "competiton_state_1";
|
|
|
private final static String BAO_MING_ZHONG = "competiton_state_2";
|
|
private final static String BAO_MING_ZHONG = "competiton_state_2";
|
|
|
private final static String BAO_MING_JIE_SHU = "competiton_state_3";
|
|
private final static String BAO_MING_JIE_SHU = "competiton_state_3";
|
|
@@ -136,9 +144,13 @@ public class CompetitionServiceImpl implements ICompetitionService {
|
|
|
competition.setPublishBy(ShiroUtils.getSysUser().getUserId().toString());
|
|
competition.setPublishBy(ShiroUtils.getSysUser().getUserId().toString());
|
|
|
competition.setPublishName(ShiroUtils.getSysUser().getUserName());
|
|
competition.setPublishName(ShiroUtils.getSysUser().getUserName());
|
|
|
competition.setCompetitionState(BAO_MING_ZHONG);
|
|
competition.setCompetitionState(BAO_MING_ZHONG);
|
|
|
- Timer timer = new Timer();
|
|
|
|
|
|
|
+// Timer timer = new Timer();
|
|
|
//new Date(competition.getApplyStartTime().getTime() - (long) (competition.getApplyBeforeTime() * 60 * 1000))
|
|
//new Date(competition.getApplyStartTime().getTime() - (long) (competition.getApplyBeforeTime() * 60 * 1000))
|
|
|
- timer.schedule(new CloseReg(competitionMapper, competition.getId()), competition.getApplyStartTime());
|
|
|
|
|
|
|
+// timer.schedule(new CloseReg(competitionMapper, competition.getId()), competition.getApplyStartTime());
|
|
|
|
|
+ //修改使用redis的zset存储定时任务.
|
|
|
|
|
+ RedisTask redisTask = new RedisTask(competition.getId(),"competiton_state_3","payment_status_verification");
|
|
|
|
|
+ redisTemplate.opsForZSet().add(TASK_QUEUE + redisTask.getCompetitionId(), redisTask.toString(), competition.getAllowPublishTime());
|
|
|
|
|
+
|
|
|
return competitionMapper.publishCompetition(competition);
|
|
return competitionMapper.publishCompetition(competition);
|
|
|
}
|
|
}
|
|
|
|
|
|