ImportJobService.java 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package com.example.xiaoshiweixinback.service.quartzService;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.example.xiaoshiweixinback.domain.PatentUpdateRecord;
  4. import com.example.xiaoshiweixinback.entity.dto.patent.ImportTaskAMVO;
  5. import com.example.xiaoshiweixinback.entity.quartz.QrtzTaskDTO;
  6. import com.example.xiaoshiweixinback.entity.quartz.QuartzVO;
  7. import com.example.xiaoshiweixinback.entity.quartzTask.UpdatePatentDTO;
  8. import com.example.xiaoshiweixinback.service.PatentUpdateRecordService;
  9. import com.example.xiaoshiweixinback.service.importPatent.ImportFromWebToEsService;
  10. import lombok.RequiredArgsConstructor;
  11. import org.quartz.DisallowConcurrentExecution;
  12. import org.quartz.JobDataMap;
  13. import org.quartz.JobExecutionContext;
  14. import org.quartz.JobExecutionException;
  15. import org.springframework.scheduling.quartz.QuartzJobBean;
  16. import org.springframework.stereotype.Service;
  17. import java.util.List;
  18. @DisallowConcurrentExecution
  19. @RequiredArgsConstructor
  20. public class ImportJobService extends QuartzJobBean {
  21. private final ImportFromWebToEsService importFromWebToEsService;
  22. private final PatentUpdateRecordService patentUpdateRecordService;
  23. @Override
  24. public void executeInternal(JobExecutionContext context) throws JobExecutionException {
  25. JobDataMap jobDataMap = context.getTrigger().getJobDataMap();
  26. QrtzTaskDTO qrtzTask = (QrtzTaskDTO) jobDataMap.get("qrtzTask");
  27. String parameter = qrtzTask.getParameter();
  28. if (parameter != null) {
  29. List<UpdatePatentDTO> updatePatentDTOS = JSONArray.parseArray(parameter, UpdatePatentDTO.class);
  30. for (UpdatePatentDTO updatePatentDTO : updatePatentDTOS) {
  31. PatentUpdateRecord patentUpdateRecord= patentUpdateRecordService.addLastRecord(updatePatentDTO.getDbType(),updatePatentDTO.getSearchCondition());
  32. ImportTaskAMVO importTaskAMVO = new ImportTaskAMVO();
  33. importTaskAMVO.setSearchCondition(updatePatentDTO.getSearchCondition());
  34. importTaskAMVO.setOrderBy("PD");
  35. importTaskAMVO.setOrderByType("DESC");
  36. importTaskAMVO.setDbType(updatePatentDTO.getDbType());
  37. importFromWebToEsService.ImportTask(importTaskAMVO);
  38. }
  39. }
  40. }
  41. }