feat: 运行结束后保留上次运行结果

This commit is contained in:
uye
2026-03-19 05:34:05 +08:00
parent eb0b730160
commit f8b64ef908
3 changed files with 15 additions and 3 deletions

View File

@@ -1042,7 +1042,6 @@ public class AsstProxy
foreach (var i in Instances.TaskQueueViewModel.TaskItemViewModels)
{
i.TaskId = 0;
i.Status = (int)TaskStatus.Idle;
}
_tasksStatus.Clear();
break;
@@ -1192,7 +1191,6 @@ public class AsstProxy
foreach (var i in Instances.TaskQueueViewModel.TaskItemViewModels)
{
i.TaskId = 0;
i.Status = (int)TaskStatus.Idle;
}
_tasksStatus.Clear();

View File

@@ -42,8 +42,13 @@ public class TaskItemViewModel : PropertyChangedBase
{
get => _isEnable;
set {
SetAndNotify(ref _isEnable, value);
if (!SetAndNotify(ref _isEnable, value))
{
return;
}
ConfigFactory.CurrentConfig.TaskQueue[Index].IsEnable = value;
Status = 0;
}
}

View File

@@ -1684,6 +1684,7 @@ public class TaskQueueViewModel : Screen
}
MainTasksCompletedCount = 0;
ResetTaskItemStatuses();
// 所有提前 return 都要放在 _runningState.SetIdle(false) 之前,否则会导致无法再次点击开始
_runningState.SetIdle(false);
@@ -1809,6 +1810,14 @@ public class TaskQueueViewModel : Screen
}
}
private void ResetTaskItemStatuses()
{
foreach (var item in TaskItemViewModels)
{
item.Status = (int)Main.TaskStatus.Idle;
}
}
public void ManualStop()
{
if (Stopping || _runningState.GetIdle())