AnnouncingTask.java 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. //package com.izouma.nineth.service.scheduledTask;
  2. //
  3. //import cn.hutool.core.util.ObjectUtil;
  4. //import com.izouma.nineth.domain.Collection;
  5. //import com.izouma.nineth.enums.SubscribeStatus;
  6. //import com.izouma.nineth.repo.CollectionRepo;
  7. //import io.jsonwebtoken.lang.Collections;
  8. //import org.springframework.beans.factory.annotation.Autowired;
  9. //import org.springframework.context.annotation.Configuration;
  10. //import org.springframework.scheduling.annotation.EnableScheduling;
  11. //import org.springframework.scheduling.annotation.SchedulingConfigurer;
  12. //import org.springframework.scheduling.config.ScheduledTaskRegistrar;
  13. //
  14. //import java.time.LocalDateTime;
  15. //import java.time.ZoneId;
  16. //import java.util.ArrayList;
  17. //import java.util.Comparator;
  18. //import java.util.Date;
  19. //import java.util.List;
  20. //import java.util.stream.Collectors;
  21. //
  22. //
  23. //
  24. //
  25. //@Configuration
  26. //@EnableScheduling
  27. //public class AnnouncingTask extends ScheduleConfig {
  28. //
  29. // @Autowired
  30. // private CollectionRepo collectionRepo;
  31. //
  32. //
  33. // private List<Collection> collections = new ArrayList();
  34. // private Date time;
  35. // @Override
  36. // public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
  37. // taskRegistrar.addTriggerTask(() -> {
  38. // b:
  39. // if (Collections.isEmpty(collections)){
  40. // return;
  41. // }else {
  42. // for (Collection collection : collections) {
  43. // if (collection.getPublishTime().isBefore(LocalDateTime.now()) && collection.getPublishTime().isBefore(LocalDateTime.now().minusSeconds(2))){
  44. // collectionRepo.updateSubscribeStatus(collection.getId(), SubscribeStatus.ANNOUNCING);
  45. // time = null;
  46. // collections.remove(0);
  47. // break b;
  48. // }
  49. // }
  50. // }
  51. // }, triggerContext -> {
  52. // if (ObjectUtil.isEmpty(time)){
  53. // LocalDateTime startTime = LocalDateTime.now();
  54. // LocalDateTime endTime = startTime.plusMinutes(4);
  55. // List<Collection> collectionList = collectionRepo.findAllByEndTimeLessThanEqualAndPublishTimeGreaterThanEqual(startTime, endTime);
  56. // if (Collections.isEmpty(collectionList)) {
  57. // time = Date.from(endTime.minusSeconds(5).atZone(ZoneId.systemDefault()).toInstant());
  58. // }else {
  59. // collections = collectionList.stream().sorted(Comparator.comparing(Collection::getPublishTime)).collect(Collectors.toList());
  60. // time = Date.from(collections.get(0).getPublishTime().minusSeconds(2).atZone(ZoneId.systemDefault()).toInstant());
  61. // }
  62. // }
  63. // return time;
  64. // });
  65. // }
  66. //}