parent
d13b9fcae0
commit
9837d27132
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,5 +1,6 @@
|
|||||||
/node_modules
|
/node_modules
|
||||||
/.idea
|
/.idea
|
||||||
|
/.vscode
|
||||||
/dist
|
/dist
|
||||||
/doc
|
/doc
|
||||||
|
|
||||||
|
50
.vscode/launch.json
vendored
50
.vscode/launch.json
vendored
@ -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"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@ -206,20 +206,19 @@ export class PayFun {
|
|||||||
payArgs: payArgs,
|
payArgs: payArgs,
|
||||||
orderNo: orderNo
|
orderNo: orderNo
|
||||||
}
|
}
|
||||||
//改为统一方法,此处自选不这样用
|
if (payId.indexOf('zixuanlibao') != -1) {
|
||||||
// if (payId.indexOf('zixuanlibao') != -1) {
|
// 后端唯一标识 htype 4 自选/定制 礼包
|
||||||
// // 后端唯一标识 htype 4 自选/定制 礼包
|
// @ts-ignore
|
||||||
// // @ts-ignore
|
let _hdList = await HuoDongFun.gethdList(call, 4)
|
||||||
// let _hdList = await HuoDongFun.gethdList(call, 4)
|
_hdList.forEach(ele => {
|
||||||
// _hdList.forEach(ele => {
|
let selectPrize = ele.data.gift.find(v => v.payId == payId)?.prize;
|
||||||
// let selectPrize = ele.data.gift.find(v => v.payId == payId)?.prize;
|
if (prize) {
|
||||||
// if (prize) {
|
let index = payArgs instanceof Array ? payArgs : [];
|
||||||
// let index = payArgs instanceof Array ? payArgs : [];
|
let select = selectPrize.map((v, i) => v[index[i]] ? v[index[i]] : v[0]);
|
||||||
// let select = selectPrize.map((v, i) => v[index[i]] ? v[index[i]] : v[0]);
|
prize.push(...select);
|
||||||
// prize.push(...select);
|
}
|
||||||
// }
|
})
|
||||||
// })
|
}
|
||||||
// }
|
|
||||||
if (payId.indexOf('ycmb') != -1) {
|
if (payId.indexOf('ycmb') != -1) {
|
||||||
// @ts-ignore // 养成活动充值礼包
|
// @ts-ignore // 养成活动充值礼包
|
||||||
let _hdids = await YangChengMuBiaofun.getCon(call);
|
let _hdids = await YangChengMuBiaofun.getCon(call);
|
||||||
@ -236,26 +235,11 @@ export class PayFun {
|
|||||||
let conf = await zmlbGetConf(call, {payId})
|
let conf = await zmlbGetConf(call, {payId})
|
||||||
prize.push(...conf.prize)
|
prize.push(...conf.prize)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* todo 不要轻易改动这个方法,不允许集成业务逻辑在内部
|
|
||||||
* todo 此方法仅仅是支付成功后的发奖
|
|
||||||
* todo 如果有业务逻辑通过事件驱动,在支付成功后emit事件
|
|
||||||
* todo 下面这个方法不应该这样写
|
|
||||||
*/
|
|
||||||
//圣诞节活动充值
|
//圣诞节活动充值
|
||||||
try {
|
try{
|
||||||
await Christmasfun.payChristmas(payId, call);
|
await Christmasfun.payChristmas(payId, call);
|
||||||
} catch (e) {
|
}catch (e) {
|
||||||
console.log("Christmasfun.payChristmas Error", 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}`)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let isReplaceConf = await this.checkBuysAfterPay(uid, payId, conf, payArgs, player)
|
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) {
|
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});
|
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)
|
let zeroTime = PublicShared.getToDayZeroTime(G.time)
|
||||||
if (payId.indexOf('136Gift') != -1 && payId != '136GiftAll') {
|
if (payId.indexOf('136Gift') != -1 && payId != '136GiftAll') {
|
||||||
@ -496,7 +455,6 @@ export class PayFun {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 当玩家购买过有时间期效性的礼包 并且在生效期内每天有邮件奖励时 每天首次登陆时根据时间补发邮件 玩家每天首次登陆会进入检查
|
* 当玩家购买过有时间期效性的礼包 并且在生效期内每天有邮件奖励时 每天首次登陆时根据时间补发邮件 玩家每天首次登陆会进入检查
|
||||||
* @param player
|
|
||||||
* @param lastTime 上一次登陆时间
|
* @param lastTime 上一次登陆时间
|
||||||
* @param curTime 每日首次登陆时间
|
* @param curTime 每日首次登陆时间
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user