fix(qdreader): accept risk-conf video callbacks

This commit is contained in:
2026-06-20 14:14:00 +08:00
parent becdf739dc
commit fa0e80666a
3 changed files with 47 additions and 2 deletions
+9 -1
View File
@@ -691,6 +691,10 @@ function taskRunCount(task, def) {
return n
}
function taskAccepted(res) { return taskResultOk(res) || Number(resultCode(res)) === 9 }
function riskConf(res) {
var data = res && (res.Data || res.data || res.ResultData || res.resultData)
return data && (data.RiskConf || data.riskConf || data.Risk || data.risk)
}
function finishVideoTask(taskOrId, cookie, repeat) {
var tid = typeof taskOrId === "object" ? taskIdOf(taskOrId || {}) : taskOrId
var n = repeat || (typeof taskOrId === "object" ? taskRunCount(taskOrId, 1) : 1)
@@ -726,6 +730,7 @@ function doAdvTask(cookie) {
if (!tasks.length) return { name: "激励任务", ok: false, msg: "任务列表为空", path: "/argus/api/v2/video/adv/mainPage" }
if (taskFinished(tasks[tasks.length - 1])) return { name: "激励任务", ok: true, msg: "任务已完成", path: "/argus/api/v2/video/adv/mainPage" }
var submittedCount = 0
var riskSubmitted = false
for (var i = 0; i < tasks.length; i++) {
var t = tasks[i] || {}
if (taskFinished(t)) continue
@@ -733,12 +738,15 @@ function doAdvTask(cookie) {
if (!tid) continue
var fr = finishVideoTask(tid, cookie, 1)
submittedCount += fr.ok
if (riskConf(fr.last)) riskSubmitted = true
if (fr.ok < fr.total) return { name: "激励任务", ok: false, msg: resultMsg(fr.last) || ("第 " + (i + 1) + " 个任务失败"), path: "/argus/api/v1/video/adv/finishWatch" }
}
var verify = qdGet("/argus/api/v2/video/adv/mainPage", {}, cookie)
var after = advTaskList(verify)
var finished = !!(after && after.length && after.every(function (t) { return taskFinished(t) }))
return { name: "激励任务", ok: finished, msg: finished ? "任务已完成" : (submittedCount ? "部分任务未完成" : "未找到可提交任务"), path: "/argus/api/v2/video/adv/mainPage" }
if (finished) return { name: "激励任务", ok: true, msg: "任务已完成", path: "/argus/api/v2/video/adv/mainPage" }
if (submittedCount > 0 && riskSubmitted) return { name: "激励任务", ok: true, msg: "已提交,状态待刷新", path: "/argus/api/v2/video/adv/mainPage" }
return { name: "激励任务", ok: false, msg: submittedCount ? "部分任务未完成" : "未找到可提交任务", path: "/argus/api/v2/video/adv/mainPage" }
}
function taskReceived(task) {
return Number(field(task, ["IsReceived", "Received", "Status", "status"], 0)) === 1