mirror of
https://github.com/Cp0204/quark-auto-save.git
synced 2026-01-12 15:20:44 +08:00
在编辑任务模态框内新增保存并运行任务按钮
This commit is contained in:
parent
7b662f65bc
commit
e181211e53
@ -2654,6 +2654,9 @@
|
||||
<button type="button" class="btn btn-primary" :disabled="createTask.loading" @click="confirmEditTask">
|
||||
保存
|
||||
</button>
|
||||
<button type="button" class="btn btn-primary" :disabled="createTask.loading" @click="confirmEditAndRunTask" style="margin-left: 4px;">
|
||||
保存并运行任务
|
||||
</button>
|
||||
</template>
|
||||
<template v-else>
|
||||
<button type="button" class="btn btn-primary" :disabled="createTask.loading" @click="confirmCreateTask">
|
||||
@ -12634,6 +12637,72 @@
|
||||
this.createTask.loading = false;
|
||||
});
|
||||
},
|
||||
confirmEditAndRunTask() {
|
||||
// 确认编辑任务并立即运行
|
||||
if (this.createTask.loading) return;
|
||||
|
||||
// 复用与编辑验证相同的逻辑
|
||||
if (!this.createTask.taskData.taskname.trim()) {
|
||||
this.createTask.error = '任务名称不能为空';
|
||||
return;
|
||||
}
|
||||
if (!this.createTask.taskData.shareurl.trim()) {
|
||||
this.createTask.error = '分享链接不能为空';
|
||||
return;
|
||||
}
|
||||
if (!this.createTask.taskData.savepath.trim()) {
|
||||
this.createTask.error = '保存路径不能为空';
|
||||
return;
|
||||
}
|
||||
|
||||
this.createTask.loading = true;
|
||||
this.createTask.error = null;
|
||||
|
||||
// 更新任务数据
|
||||
const updatedTask = { ...this.createTask.taskData };
|
||||
|
||||
// 应用全局插件配置
|
||||
this.applyGlobalPluginConfig(updatedTask);
|
||||
|
||||
// 处理命名模式
|
||||
if (updatedTask.use_sequence_naming) {
|
||||
updatedTask.pattern = updatedTask.sequence_naming;
|
||||
} else if (updatedTask.use_episode_naming) {
|
||||
updatedTask.pattern = updatedTask.episode_naming;
|
||||
}
|
||||
|
||||
// 更新任务列表中的任务
|
||||
if (this.createTask.editTaskIndex !== null && this.formData.tasklist && this.formData.tasklist[this.createTask.editTaskIndex]) {
|
||||
this.$set(this.formData.tasklist, this.createTask.editTaskIndex, updatedTask);
|
||||
}
|
||||
|
||||
// 保存配置
|
||||
axios.post('/update', this.formData)
|
||||
.then(response => {
|
||||
if (response.data.success) {
|
||||
this.configModified = false;
|
||||
this.showToast('任务编辑成功并开始运行', 'success');
|
||||
this.fetchUserInfo();
|
||||
this.updateTasklistMetadata();
|
||||
const taskIndex = this.createTask.editTaskIndex;
|
||||
this.createTask.loading = false;
|
||||
this.cancelCreateTask();
|
||||
// 稍后运行任务,保证模态框关闭完成
|
||||
setTimeout(() => {
|
||||
if (taskIndex !== null && taskIndex >= 0) {
|
||||
this.runScriptNow(taskIndex);
|
||||
}
|
||||
}, 300);
|
||||
} else {
|
||||
alert(response.data.message);
|
||||
this.createTask.loading = false;
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
alert("保存失败: " + (error.response?.data?.message || error.message || "未知错误"));
|
||||
this.createTask.loading = false;
|
||||
});
|
||||
},
|
||||
confirmCreateAndRunTask() {
|
||||
// 确认创建并运行任务
|
||||
if (this.createTask.loading) return;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user