Commit 84327cb7 authored by tianyiming's avatar tianyiming

更新索引--涉及任务下发、定时器修改、任务执行

parent b411ba69
...@@ -74,6 +74,7 @@ import org.springframework.scheduling.annotation.EnableAsync; ...@@ -74,6 +74,7 @@ import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.support.TransactionSynchronization; import org.springframework.transaction.support.TransactionSynchronization;
import org.springframework.transaction.support.TransactionSynchronizationAdapter;
import org.springframework.transaction.support.TransactionSynchronizationManager; import org.springframework.transaction.support.TransactionSynchronizationManager;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
...@@ -987,11 +988,15 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -987,11 +988,15 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
} }
planMapper.updPlanStatusOrGenDate(paramMap);// 更新下次任务生成日期 planMapper.updPlanStatusOrGenDate(paramMap);// 更新下次任务生成日期
threadPool.submit(() -> {
//存在事物,在事务提交之后执行
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() {
@Override
public void afterCommit() {
//异步存储任务和任务详情到es //异步存储任务和任务详情到es
asyncSavePlanTaskAndDetailListToEs(planTaskDetails, esPlanTaskListDtos,oldEsPlanTaskListDtos); asyncSavePlanTaskAndDetailListToEs(planTaskDetails, esPlanTaskListDtos, oldEsPlanTaskListDtos);
}
}); });
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
log.error(e.getMessage()); log.error(e.getMessage());
...@@ -1059,6 +1064,12 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1059,6 +1064,12 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
stopWatch4.start(); stopWatch4.start();
List<PlanTaskDetail> planTaskDetailList = new ArrayList<>(); List<PlanTaskDetail> planTaskDetailList = new ArrayList<>();
planTaskDetails.forEach(single ->planTaskDetailList.add(single)); planTaskDetails.forEach(single ->planTaskDetailList.add(single));
for (PlanTaskDetail taskDetail : planTaskDetailList) {
ESTaskDetailDto esTaskDetailDto = esTaskDetailDtos.stream().
filter(x -> x.getPlanTaskId().equals(String.valueOf(taskDetail.getTaskNo())) && x.getPointId().equals(String.valueOf(taskDetail.getPointId()))).collect(Collectors.toList()).get(0);
taskDetail.setName(esTaskDetailDto.getPointName());
taskDetail.setPointNo(esTaskDetailDto.getPointNo());
}
stopWatch4.stop(); stopWatch4.stop();
log.info("planTaskDetails转化,耗时:{} 秒",stopWatch4.getTotalTimeSeconds()); log.info("planTaskDetails转化,耗时:{} 秒",stopWatch4.getTotalTimeSeconds());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment