refactor(library): 🤐 优化任务处理逻辑并引入静默跳过机制

* 引入 `SILENT_TASK_TYPES` 常量,统一管理需要静默跳过的任务类型(包括爆料任务、值友专享任务及下载任务)。
* 重构任务循环逻辑,通过检查 `SILENT_TASK_TYPES` 实现对特定任务类型的统一过滤。
* 移除原有的硬编码 `else if` 判断,提升代码的可维护性与扩展性。
* 优化评论任务失败时的日志输出,增加任务名称 `task_name` 以便更清晰地定位问题。
This commit is contained in:
Hex
2026-10-14 23:47:11 +08:00
parent 93cdaf5d3e
commit 9aa6d3dbae

View File

@@ -8,6 +8,16 @@ const {
// ------------------------------------
// 静默跳过的任务类型
const SILENT_TASK_TYPES = [
// 爆料任务
'publish.baoliao_new',
// 值友专享任务
'shopping.zhiyouzhuanxiang',
// 下载张大妈任务
'interactive.download_zhangdama'
];
class SmzdmTaskBot extends SmzdmBot {
constructor(cookie, env) {
super(cookie);
@@ -36,6 +46,11 @@ class SmzdmTaskBot extends SmzdmBot {
}
// 未完成任务
else if (task.task_status == '2') {
// 不做也不提示的任务类型
if (SILENT_TASK_TYPES.indexOf(task.task_event_type) > -1) {
continue;
}
// 浏览文章任务
if (task.task_event_type == 'interactive.view.article') {
const { isSuccess } = await this.doViewTask(task);
@@ -122,7 +137,7 @@ class SmzdmTaskBot extends SmzdmBot {
await waitHuman(5, 15);
}
else {
this.$env.log('🟡请设置 SMZDM_COMMENT 环境变量后才能做评论任务!');
this.$env.log(`🟡跳过[${task.task_name}]任务:请设置 SMZDM_COMMENT 环境变量后才能做评论任务!`);
}
}
// 站外浏览任务
@@ -157,14 +172,6 @@ class SmzdmTaskBot extends SmzdmBot {
await waitHuman(5, 15);
}
// 爆料任务,静默跳过
else if (task.task_event_type == 'publish.baoliao_new') {
continue;
}
// 下载张大妈任务
else if (task.task_event_type == 'interactive.download_zhangdama') {
this.$env.log(`跳过[${task.task_name}]任务:APP 只跳转下载页,没有完成接口`);
}
// 未知类型
else {
this.$env.log(`跳过[${task.task_name}]任务:未知类型 ${task.task_event_type}`);