fix(qdreader): align weekly exchange payload
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
//[author: Hermes]
|
||||
//[service: BOSS]
|
||||
//[class: 工具类]
|
||||
//[version: 2.11.0]
|
||||
//[version: 2.11.1]
|
||||
//[platform: web,qq,wx,tg,tb,fs,we]
|
||||
//[public: false]
|
||||
//[price: 0]
|
||||
@@ -716,12 +716,24 @@ function doWeeklyExchange(cookie) {
|
||||
if (!taskResultOk(page)) return { name: "每周兑换", ok: false, msg: resultMsg(page) || "获取兑换页失败", path: "/argus/api/v3/checkin/checkinexchangepage" }
|
||||
var data = page.Data || page.data || {}
|
||||
var balance = Number(data.Balance || data.Score || 0)
|
||||
var goods = firstArray(data.GoodsList, data.GiftList, data.List, data.Items)
|
||||
if (balance <= 0) return { name: "每周兑换", ok: false, msg: "余额不足(" + balance + ")", path: "/argus/api/v3/checkin/checkinexchangepage" }
|
||||
var goods = firstArray(data.Goods, data.GoodsList, data.GiftList, data.List, data.Items)
|
||||
if (!goods.length) return { name: "每周兑换", ok: false, msg: "章节卡列表为空", path: "/argus/api/v3/checkin/checkinexchangepage" }
|
||||
var chosen = null
|
||||
for (var i = 0; i < goods.length; i++) { var price = Number(goods[i].NeedScore || goods[i].Price || goods[i].Score || 0); if (price > 0 && price <= balance && (!chosen || price > Number(chosen.NeedScore || chosen.Price || chosen.Score || 0))) chosen = goods[i] }
|
||||
if (!chosen) return { name: "每周兑换", ok: true, msg: "无可兑换商品或余额不足(" + balance + ")", path: "/argus/api/v3/checkin/checkinexchangepage" }
|
||||
var r = qdPost("/argus/api/v3/checkin/exchangegoods", { GoodsId: chosen.GoodsId || chosen.Id || chosen.GoodsID }, cookie)
|
||||
return { name: "每周兑换", ok: taskResultOk(r), msg: resultMsg(r) || (taskResultOk(r) ? "兑换成功" : "兑换失败"), path: "/argus/api/v3/checkin/exchangegoods" }
|
||||
for (var i = 0; i < goods.length; i++) {
|
||||
var price = Number(goods[i].GoodsScore || goods[i].NeedScore || goods[i].Price || goods[i].Score || 0)
|
||||
if (price > 0 && price <= balance && (!chosen || price > Number(chosen.GoodsScore || chosen.NeedScore || chosen.Price || chosen.Score || 0))) chosen = goods[i]
|
||||
}
|
||||
if (!chosen) return { name: "每周兑换", ok: false, msg: "余额不足(" + balance + ")", path: "/argus/api/v3/checkin/checkinexchangepage" }
|
||||
var gid = chosen.GoodsId || chosen.Id || chosen.GoodsID
|
||||
var priceText = Number(chosen.GoodsScore || chosen.NeedScore || chosen.Price || chosen.Score || 0)
|
||||
var cardCount = chosen.ChapterCardCount || chosen.CardCount || chosen.Count || ""
|
||||
var r = qdPost("/argus/api/v3/checkin/exchangegoods", { goodId: gid }, cookie)
|
||||
var code = Number(r && (r.result !== undefined ? r.result : (r.Result !== undefined ? r.Result : (r.code !== undefined ? r.code : r.Code))))
|
||||
if (code === -220000) return { name: "每周兑换", ok: false, msg: "未到兑换时间", path: "/argus/api/v3/checkin/exchangegoods" }
|
||||
var ok = taskResultOk(r)
|
||||
var successMsg = cardCount ? ("消耗 " + priceText + " 点兑换 " + cardCount + " 点章节卡") : "兑换成功"
|
||||
return { name: "每周兑换", ok: ok, msg: resultMsg(r) || (ok ? successMsg : "兑换失败"), path: "/argus/api/v3/checkin/exchangegoods" }
|
||||
}
|
||||
function doChapterCard(cookie) {
|
||||
var res = qdGet("/argus/api/v1/readtime/scoremall/chaptercardwithbook", {}, cookie)
|
||||
|
||||
Reference in New Issue
Block a user