TaskService.java 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. package com.fdkankan.fusion.task;
  2. import cn.hutool.core.io.FileUtil;
  3. import cn.hutool.core.io.unit.DataSizeUtil;
  4. import com.alibaba.fastjson.JSONArray;
  5. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  6. import com.fdkankan.fusion.common.util.DateUtils;
  7. import com.fdkankan.fusion.entity.*;
  8. import com.fdkankan.fusion.service.*;
  9. import com.fdkankan.redis.util.RedisUtil;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.scheduling.annotation.Scheduled;
  12. import org.springframework.stereotype.Service;
  13. import org.springframework.web.bind.annotation.PostMapping;
  14. import javax.annotation.PostConstruct;
  15. import java.util.Date;
  16. import java.util.List;
  17. import java.util.Set;
  18. import static com.fdkankan.fusion.down.CaseDownService.downProcessKey;
  19. @Service
  20. public class TaskService {
  21. @Autowired
  22. ICaseLiveService caseLiveService;
  23. @Scheduled(initialDelay = 2000, fixedDelay = 1000 * 60)
  24. public void run() {
  25. List<CaseLive> list = caseLiveService.list();
  26. for (CaseLive caseLive : list) {
  27. Date hoursTime = DateUtils.getHoursTime(caseLive.getCreateTime());
  28. if(hoursTime.getTime() <= new Date().getTime()){
  29. caseLiveService.removeById(caseLive);
  30. }
  31. }
  32. }
  33. @Autowired
  34. RedisUtil redisUtil;
  35. @PostConstruct
  36. public void cleanRedisKey(){
  37. String redisKey = String.format(downProcessKey, "*");
  38. Set<String> keys = redisUtil.keys(redisKey);
  39. if(keys != null && !keys.isEmpty()){
  40. for (String key : keys) {
  41. redisUtil.del(key);
  42. }
  43. }
  44. //modelToMedia();
  45. }
  46. @Autowired
  47. IModelService modelService;
  48. @Autowired
  49. ICommonUploadService commonUploadService;
  50. @Autowired
  51. IDictFileService dictFileService;
  52. @Autowired
  53. ITmUserService tmUserService;
  54. public void modelToMedia(){
  55. LambdaQueryWrapper<Model> wrapper = new LambdaQueryWrapper<>();
  56. wrapper.eq(Model::getType,3);
  57. wrapper.eq(Model::getCreateStatus,1);
  58. wrapper.isNotNull(Model::getModelGlbUrl);
  59. wrapper.isNotNull(Model::getUserName);
  60. List<Model> list = modelService.list(wrapper);
  61. for (Model model : list) {
  62. TmUser tmUser = tmUserService.getByUserName(model.getUserName());
  63. if(tmUser == null){
  64. continue;
  65. }
  66. String modelGlbUrl = model.getModelGlbUrl();
  67. JSONArray jsonArray = JSONArray.parseArray(modelGlbUrl);
  68. String fileUrl = (String) jsonArray.get(0);
  69. LambdaQueryWrapper<CommonUpload> wrapper1 = new LambdaQueryWrapper<>();
  70. wrapper1.eq(CommonUpload::getFileUrl,fileUrl);
  71. List<CommonUpload> list1 = commonUploadService.list(wrapper1);
  72. if(!list1.isEmpty()){
  73. continue;
  74. }
  75. CommonUpload commonUpload = new CommonUpload();
  76. commonUpload.setFileName(model.getModelTitle());
  77. commonUpload.setFileUrl(fileUrl);
  78. commonUpload.setFileSize(String.valueOf(DataSizeUtil.parse(model.getModelSize())));
  79. commonUpload.setNewFileName(model.getModelTitle());
  80. commonUpload.setFileType(3);
  81. commonUpload.setFileTypeStr("模型");
  82. commonUpload.setFileFormat(model.getModelDateType());
  83. commonUpload.setResultFileFormat(model.getModelType());
  84. commonUpload.setStatus(1);
  85. commonUpload.setUseType("ordinary");
  86. commonUploadService.save(commonUpload);
  87. DictFile dictFile = new DictFile();
  88. dictFile.setName(model.getModelTitle());
  89. dictFile.setTypeKey("media-library");
  90. dictFile.setSysUserId(tmUser.getId());
  91. dictFile.setUploadId(commonUpload.getId());
  92. dictFile.setUseType("ordinary");
  93. dictFileService.save(dictFile);
  94. }
  95. }
  96. }