From 6aadb030c5eae4b8a27ea6b2022dbf053030f9d9 Mon Sep 17 00:00:00 2001 From: dy Date: Thu, 14 Dec 2023 15:34:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=91=A8=E6=9C=AB=E7=A4=BC=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api_s2c/event/zhoumolibao/ApiOpen.ts | 23 +++++++++++++++++++++ src/api_s2c/event/zhoumolibao/ApiReceive.ts | 6 +++--- src/module/collection_event.ts | 2 +- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/src/api_s2c/event/zhoumolibao/ApiOpen.ts b/src/api_s2c/event/zhoumolibao/ApiOpen.ts index 0f52475..bb4a2f6 100644 --- a/src/api_s2c/event/zhoumolibao/ApiOpen.ts +++ b/src/api_s2c/event/zhoumolibao/ApiOpen.ts @@ -2,6 +2,7 @@ import {ApiCall} from "tsrpc"; import {ReqOpen, ResOpen} from "../../../shared/protocols/event/zhoumolibao/PtlOpen"; import {PayFun} from "../../../public/pay"; import {HuoDongFun} from "../../../public/huodongfun"; +import {PublicShared} from "../../../shared/public/public"; export default async function (call: ApiCall) { @@ -18,3 +19,25 @@ export default async function (call: ApiCall) { }) } + +export async function checkResetBuyLog(call: ApiCall) { + let zeroTime = PublicShared.getToDayZeroTime() + + + let data = await G.mongodb.cEvent('zhoumolibao').findOne({uid: call.uid, type: 'zhoumolibao'}) + if (data.refreshTime && data.refreshTime > zeroTime) return + + G.mongodb.cEvent(`zhoumolibao`).updateOne( + {uid: call.uid, type: `zhoumolibao`}, + {$set: {record: {}}}, + {upsert: true} + ) + + let _hd = (await HuoDongFun.gethdList(call, 9))[0] + let payIds = _hd?.data?.gift?.filter(i => i.payId)?.map(i => i.payId) + let payLogs = await PayFun.getPayLogs(call.uid, payIds) + let payLogLength = R.values(payLogs).filter(i => i.time < zeroTime).length + if (payLogLength) { + PayFun.delPayLog(call.uid, payIds.map(i => ({payId: i}))) + } +} \ No newline at end of file diff --git a/src/api_s2c/event/zhoumolibao/ApiReceive.ts b/src/api_s2c/event/zhoumolibao/ApiReceive.ts index b7bc39b..3a295e4 100644 --- a/src/api_s2c/event/zhoumolibao/ApiReceive.ts +++ b/src/api_s2c/event/zhoumolibao/ApiReceive.ts @@ -11,13 +11,13 @@ export default async function (call: ApiCall) { // 取奖励列表,判断是否有可领取奖励 let data = await G.mongodb.cEvent('zhoumolibao').findOne({uid: call.uid, type: 'zhoumolibao'}) - let rec = data.record[call.req.id] - if (rec && rec >= gift?.buyNum) return call.errorCode(-2) + let rec = data?.record?.[call.req.id] + // if (rec && rec >= gift?.buyNum) return call.errorCode(-2) await PlayerFun.sendPrize(call, gift.prize); await G.mongodb.cEvent('zhoumolibao').updateOne({uid: call.uid, type: 'zhoumolibao'}, { - $inc: {[`record.${gift.id}`]: 1} + $inc: {[`record.${gift.id}`]: 1}, },{ upsert: true }) call.succ({}) diff --git a/src/module/collection_event.ts b/src/module/collection_event.ts index adb648b..e1eeef3 100644 --- a/src/module/collection_event.ts +++ b/src/module/collection_event.ts @@ -47,7 +47,7 @@ export type eventType = { qirichongzhi: Omit; jierihuodong: Omit & { refreshTime: number; }; kaifujingsai: ResOpenKaifujingsai; - zhoumolibao: ResOpenZhoumolibao; + zhoumolibao: ResOpenZhoumolibao & { refreshTime: number; } } & { [k: `${number}jijin`]: ResOpenYuedujijin; [k: `yangchengmubiao${number}`]: yangchengmubiao;