New file |
| | |
| | | package com.ruoyi.job.task; |
| | | |
| | | import com.ruoyi.other.api.feignClient.TechnicianClient; |
| | | import lombok.extern.log4j.Log4j2; |
| | | import org.springframework.data.redis.core.RedisTemplate; |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.Set; |
| | | |
| | | @Component("technicianSubscribe") |
| | | @Log4j2 |
| | | public class TechnicianSubscribe { |
| | | @Resource |
| | | private TechnicianClient technicianClient; |
| | | @Resource |
| | | private RedisTemplate<String, String> redisTemplate; |
| | | |
| | | public void updateStatus() { |
| | | long now = System.currentTimeMillis() / 1000; // 获取当前时间戳(秒) |
| | | Set<String> subscribeIds = redisTemplate.opsForZSet().rangeByScore("delay_queue:subscribe", 0, now); |
| | | if (!CollectionUtils.isEmpty(subscribeIds)) { |
| | | subscribeIds.forEach(subscribeId -> { |
| | | technicianClient.updateStatus(3, Long.valueOf(subscribeId)); |
| | | }); |
| | | } |
| | | } |
| | | } |