diff --git a/src/gui/ALAddTimerTaskDialog.py b/src/gui/ALAddTimerTaskDialog.py
index 0dbb01c..a21fa80 100644
--- a/src/gui/ALAddTimerTaskDialog.py
+++ b/src/gui/ALAddTimerTaskDialog.py
@@ -36,6 +36,7 @@ class TimerTaskStatus(Enum):
READY = "已就绪"
RUNNING = "执行中"
EXECUTED = "已执行"
+ ERROR = "执行失败"
OUTDATED = "已过期"
diff --git a/src/gui/ALTimerTaskWidget.py b/src/gui/ALTimerTaskWidget.py
index 1063f17..c656e49 100644
--- a/src/gui/ALTimerTaskWidget.py
+++ b/src/gui/ALTimerTaskWidget.py
@@ -94,6 +94,9 @@ class TimerTaskItemWidget(QWidget):
case TimerTaskStatus.EXECUTED:
TaskStatusText = "已执行"
TaskStatusColor = "#4CAF50"
+ case TimerTaskStatus.ERROR:
+ TaskStatusText = "执行失败"
+ TaskStatusColor = "#FF5722"
case TimerTaskStatus.OUTDATED:
TaskStatusText = "已过期"
TaskStatusColor = "#FF5722"
@@ -315,6 +318,7 @@ class ALTimerTaskWidget(QWidget, Ui_ALTimerTaskWidget):
pending = 0
in_queue = 0
executed = 0
+ invalid = 0
total = len(self.__timer_tasks)
for timer_task in self.__timer_tasks:
if timer_task["status"] == TimerTaskStatus.PENDING:
@@ -324,10 +328,14 @@ class ALTimerTaskWidget(QWidget, Ui_ALTimerTaskWidget):
in_queue += 1
elif timer_task["status"] == TimerTaskStatus.EXECUTED:
executed += 1
+ elif timer_task["status"] == TimerTaskStatus.ERROR\
+ or timer_task["status"] == TimerTaskStatus.OUTDATED:
+ invalid += 1
self.TotalTaskLabel.setText(f"总任务:{total}")
self.PendingTaskLabel.setText(f"待执行:{pending}")
self.InQueueTaskLabel.setText(f"队列中:{in_queue}")
self.ExecutedTaskLabel.setText(f"已执行:{executed}")
+ self.InvalidTaskLabel.setText(f"无效的:{invalid}")
def updateTimerTaskList(
@@ -470,3 +478,14 @@ class ALTimerTaskWidget(QWidget, Ui_ALTimerTaskWidget):
if task["task_uuid"] == timer_task["task_uuid"]:
task["status"] = TimerTaskStatus.EXECUTED
self.timerTasksChanged.emit()
+
+ @Slot(dict)
+ def onTimerTaskIsError(
+ self,
+ timer_task: dict
+ ):
+
+ for task in self.__timer_tasks:
+ if task["task_uuid"] == timer_task["task_uuid"]:
+ task["status"] = TimerTaskStatus.ERROR
+ self.timerTasksChanged.emit()
diff --git a/src/gui/ALTimerTaskWidget.ui b/src/gui/ALTimerTaskWidget.ui
index fb43171..363ead3 100644
--- a/src/gui/ALTimerTaskWidget.ui
+++ b/src/gui/ALTimerTaskWidget.ui
@@ -137,6 +137,30 @@
+ -
+
+
+
+ 70
+ 25
+
+
+
+
+ 25
+ 70
+
+
+
+ QLabel {
+ color: #FF5722
+}
+
+
+ 无效的:0
+
+
+
-