黑帮争霸刷新玩家数据
This commit is contained in:
parent
ec1b76ed5f
commit
09b74e3490
@ -1,18 +1,23 @@
|
||||
import { ApiCall } from "tsrpc";
|
||||
import { ReqUpdateHbzbCrossUser, ResUpdateHbzbCrossUser } from "../../cross/protocols/hbzb/PtlUpdateHbzbCrossUser";
|
||||
import {ApiCall} from "tsrpc";
|
||||
import {ReqUpdateHbzbCrossUser, ResUpdateHbzbCrossUser} from "../../cross/protocols/hbzb/PtlUpdateHbzbCrossUser";
|
||||
|
||||
/**更新跨服数据库里,黑帮争霸的玩家数据 */
|
||||
export default async function (call: ApiCall<ReqUpdateHbzbCrossUser, ResUpdateHbzbCrossUser>) {
|
||||
let setData = {
|
||||
"data":{
|
||||
let setData: any = {
|
||||
"data": {
|
||||
player: call.req.user.player,
|
||||
roles: call.req.user.roles,
|
||||
uid: call.req.uid
|
||||
},
|
||||
"jifen": -999999,
|
||||
"rank": -999999,
|
||||
"zbsgroup":""
|
||||
};
|
||||
G.mongodb.collection('hbzb_user_cross').updateOne({ uid: setData.data.uid }, { $set: setData }, { upsert: true });
|
||||
call.succ({ });
|
||||
if (call.req.isNew) {
|
||||
setData = {
|
||||
...setData,
|
||||
"jifen": -999999,
|
||||
"rank": -999999,
|
||||
"zbsgroup": ""
|
||||
}
|
||||
}
|
||||
G.mongodb.collection('hbzb_user_cross').updateOne({uid: setData.data.uid}, {$set: setData}, {upsert: true});
|
||||
call.succ({});
|
||||
}
|
@ -1,18 +1,16 @@
|
||||
import { ApiCall } from "tsrpc";
|
||||
import { Rank } from '../../../public/rank/rank';
|
||||
import { ReqOpen, ResOpen } from "../../../shared/protocols/hbzb/jfs/PtlOpen";
|
||||
import { PublicShared } from '../../../shared/public/public';
|
||||
import { getHbzbData, getMyRank, getToper200RankUid, updateHbzbCrossUser } from "./fun";
|
||||
import {ApiCall} from "tsrpc";
|
||||
import {Rank} from '../../../public/rank/rank';
|
||||
import {ReqOpen, ResOpen} from "../../../shared/protocols/hbzb/jfs/PtlOpen";
|
||||
import {PublicShared} from '../../../shared/public/public';
|
||||
import {getHbzbData, getMyRank, getToper200RankUid, updateHbzbCrossUser} from "./fun";
|
||||
|
||||
export default async function (call: ApiCall<ReqOpen, ResOpen>) {
|
||||
//查看本地数据库里,刷出来的玩家数据
|
||||
let dbData = await getHbzbData(call.uid );
|
||||
let dbData = await getHbzbData(call.uid);
|
||||
let data: typeof dbData.data = dbData?.data || {} as any;
|
||||
|
||||
if (dbData == null) {
|
||||
//如果没有,则同步到跨服
|
||||
await updateHbzbCrossUser(await call.conn.getDefaultFightData(), true);
|
||||
}
|
||||
//如果没有,则同步到跨服
|
||||
await updateHbzbCrossUser(await call.conn.getDefaultFightData(), dbData == null);
|
||||
|
||||
if (!data.refreshTime || data.refreshTime < PublicShared.getToDayZeroTime()) {
|
||||
data.winNum = 0;
|
||||
@ -26,19 +24,21 @@ export default async function (call: ApiCall<ReqOpen, ResOpen>) {
|
||||
//积分赛时的排行榜,是本服积分排序
|
||||
data.jifen = 0;
|
||||
//但是刷出来的对手,是跨服的玩家
|
||||
let callRes = await G.clientCross.callApi('hbzb/jfs/GetEnemy', { uid: call.uid, auto: true });
|
||||
if (!callRes.isSucc){
|
||||
let callRes = await G.clientCross.callApi('hbzb/jfs/GetEnemy', {uid: call.uid, auto: true});
|
||||
if (!callRes.isSucc) {
|
||||
//todo 健壮性处理
|
||||
return call.errorCode(-4)
|
||||
}
|
||||
if (callRes.res.enemy.length)
|
||||
data.enemy = callRes.res.enemy.map(e => { return { ...e, result: null }; });
|
||||
data.enemy = callRes.res.enemy.map(e => {
|
||||
return {...e, result: null};
|
||||
});
|
||||
}
|
||||
|
||||
G.mongodb.cPlayerInfo('hbzb').updateOne(
|
||||
{ uid: call.uid, type: 'hbzb' },
|
||||
{ $set: { data: data } },
|
||||
{ upsert: true }
|
||||
{uid: call.uid, type: 'hbzb'},
|
||||
{$set: {data: data}},
|
||||
{upsert: true}
|
||||
);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user