提交 d961e315 作者: 沈振路

添加更新客服消息发送人数的定时任务

上级 efe516d9
...@@ -17,10 +17,7 @@ import org.springframework.data.redis.core.RedisTemplate; ...@@ -17,10 +17,7 @@ import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.Calendar; import java.util.*;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Component @Component
...@@ -38,7 +35,8 @@ public class SchedulingTask { ...@@ -38,7 +35,8 @@ public class SchedulingTask {
@Autowired @Autowired
private CrowdPackageServiceImpl crowdPackageService; private CrowdPackageServiceImpl crowdPackageService;
@Autowired
private RedisTemplate<String, Object> redisTemplate;
/** /**
* 每10min扫描一次正常客服 * 每10min扫描一次正常客服
...@@ -108,4 +106,23 @@ public class SchedulingTask { ...@@ -108,4 +106,23 @@ public class SchedulingTask {
public void updateCrowdPackageNumFromRedis() { public void updateCrowdPackageNumFromRedis() {
crowdPackageService.updateCrowdPackageNumFromRedis(); crowdPackageService.updateCrowdPackageNumFromRedis();
} }
@Scheduled(cron = "0 0 1 * * ?")
public void refreshCustomrMaterialSendNum() {
List<CustomerGraphics> list = customerGraphicsService.list(new QueryWrapper<CustomerGraphics>().lt("post_time", new Date()));
Map<Object, Object> customerCount = redisTemplate.opsForHash().entries("CUSTOMER_COUNT");
Map<Long, Integer> map = new HashMap<>();
for (Map.Entry<Object, Object> objectObjectEntry : customerCount.entrySet()) {
map.put(Long.valueOf(objectObjectEntry.getKey().toString()), Integer.valueOf(objectObjectEntry.getValue().toString()));
}
List<CustomerGraphics> updateList = new ArrayList<>();
for (CustomerGraphics customerGraphics : list) {
CustomerGraphics entity = new CustomerGraphics();
entity.setId(customerGraphics.getId());
entity.setSendNum(map.getOrDefault(customerGraphics.getId(), 0));
updateList.add(entity);
}
customerGraphicsService.updateBatchById(updateList);
}
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论