周末礼包红点

This commit is contained in:
dy 2023-12-14 18:52:17 +08:00
parent 0f7c1db0a1
commit 5fabfb2c5a
5 changed files with 97 additions and 36 deletions

View File

@ -2,6 +2,7 @@ import {ApiCall} from "tsrpc";
import {ReqReceive, ResReceive} from "../../../shared/protocols/event/zhoumolibao/PtlReceive"; import {ReqReceive, ResReceive} from "../../../shared/protocols/event/zhoumolibao/PtlReceive";
import {HuoDongFun} from "../../../public/huodongfun"; import {HuoDongFun} from "../../../public/huodongfun";
import {PlayerFun} from "../../../public/player"; import {PlayerFun} from "../../../public/player";
import {HongDianChange} from "../../hongdian/fun";
export default async function (call: ApiCall<ReqReceive, ResReceive>) { export default async function (call: ApiCall<ReqReceive, ResReceive>) {
// 查询活动是否有当前领奖的免费选项 // 查询活动是否有当前领奖的免费选项
@ -18,7 +19,9 @@ export default async function (call: ApiCall<ReqReceive, ResReceive>) {
await G.mongodb.cEvent('zhoumolibao').updateOne({uid: call.uid, type: 'zhoumolibao'}, { await G.mongodb.cEvent('zhoumolibao').updateOne({uid: call.uid, type: 'zhoumolibao'}, {
$inc: {[`record.${gift.id}`]: 1}, $inc: {[`record.${gift.id}`]: 1},
},{ upsert: true }) }, {upsert: true})
call.succ({}) call.succ({})
HongDianChange.sendChangeKey(call.uid, ['zhoumolibao']);
} }

View File

@ -1,25 +1,25 @@
import { ApiCall } from "tsrpc"; import {ApiCall} from "tsrpc";
import { DiXiaQianZhuangFun } from "../../public/dixiaqianzhuang"; import {DiXiaQianZhuangFun} from "../../public/dixiaqianzhuang";
import { DxltFun } from "../../public/dxlt"; import {DxltFun} from "../../public/dxlt";
import { GongHuiFun } from "../../public/gonghui/gonghui"; import {GongHuiFun} from "../../public/gonghui/gonghui";
import { JJCFun } from "../../public/jjc"; import {JJCFun} from "../../public/jjc";
import { KuangDongfun } from "../../public/kuangdong"; import {KuangDongfun} from "../../public/kuangdong";
import { LingZhuLaiXifun } from "../../public/lingzhulaixi"; import {LingZhuLaiXifun} from "../../public/lingzhulaixi";
import { SignFun } from "../../public/sign"; import {SignFun} from "../../public/sign";
import { TaskFun } from "../../public/task"; import {TaskFun} from "../../public/task";
import { WangZheRongYaofun } from "../../public/wzry"; import {WangZheRongYaofun} from "../../public/wzry";
import { XstaskFun } from "../../public/xstask"; import {XstaskFun} from "../../public/xstask";
import { ReqGet, ResGet, hongdianKey } from "../../shared/protocols/hongdian/PtlGet"; import {ReqGet, ResGet, hongdianKey} from "../../shared/protocols/hongdian/PtlGet";
import { PublicShared } from '../../shared/public/public'; import {PublicShared} from '../../shared/public/public';
import { getShouChongRedPoint } from '../event/shouchong/ApiReceive'; import {getShouChongRedPoint} from '../event/shouchong/ApiReceive';
import { md_redPoint } from '../gongyu/mingdao/ApiOpen'; import {md_redPoint} from '../gongyu/mingdao/ApiOpen';
import { HongDianFun, HuoDongHongDianFun } from "./fun"; import {HongDianFun, HuoDongHongDianFun} from "./fun";
import { FunWeiXiuChang } from "../../public/weixiuchang"; import {FunWeiXiuChang} from "../../public/weixiuchang";
const defaultKeys: hongdianKey[] = ['jiuba', 'jiaotang', 'shouchong', 'clslhd', 'dixiaqianzhuanghd', 'gonghuihd', 'hbzbhd', 'jjchd', 'taskhd', const defaultKeys: hongdianKey[] = ['jiuba', 'jiaotang', 'shouchong', 'clslhd', 'dixiaqianzhuanghd', 'gonghuihd', 'hbzbhd', 'jjchd', 'taskhd',
'xstaskhd', 'lingzhulaixihd', 'dxlthd', 'wzcjhd', 'slzdhd', 'qjzzdhd', 'kuangdonghd', 'qiandaohd', 'kaifukuanghuanhd', 'jijinhd', 'zhuishalinghd', 'xstaskhd', 'lingzhulaixihd', 'dxlthd', 'wzcjhd', 'slzdhd', 'qjzzdhd', 'kuangdonghd', 'qiandaohd', 'kaifukuanghuanhd', 'jijinhd', 'zhuishalinghd',
'yibaichouhd', 'huobanzhaomuhd', 'qirileichonghd', 'jierihd', 'kbzzhd', 'wzryhd', 'yuedujijin', 'mingdao', 'patahd', 'yibaichouhd', 'huobanzhaomuhd', 'qirileichonghd', 'jierihd', 'kbzzhd', 'wzryhd', 'yuedujijin', 'mingdao', 'patahd',
'heishihd', 'huodonghd', 'renown', 'weixiuchang', 'kaifujingsai']; 'heishihd', 'huodonghd', 'renown', 'weixiuchang', 'kaifujingsai', 'zhoumolibao'];
export default async function (call: ApiCall<ReqGet, ResGet>) { export default async function (call: ApiCall<ReqGet, ResGet>) {
@ -28,13 +28,13 @@ export default async function (call: ApiCall<ReqGet, ResGet>) {
let toDayZeroTime = PublicShared.getToDayZeroTime(); let toDayZeroTime = PublicShared.getToDayZeroTime();
//正常跑完引导的等级 //正常跑完引导的等级
if(call.conn.gud.lv >= 7){ if (call.conn.gud.lv >= 7) {
for (let key of keys) { for (let key of keys) {
switch (key) { switch (key) {
case 'jiuba': case 'jiuba':
case 'jiaotang': case 'jiaotang':
let db = await G.mongodb.collection('playerInfo', key).findOne({ uid: call.uid, type: key }); let db = await G.mongodb.collection('playerInfo', key).findOne({uid: call.uid, type: key});
res[key] = { show: (!db || toDayZeroTime >= db.freeTime) ? true : false }; res[key] = {show: (!db || toDayZeroTime >= db.freeTime) ? true : false};
break; break;
case 'shouchong': case 'shouchong':
res[key] = await getShouChongRedPoint(call); res[key] = await getShouChongRedPoint(call);
@ -160,6 +160,9 @@ export default async function (call: ApiCall<ReqGet, ResGet>) {
case 'kaifujingsai': case 'kaifujingsai':
res[key] = await HongDianFun.kaifujingsai(call); res[key] = await HongDianFun.kaifujingsai(call);
break; break;
case 'zhoumolibao':
res[key] = await HongDianFun.zhoumolibao(call);
break;
} }
} }
} }

View File

@ -20,7 +20,7 @@ import {PlayerFun} from "../../public/player";
import kfjsFun from "../../public/kaifujingsai"; import kfjsFun from "../../public/kaifujingsai";
import {RankKfjs} from "../../public/rank/rank_kfjs"; import {RankKfjs} from "../../public/rank/rank_kfjs";
import {ShopFun} from "../../public/shop"; import {ShopFun} from "../../public/shop";
import { Christmasfun } from '../event/christmas/fun'; import {Christmasfun} from '../event/christmas/fun';
export class HongDianFun { export class HongDianFun {
/**黑榜争霸红点 */ /**黑榜争霸红点 */
@ -301,6 +301,18 @@ export class HongDianFun {
return {show: true, val: canGet} return {show: true, val: canGet}
} }
/**周末礼包 */
static async zhoumolibao(call: ApiCall): Promise<hongdianVal> {
let _hd = (await HuoDongFun.gethdList(call, 9))[0]
let gift = _hd?.data?.gift?.find(i => i.free)
if (!gift) return {show: false}
let data = await G.mongodb.cEvent('zhoumolibao').findOne({uid: call.uid, type: 'zhoumolibao'})
let rec = data?.record?.[gift.id]
if (rec && rec >= gift?.buyNum) return {show: false}
return {show: true}
}
} }
@ -708,10 +720,11 @@ export class HuoDongHongDianFun {
if (_buyNum < _tmp.buynum) { if (_buyNum < _tmp.buynum) {
_res.show = true; _res.show = true;
return _res; return _res;
}} }
}
let _diff = PublicShared.getDiff(stime) let _diff = PublicShared.getDiff(stime)
// 循环判断是否有可以领取的 // 循环判断是否有可以领取的
for(let i = 0; i < _diff; i++) { for (let i = 0; i < _diff; i++) {
if (_mydata.qiandao.includes(i)) continue if (_mydata.qiandao.includes(i)) continue
_res.show = true; _res.show = true;
return _res; return _res;
@ -724,15 +737,15 @@ export class HuoDongHongDianFun {
return _res; return _res;
} }
let zhanling = _hdCon.zhanling let zhanling = _hdCon.zhanling
for (let indexzhanling = 0; indexzhanling < zhanling.length; indexzhanling++){ for (let indexzhanling = 0; indexzhanling < zhanling.length; indexzhanling++) {
if (!_mydata.pt.includes(indexzhanling)){ if (!_mydata.pt.includes(indexzhanling)) {
_res.show = true; _res.show = true;
return _res; return _res;
} }
if (_mydata.pay && !_mydata.gj.includes(indexzhanling)){ if (_mydata.pay && !_mydata.gj.includes(indexzhanling)) {
_res.show = true; _res.show = true;
return _res; return _res;
} }
} }
return _res; return _res;

View File

@ -1,5 +1,3 @@
/** /**
* *
*/ */
@ -13,10 +11,47 @@ export const conf = {
timeIntervalLimit: 0 timeIntervalLimit: 0
}; };
export type hongdianKey = 'jiuba' | 'jiaotang' | 'shouchong' | 'dixiaqianzhuanghd' | 'taskhd' | 'xstaskhd' | 'gonghuihd' | 'jjchd' | 'hbzbhd' | export type hongdianKey =
'clslhd' | 'lingzhulaixihd' | 'dxlthd' | 'wzcjhd' | 'slzdhd' | 'qjzzdhd' | 'kuangdonghd' | 'qiandaohd' | 'kaifukuanghuanhd' | 'jijinhd' | 'zhuishalinghd' | 'jiuba'
'yibaichouhd' | 'huobanzhaomuhd' | 'qirileichonghd' | 'jierihd' | 'kbzzhd' | 'wzryhd' | 'yuedujijin' | 'patahd' | | 'jiaotang'
'mingdao' | 'heishihd' |'jitianhaoli'| 'huodonghd' | 'renown' | 'heishiMrjx' | 'weixiuchang' | 'kaifujingsai'; | 'shouchong'
| 'dixiaqianzhuanghd'
| 'taskhd'
| 'xstaskhd'
| 'gonghuihd'
| 'jjchd'
| 'hbzbhd'
|
'clslhd'
| 'lingzhulaixihd'
| 'dxlthd'
| 'wzcjhd'
| 'slzdhd'
| 'qjzzdhd'
| 'kuangdonghd'
| 'qiandaohd'
| 'kaifukuanghuanhd'
| 'jijinhd'
| 'zhuishalinghd'
|
'yibaichouhd'
| 'huobanzhaomuhd'
| 'qirileichonghd'
| 'jierihd'
| 'kbzzhd'
| 'wzryhd'
| 'yuedujijin'
| 'patahd'
|
'mingdao'
| 'heishihd'
| 'jitianhaoli'
| 'huodonghd'
| 'renown'
| 'heishiMrjx'
| 'weixiuchang'
| 'kaifujingsai'
| 'zhoumolibao';
export type hongdianVal = { export type hongdianVal = {

View File

@ -14894,6 +14894,13 @@ export const serviceProto: ServiceProto<ServiceType> = {
"type": "Literal", "type": "Literal",
"literal": "kaifujingsai" "literal": "kaifujingsai"
} }
},
{
"id": 36,
"type": {
"type": "Literal",
"literal": "zhoumolibao"
}
} }
] ]
}, },