feat: 新增取消任务
This commit is contained in:
parent
41ad507f68
commit
478f8c4549
@ -123,6 +123,35 @@ public class PrintController implements PrintService {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 取消单个任务
|
||||||
|
*
|
||||||
|
* @param taskId 任务ID
|
||||||
|
* @return 取消结果
|
||||||
|
*/
|
||||||
|
@DeleteMapping("queue/task/{taskId}")
|
||||||
|
public Map<String, Object> cancelTask(@PathVariable String taskId) {
|
||||||
|
Map<String, Object> result = new HashMap<>();
|
||||||
|
try {
|
||||||
|
boolean cancelled = printQueueService.cancelTask(taskId);
|
||||||
|
if (cancelled) {
|
||||||
|
result.put("success", true);
|
||||||
|
result.put("message", "任务已取消");
|
||||||
|
result.put("taskId", taskId);
|
||||||
|
} else {
|
||||||
|
result.put("success", false);
|
||||||
|
result.put("message", "未找到指定任务");
|
||||||
|
result.put("taskId", taskId);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
result.put("success", false);
|
||||||
|
result.put("message", "取消任务失败: " + e.getMessage());
|
||||||
|
result.put("taskId", taskId);
|
||||||
|
}
|
||||||
|
result.put("timestamp", System.currentTimeMillis());
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 搜索打印任务
|
* 搜索打印任务
|
||||||
*
|
*
|
||||||
|
|||||||
@ -383,6 +383,30 @@ public class PrintQueueService {
|
|||||||
return clearedCount;
|
return clearedCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 取消指定任务
|
||||||
|
* @param taskId 任务ID
|
||||||
|
* @return 是否成功取消
|
||||||
|
*/
|
||||||
|
public boolean cancelTask(String taskId) {
|
||||||
|
// 检查当前任务
|
||||||
|
if (currentTask != null && taskId.equals(currentTask.getId())) {
|
||||||
|
log.info("取消当前正在执行的任务: {}", taskId);
|
||||||
|
currentTask.setStatus("cancelled");
|
||||||
|
currentTask = null;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 从队列中移除任务
|
||||||
|
boolean removed = printQueue.removeIf(task -> taskId.equals(task.getId()));
|
||||||
|
if (removed) {
|
||||||
|
log.info("成功从队列中取消任务: {}", taskId);
|
||||||
|
} else {
|
||||||
|
log.warn("未找到要取消的任务: {}", taskId);
|
||||||
|
}
|
||||||
|
return removed;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取历史服务实例
|
* 获取历史服务实例
|
||||||
*
|
*
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user