Commit 236f2686 authored by zhangsen's avatar zhangsen

巡检相关bug xiugai

parent 45875084
......@@ -217,6 +217,27 @@ public class PatrolDataSyncServiceImpl implements IPatrolDataSyncService {
}
}
@Override
public void planTaskDetailDataSync(List<PlanTaskDetail> planTaskDetailList) {
try {
if (CollectionUtils.isNotEmpty(planTaskDetailList)) {
planTaskDetailList.forEach(x -> {
String message = buildSyncMessage(PatrolDataSyncTopicEnum.PLAN_TASK_DETAIL.getTopic(), x);
webMqttComponent.publish(PatrolDataSyncTopicEnum.EQM_PATROL_CREATED.getTopic(), message);
if (patrolSyncSwitch) {
webMqttComponent.publish(PatrolDataSyncTopicEnum.PLAN_TASK_DETAIL.getTopic(), JSON.toJSONString(x, SerializerFeature.WriteMapNullValue));
}
});
}
} catch (Exception e) {
log.error("站端与中心级巡检数据【PlanTaskDetail】同步推送失败-----------" + e.getMessage());
}
}
public String buildSyncMessage(String topic, Object object) {
Map<String, Object> map = new HashMap<>();
map.put("topic", topic);
......
......@@ -740,6 +740,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
}
List<PlanTask> planTaskList = new ArrayList<>();
List<PlanTaskDetail> planTaskDetailListSync = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String startTime = list.get(i).get("BEGIN_TIME").toString();
......@@ -831,6 +832,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
}
// 2.保存执行数据明细表
planTaskDetail.saveAndFlush(planTaskDetailInstance);
planTaskDetailListSync.add(planTaskDetailInstance);
}
// 定时任务监控
jobService.planTaskAddJob(planTask);
......@@ -862,6 +864,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
public void afterCommit() {
// 事物提交后业务逻辑
patrolDataSyncService.planTaskDataSync(planTaskList);
patrolDataSyncService.planTaskDetailDataSync(planTaskDetailListSync);
}
});
} catch (Exception e) {
......
......@@ -2,10 +2,7 @@ package com.yeejoin.amos.patrol.business.service.intfc;
import com.yeejoin.amos.patrol.business.bo.CheckInputSyncBo;
import com.yeejoin.amos.patrol.dao.entity.Check;
import com.yeejoin.amos.patrol.dao.entity.CheckInput;
import com.yeejoin.amos.patrol.dao.entity.CheckShot;
import com.yeejoin.amos.patrol.dao.entity.PlanTask;
import com.yeejoin.amos.patrol.dao.entity.*;
import java.util.List;
......@@ -34,4 +31,6 @@ public interface IPatrolDataSyncService {
void planTaskDataSync(PlanTask planTask);
void planTaskDataSync(List<PlanTask> planTaskList);
void planTaskDetailDataSync(List<PlanTaskDetail> planTaskDetailList);
}
......@@ -198,6 +198,14 @@ public class JobService implements IJobService {
iPlanTaskDetailDao.saveAndFlush(action);
});
}
// 巡检站端与中心级数据同步
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override
public void afterCommit() {
// 事物提交后业务逻辑
patrolDataSyncService.planTaskDetailDataSync(planTaskDetails);
}
});
if (PlanTaskFinishStatusEnum.OVERTIME.getValue() == status) {
createOmissionCheckRecord(planTask);
}
......
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