From 9837d271321c261f69be5320be9baaa7e3d0c8f4 Mon Sep 17 00:00:00 2001 From: dy Date: Tue, 26 Dec 2023 17:02:36 +0800 Subject: [PATCH] =?UTF-8?q?Revert=20"=E8=87=AA=E9=80=89=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E8=B4=AD=E4=B9=B0=E6=94=B9=E4=B8=BA=E7=BB=9F=E4=B8=80=E6=96=B9?= =?UTF-8?q?=E6=B3=95"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 93f6b5b7ba4636b0f1fd10ec1f57b732330cfd3f. --- .gitignore | 1 + .vscode/launch.json | 50 ------------------------------ src/public/pay.ts | 74 ++++++++++----------------------------------- 3 files changed, 17 insertions(+), 108 deletions(-) delete mode 100644 .vscode/launch.json diff --git a/.gitignore b/.gitignore index 98d22b9..c1b085f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ /node_modules /.idea +/.vscode /dist /doc diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index aea870d..0000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - // 使用 IntelliSense 了解相关属性。 - // 悬停以查看现有属性的描述。 - // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "name": "消息服", - "type": "node", - "request": "launch", - "args": [ - "${workspaceRoot}/src/index.ts", - "-serverType", - "msg", - "-logModel", - "debug" - ], - "runtimeArgs": [ - "--nolazy", - "-r", - "ts-node/register" - ], - "sourceMaps": true, - "cwd": "${workspaceRoot}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen" - }, - { - "name": "跨服", - "type": "node", - "request": "launch", - "args": [ - "${workspaceRoot}/src/index.ts", - "-serverType", - "cross", - "-logModel", - "debug" - ], - "runtimeArgs": [ - "--nolazy", - "-r", - "ts-node/register" - ], - "sourceMaps": true, - "cwd": "${workspaceRoot}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen" - } - ] -} \ No newline at end of file diff --git a/src/public/pay.ts b/src/public/pay.ts index 96451e1..1a812d0 100644 --- a/src/public/pay.ts +++ b/src/public/pay.ts @@ -206,20 +206,19 @@ export class PayFun { payArgs: payArgs, orderNo: orderNo } - //改为统一方法,此处自选不这样用 - // if (payId.indexOf('zixuanlibao') != -1) { - // // 后端唯一标识 htype 4 自选/定制 礼包 - // // @ts-ignore - // let _hdList = await HuoDongFun.gethdList(call, 4) - // _hdList.forEach(ele => { - // let selectPrize = ele.data.gift.find(v => v.payId == payId)?.prize; - // if (prize) { - // let index = payArgs instanceof Array ? payArgs : []; - // let select = selectPrize.map((v, i) => v[index[i]] ? v[index[i]] : v[0]); - // prize.push(...select); - // } - // }) - // } + if (payId.indexOf('zixuanlibao') != -1) { + // 后端唯一标识 htype 4 自选/定制 礼包 + // @ts-ignore + let _hdList = await HuoDongFun.gethdList(call, 4) + _hdList.forEach(ele => { + let selectPrize = ele.data.gift.find(v => v.payId == payId)?.prize; + if (prize) { + let index = payArgs instanceof Array ? payArgs : []; + let select = selectPrize.map((v, i) => v[index[i]] ? v[index[i]] : v[0]); + prize.push(...select); + } + }) + } if (payId.indexOf('ycmb') != -1) { // @ts-ignore // 养成活动充值礼包 let _hdids = await YangChengMuBiaofun.getCon(call); @@ -236,26 +235,11 @@ export class PayFun { let conf = await zmlbGetConf(call, {payId}) prize.push(...conf.prize) } - - /** - * todo 不要轻易改动这个方法,不允许集成业务逻辑在内部 - * todo 此方法仅仅是支付成功后的发奖 - * todo 如果有业务逻辑通过事件驱动,在支付成功后emit事件 - * todo 下面这个方法不应该这样写 - */ //圣诞节活动充值 - try { + try{ await Christmasfun.payChristmas(payId, call); - } catch (e) { - console.log("Christmasfun.payChristmas Error", e); - } - - if (payArgs.selectPrize) { - let selectPrize = await G.ioredis.get(`pay:${payId}:${player.uid}`); - if (selectPrize) { - prize.push(...JSON.parse(selectPrize)) - G.ioredis.del(`pay:${payId}:${player.uid}`) - } + }catch (e) { + console.log("Christmasfun.payChristmas Error",e); } let isReplaceConf = await this.checkBuysAfterPay(uid, payId, conf, payArgs, player) @@ -415,31 +399,6 @@ export class PayFun { if (conf.time != -1 && buyLog.slice(-1)[0]?.eTime > G.time && conf.buys == 0 && payId.indexOf('wkdlibao') == -1) { return G.server.sendMsgByUid(player.uid, 'msg_s2c/PayResult', {code: -2}); } - - /** - * 活动相关的自选礼包,目前htype 4、14支持此方法 - * payArgs里传相应参数,selectList选择的奖励列表 - * 往后所有自选类型,走这个方法,配置格式同4、14 - */ - if (payArgs.htype && payArgs.selectList) { - // @ts-ignore - let _hdInfo = (await HuoDongFun.gethdList(call, payArgs.htype))[0] - // 活动类购买不符合条件返回-5 - if (!_hdInfo) G.server.sendMsgByUid(player.uid, 'msg_s2c/PayResult', {code: -5}) - let giftInfo = _hdInfo.data.gift.find(v => v.payId == payId); - if (!giftInfo) G.server.sendMsgByUid(player.uid, 'msg_s2c/PayResult', {code: -5}) - - let dlzPrize = R.flatten(giftInfo.dlz.map(i => R.values(i))) - let selectPrize = payArgs.selectList.map(v => { - let sPrize = dlzPrize.find(o => o.a == v.a && o.t == v.t && o.n == v.n) - // 严格判断,自选奖励不存在奖励列表,返回-6 - if (!sPrize) return G.server.sendMsgByUid(player.uid, 'msg_s2c/PayResult', {code: -6}); - return sPrize - }) - // 自选奖励过判断后,存入redis,6小时内支付有效 todo 6小时可能有些长 - G.ioredis.setex(`pay:${payId}:${player.uid}`, 21600, JSON.stringify(selectPrize)); - } - //针对每日礼包的单独处理 let zeroTime = PublicShared.getToDayZeroTime(G.time) if (payId.indexOf('136Gift') != -1 && payId != '136GiftAll') { @@ -496,7 +455,6 @@ export class PayFun { /** * 当玩家购买过有时间期效性的礼包 并且在生效期内每天有邮件奖励时 每天首次登陆时根据时间补发邮件 玩家每天首次登陆会进入检查 - * @param player * @param lastTime 上一次登陆时间 * @param curTime 每日首次登陆时间 */