haha
This commit is contained in:
@@ -75,9 +75,9 @@ def account_list(request):
|
||||
if async_to_sync(task_dispatcher.dispatch)(task, send_fn):
|
||||
worker_manager.set_current_task(wid, task.task_id)
|
||||
account.current_task_id = task.task_id
|
||||
account.current_task_status = task.status.value
|
||||
account.current_task_status = TaskStatus.DISPATCHED.value
|
||||
account.save(update_fields=["current_task_id", "current_task_status"])
|
||||
logger.info("绑定账号后自动触发 check_login: %s@%s", bname, wid)
|
||||
logger.info("绑定账号后自动触发 check_login: %s@%s, task_id=%s", bname, wid, task.task_id)
|
||||
return api_success(_enrich(account), http_status=status.HTTP_201_CREATED)
|
||||
|
||||
|
||||
@@ -116,9 +116,10 @@ def fill_boss_ids(request):
|
||||
if success:
|
||||
worker_manager.set_current_task(wid, task.task_id)
|
||||
acc.current_task_id = task.task_id
|
||||
acc.current_task_status = task.status.value
|
||||
acc.current_task_status = TaskStatus.DISPATCHED.value
|
||||
acc.save(update_fields=["current_task_id", "current_task_status"])
|
||||
submitted += 1
|
||||
logger.info("账号检查登录: %s@%s, task_id=%s", bname, wid, task.task_id)
|
||||
else:
|
||||
skipped += 1
|
||||
errors.append(f"{bname}@{wid}: 派发失败")
|
||||
|
||||
@@ -135,8 +135,10 @@ def task_list(request):
|
||||
).first()
|
||||
if account:
|
||||
account.current_task_id = task.task_id
|
||||
account.current_task_status = task.status.value
|
||||
# 派发成功后,将状态设为 DISPATCHED(不是 task.status.value,因为那可能还是 PENDING)
|
||||
account.current_task_status = TaskStatus.DISPATCHED.value
|
||||
account.save(update_fields=["current_task_id", "current_task_status"])
|
||||
logger.info("账号 %s 任务关联: task_id=%s, status=%s", req.account_name, task.task_id, account.current_task_status)
|
||||
except Exception as e:
|
||||
logger.warning("关联账号任务状态失败: %s", e)
|
||||
|
||||
|
||||
@@ -106,8 +106,8 @@ class WorkerConsumer(AsyncWebsocketConsumer):
|
||||
# 同步更新账号任务状态为 running
|
||||
try:
|
||||
self._update_account_task_status(task_id, TaskStatus.RUNNING.value)
|
||||
except Exception:
|
||||
pass
|
||||
except Exception as e:
|
||||
logger.error("更新账号任务状态失败 (task_id=%s): %s", task_id, e)
|
||||
|
||||
elif msg_type == MsgType.TASK_RESULT.value:
|
||||
task_id = data.get("task_id", "")
|
||||
@@ -124,6 +124,7 @@ class WorkerConsumer(AsyncWebsocketConsumer):
|
||||
final_status = task_info.status.value if hasattr(task_info.status, "value") else str(task_info.status)
|
||||
self._save_task_log(task_id, task_info, result, error, final_status)
|
||||
self._update_account_task_status(task_id, final_status)
|
||||
logger.info("任务 %s 最终状态已更新: %s", task_id, final_status)
|
||||
# check_login 任务:更新账号登录状态
|
||||
task_type_val = task_info.task_type.value if hasattr(task_info.task_type, "value") else str(task_info.task_type)
|
||||
if task_type_val == TaskType.CHECK_LOGIN.value and result and not error:
|
||||
|
||||
Reference in New Issue
Block a user