REM:
1. 增加处置设备添加处置任务失败后重试功能
This commit is contained in:
HuangXin 2021-01-19 10:43:41 +08:00
parent e8937bfd44
commit bf512cab01
3 changed files with 32 additions and 6 deletions

View File

@ -136,6 +136,15 @@ public interface DeviceTaskManager {
*/ */
DeviceTask getTaskById(Long id); DeviceTask getTaskById(Long id);
/**
* Device task created boolean.
*
* @param taskId the task id
* @param devId the dev id
* @return the boolean
*/
boolean deviceTaskCreated(Long taskId, Long devId);
/** /**
* Gets peng xin task. * Gets peng xin task.
* *

View File

@ -25,6 +25,18 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
@Resource @Resource
private DeviceTaskMapper deviceTaskMapper; private DeviceTaskMapper deviceTaskMapper;
/**
* Device task created boolean.
*
* @param taskId the task id
* @param devId the dev id
* @return the boolean
*/
@Override
public boolean deviceTaskCreated(Long taskId, Long devId) {
return deviceTaskMapper.getTaskByDetails(taskId, devId).size() != 0;
}
/** /**
* Add dispose device task info boolean. * Add dispose device task info boolean.
* *
@ -80,11 +92,11 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
} }
/** /**
* Change dispose device task info dev status long. * Change dispose device task info dev status int.
* *
* @param id the id * @param id the id
* @param devStatus the dev status * @param devStatus the dev status
* @return the long * @return the int
*/ */
@Override @Override
public int changeDisposeDeviceTaskInfoDevStatus(Long id, Long devStatus) { public int changeDisposeDeviceTaskInfoDevStatus(Long id, Long devStatus) {
@ -297,9 +309,9 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
} }
/** /**
* Gets PengXin device task info. * Get peng xin task list.
* *
* @return the minId task info. * @return the list
*/ */
@Override @Override
public List<DeviceTask> getPengXinTask(){ public List<DeviceTask> getPengXinTask(){

View File

@ -462,7 +462,7 @@ public class DeviceTaskManagerServiceImpl implements DeviceTaskManagerService {
} }
// 对新建的任务创建对应处置设备任务信息 // 对新建的任务创建对应处置设备任务信息
for (DisposeTask v : disposeTaskManager.getNewDisposeTasks()) { for (DisposeTask v : disposeTaskManager.getExpiredTasks()) {
// 设置任务状态, 开始创建任务 // 设置任务状态, 开始创建任务
disposeTaskManager.changeDisposeTaskStatus(v.getId(), DisposeTaskStatus.TASK_STARTING); disposeTaskManager.changeDisposeTaskStatus(v.getId(), DisposeTaskStatus.TASK_STARTING);
@ -482,8 +482,13 @@ public class DeviceTaskManagerServiceImpl implements DeviceTaskManagerService {
// 判断设备是否就绪 // 判断设备是否就绪
.filter(c -> c.getDb().deviceReady()) .filter(c -> c.getDb().deviceReady())
.forEach(d -> { .forEach(d -> {
log.info("Add dispose task for device: {}", d.getDev()); // 检查当前设备是否已经创建了该任务
if (deviceTaskManager.deviceTaskCreated(v.getId(),
d.getDev().getId())) {
return;
}
log.info("Add dispose task for device: {}", d.getDev());
if (!deviceTaskManager if (!deviceTaskManager
.addDisposeDeviceTaskInfo(v.getId(), .addDisposeDeviceTaskInfo(v.getId(),
d.getDev().getId(), d.getDev().getId(),