Revert "✨ feat(db): 修改role表数据库操作方式"
This reverts commit e39af3649288cc5802739cfe862c818fe56e194e.
This commit is contained in:
@@ -8,7 +8,7 @@ import { ActivityDailyCoinModel } from '../../../db/ActivityDailyCoin';
|
|||||||
import { addReward, stringToRewardParam } from '../../../services/activity/giftPackageService';
|
import { addReward, stringToRewardParam } from '../../../services/activity/giftPackageService';
|
||||||
import { RewardParam } from '../../../domain/activityField/rewardField';
|
import { RewardParam } from '../../../domain/activityField/rewardField';
|
||||||
import { ItemInter } from '../../../pubUtils/interface';
|
import { ItemInter } from '../../../pubUtils/interface';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import moment = require('moment');
|
import moment = require('moment');
|
||||||
|
|
||||||
|
|
||||||
@@ -63,7 +63,7 @@ export class DailyCoinHandler {
|
|||||||
}
|
}
|
||||||
let allConsume: Array<ItemInter> = []
|
let allConsume: Array<ItemInter> = []
|
||||||
let allReward: Array<RewardParam> = [];
|
let allReward: Array<RewardParam> = [];
|
||||||
let role = await Role.findByRoleId(roleId)
|
let role = await RoleModel.findByRoleId(roleId)
|
||||||
let rateArray = [];//暴击记录
|
let rateArray = [];//暴击记录
|
||||||
for (let i = 1; i <= count; i++) {
|
for (let i = 1; i <= count; i++) {
|
||||||
let index = curIndex + i;
|
let index = curIndex + i;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { Application, BackendSession, HandlerService, } from 'pinus';
|
|||||||
import { resResult } from '../../../pubUtils/util';
|
import { resResult } from '../../../pubUtils/util';
|
||||||
import { FIRST_GIFT_STATE, ITEM_CHANGE_REASON, STATUS } from '../../../consts';
|
import { FIRST_GIFT_STATE, ITEM_CHANGE_REASON, STATUS } from '../../../consts';
|
||||||
import { getPlayerFirstGiftData, getPlayerFirstGiftDataShow } from '../../../services/activity/firstGiftService';
|
import { getPlayerFirstGiftData, getPlayerFirstGiftDataShow } from '../../../services/activity/firstGiftService';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { addReward, stringToRewardParam } from '../../../services/activity/giftPackageService';
|
import { addReward, stringToRewardParam } from '../../../services/activity/giftPackageService';
|
||||||
import { ActivityFirstGiftModel } from '../../../db/ActivityFirstGift';
|
import { ActivityFirstGiftModel } from '../../../db/ActivityFirstGift';
|
||||||
import { RewardParam } from '../../../domain/activityField/rewardField';
|
import { RewardParam } from '../../../domain/activityField/rewardField';
|
||||||
@@ -35,7 +35,7 @@ export class FirstGiftHandler {
|
|||||||
return resResult(STATUS.ACTIVITY_MISSING);
|
return resResult(STATUS.ACTIVITY_MISSING);
|
||||||
}
|
}
|
||||||
|
|
||||||
let { totalPay } = await Role.findByRoleId(roleId);
|
let { totalPay } = await RoleModel.findByRoleId(roleId);
|
||||||
if (totalPay > 0) {//奖励开启
|
if (totalPay > 0) {//奖励开启
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { STATUS, GACHA_TYPE, HERO_QUALITY_TYPE, TASK_TYPE, ITEM_CHANGE_REASON, }
|
|||||||
import { gameData } from "../../../pubUtils/data";
|
import { gameData } from "../../../pubUtils/data";
|
||||||
import { UserGachaModel } from "../../../db/UserGacha";
|
import { UserGachaModel } from "../../../db/UserGacha";
|
||||||
import { refreshGacha, getGachaList, getVisitedHeroList, GachaPull, GachaResults, getDicGachaByGachaCnt, getNormalGachaId, getDicGachas } from "../../../services/activity/gachaService";
|
import { refreshGacha, getGachaList, getVisitedHeroList, GachaPull, GachaResults, getDicGachaByGachaCnt, getNormalGachaId, getDicGachas } from "../../../services/activity/gachaService";
|
||||||
import Role from "../../../db/Role";
|
import { RoleModel } from "../../../db/Role";
|
||||||
import { HeroModel } from "../../../db/Hero";
|
import { HeroModel } from "../../../db/Hero";
|
||||||
import { handleCost, addItems } from "../../../services/role/rewardService";
|
import { handleCost, addItems } from "../../../services/role/rewardService";
|
||||||
import { getZeroPointD, getTimeFun } from "../../../pubUtils/timeUtil";
|
import { getZeroPointD, getTimeFun } from "../../../pubUtils/timeUtil";
|
||||||
@@ -38,7 +38,7 @@ export class GachaHandler {
|
|||||||
async getGachaList(msg: {}, session: BackendSession) {
|
async getGachaList(msg: {}, session: BackendSession) {
|
||||||
const { } = msg;
|
const { } = msg;
|
||||||
const roleId: string = session.get('roleId');
|
const roleId: string = session.get('roleId');
|
||||||
let role = await Role.findByRoleId(roleId, 'gachaHasGuide');
|
let role = await RoleModel.findByRoleId(roleId, 'gachaHasGuide');
|
||||||
const list = await getGachaList(roleId);
|
const list = await getGachaList(roleId);
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, { hasInit: !!role.gachaHasGuide, list });
|
return resResult(STATUS.SUCCESS, { hasInit: !!role.gachaHasGuide, list });
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { newPlayerLimitPackageActivity, getPlayerLimitPackageData } from '../../
|
|||||||
import { addReward, stringToConsumeParam, stringToRewardParam } from '../../../services/activity/giftPackageService';
|
import { addReward, stringToConsumeParam, stringToRewardParam } from '../../../services/activity/giftPackageService';
|
||||||
import { ActivityShopModel } from '../../../db/ActivityShop';
|
import { ActivityShopModel } from '../../../db/ActivityShop';
|
||||||
import moment = require('moment');
|
import moment = require('moment');
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { handleCost } from '../../../services/role/rewardService';
|
import { handleCost } from '../../../services/role/rewardService';
|
||||||
|
|
||||||
export default function (app: Application) {
|
export default function (app: Application) {
|
||||||
@@ -31,7 +31,7 @@ export class LimitPackageHandler {
|
|||||||
const serverId = session.get('serverId');
|
const serverId = session.get('serverId');
|
||||||
|
|
||||||
|
|
||||||
let { createTime } = await Role.findByRoleId(roleId);
|
let { createTime } = await RoleModel.findByRoleId(roleId);
|
||||||
let createDate = moment(createTime * 1000).toDate();
|
let createDate = moment(createTime * 1000).toDate();
|
||||||
let endTime = moment(createDate).startOf('d').add(7, 'd').add(5, 'h').toDate();
|
let endTime = moment(createDate).startOf('d').add(7, 'd').add(5, 'h').toDate();
|
||||||
if (new Date() > endTime) {
|
if (new Date() > endTime) {
|
||||||
@@ -91,7 +91,7 @@ export class LimitPackageHandler {
|
|||||||
switch (playerData.type) {
|
switch (playerData.type) {
|
||||||
case ACTIVITY_TYPE.NEW_PLAYER_LIMIT_PACKAGE:
|
case ACTIVITY_TYPE.NEW_PLAYER_LIMIT_PACKAGE:
|
||||||
{
|
{
|
||||||
let { createTime } = await Role.findByRoleId(roleId);
|
let { createTime } = await RoleModel.findByRoleId(roleId);
|
||||||
let createDate = moment(createTime * 1000).toDate();
|
let createDate = moment(createTime * 1000).toDate();
|
||||||
let endTime = moment(createDate).startOf('d').add(7, 'd').toDate();
|
let endTime = moment(createDate).startOf('d').add(7, 'd').toDate();
|
||||||
if (new Date() > endTime) {
|
if (new Date() > endTime) {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import { handleCost } from '../../../services/role/rewardService';
|
|||||||
import { SignInItem } from '../../../domain/activityField/signInField';
|
import { SignInItem } from '../../../domain/activityField/signInField';
|
||||||
import { ActivitySignInModel } from '../../../db/ActivitySignIn';
|
import { ActivitySignInModel } from '../../../db/ActivitySignIn';
|
||||||
import moment = require('moment');
|
import moment = require('moment');
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { addReward, stringToConsumeParam, stringToRewardParam } from '../../../services/activity/giftPackageService';
|
import { addReward, stringToConsumeParam, stringToRewardParam } from '../../../services/activity/giftPackageService';
|
||||||
import { RewardParam } from '../../../domain/activityField/rewardField';
|
import { RewardParam } from '../../../domain/activityField/rewardField';
|
||||||
|
|
||||||
@@ -75,7 +75,7 @@ export class SignInHandler {
|
|||||||
let roundIndex = playerData.roundIndex;
|
let roundIndex = playerData.roundIndex;
|
||||||
|
|
||||||
//高级签到开启条件
|
//高级签到开启条件
|
||||||
let { lv } = await Role.findByRoleId(roleId);
|
let { lv } = await RoleModel.findByRoleId(roleId);
|
||||||
if (playerData.type == ACTIVITY_TYPE.SIGN_IN_VIP) {
|
if (playerData.type == ACTIVITY_TYPE.SIGN_IN_VIP) {
|
||||||
if (!canBuyVip(lv))
|
if (!canBuyVip(lv))
|
||||||
return resResult(STATUS.ACTIVITY_SIGNIN_VIP_CONDITION);
|
return resResult(STATUS.ACTIVITY_SIGNIN_VIP_CONDITION);
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { Application, BackendSession } from 'pinus';
|
|||||||
import { DailyRecordModel } from '../../../db/DailyRecord';
|
import { DailyRecordModel } from '../../../db/DailyRecord';
|
||||||
import { STATUS } from '../../../consts/statusCode';
|
import { STATUS } from '../../../consts/statusCode';
|
||||||
import { resResult } from '../../../pubUtils/util';
|
import { resResult } from '../../../pubUtils/util';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { getDailyNum, getDailyBattleList, getDailyBuyCountCost } from '../../../services/dailyBattleService';
|
import { getDailyNum, getDailyBattleList, getDailyBuyCountCost } from '../../../services/dailyBattleService';
|
||||||
import { getGoldObject, handleCost } from '../../../services/role/rewardService';
|
import { getGoldObject, handleCost } from '../../../services/role/rewardService';
|
||||||
import { gameData } from '../../../pubUtils/data';
|
import { gameData } from '../../../pubUtils/data';
|
||||||
@@ -20,7 +20,7 @@ export class DailyBattleHandler {
|
|||||||
async getData(msg: { }, session: BackendSession) {
|
async getData(msg: { }, session: BackendSession) {
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let result = await getDailyBattleList(role);
|
let result = await getDailyBattleList(role);
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, { list: result });
|
return resResult(STATUS.SUCCESS, { list: result });
|
||||||
@@ -46,7 +46,7 @@ export class DailyBattleHandler {
|
|||||||
let num = buyCount + i;
|
let num = buyCount + i;
|
||||||
buyCost += getDailyBuyCountCost(num);
|
buyCost += getDailyBuyCountCost(num);
|
||||||
}
|
}
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if(buyCost > role.gold) {
|
if(buyCost > role.gold) {
|
||||||
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Application, BackendSession } from 'pinus';
|
import { Application, BackendSession } from 'pinus';
|
||||||
import { STATUS } from '../../../consts/statusCode';
|
import { STATUS } from '../../../consts/statusCode';
|
||||||
import { resResult, shouldRefresh } from '../../../pubUtils/util';
|
import { resResult, shouldRefresh } from '../../../pubUtils/util';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { getGoldObject, handleCost } from '../../../services/role/rewardService';
|
import { getGoldObject, handleCost } from '../../../services/role/rewardService';
|
||||||
import { getDungeonData, getDungeonBuyCountCost } from '../../../services/dungeonService';
|
import { getDungeonData, getDungeonBuyCountCost } from '../../../services/dungeonService';
|
||||||
import * as dicParam from '../../../pubUtils/dicParam';
|
import * as dicParam from '../../../pubUtils/dicParam';
|
||||||
@@ -21,7 +21,7 @@ export class DungeonBattleHandler {
|
|||||||
// 获取关卡列表
|
// 获取关卡列表
|
||||||
async getData(msg: { }, session: BackendSession) {
|
async getData(msg: { }, session: BackendSession) {
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let res = await getDungeonData(role);
|
let res = await getDungeonData(role);
|
||||||
return resResult(STATUS.SUCCESS, res);
|
return resResult(STATUS.SUCCESS, res);
|
||||||
}
|
}
|
||||||
@@ -32,7 +32,7 @@ export class DungeonBattleHandler {
|
|||||||
const roleId = session.get('roleId');
|
const roleId = session.get('roleId');
|
||||||
const sid = session.get('sid');
|
const sid = session.get('sid');
|
||||||
|
|
||||||
let { dungeonCnt = 0, dungeonBuyCnt = 0, dungeonRefTime } = await Role.findByRoleId(roleId);
|
let { dungeonCnt = 0, dungeonBuyCnt = 0, dungeonRefTime } = await RoleModel.findByRoleId(roleId);
|
||||||
let curTime = new Date();
|
let curTime = new Date();
|
||||||
let needRefresh = shouldRefresh(dungeonRefTime, curTime);
|
let needRefresh = shouldRefresh(dungeonRefTime, curTime);
|
||||||
if(needRefresh) {
|
if(needRefresh) {
|
||||||
@@ -47,12 +47,12 @@ export class DungeonBattleHandler {
|
|||||||
for(let i = 1; i <= count; i++) {
|
for(let i = 1; i <= count; i++) {
|
||||||
buyCost += getDungeonBuyCountCost(dungeonBuyCnt + i);
|
buyCost += getDungeonBuyCountCost(dungeonBuyCnt + i);
|
||||||
}
|
}
|
||||||
let {gold} = await Role.findByRoleId(roleId);
|
let {gold} = await RoleModel.findByRoleId(roleId);
|
||||||
if(buyCost > gold) {
|
if(buyCost > gold) {
|
||||||
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
||||||
}
|
}
|
||||||
await handleCost(roleId, sid, [getGoldObject(buyCost)], ITEM_CHANGE_REASON.DUNGEON_BATTLE_BUY_CNT);
|
await handleCost(roleId, sid, [getGoldObject(buyCost)], ITEM_CHANGE_REASON.DUNGEON_BATTLE_BUY_CNT);
|
||||||
await Role.buyCnt(roleId, needRefresh, count, curTime);
|
await RoleModel.buyCnt(roleId, needRefresh, count, curTime);
|
||||||
|
|
||||||
let nextCostGold = getDungeonBuyCountCost(dungeonBuyCnt + count + 1);
|
let nextCostGold = getDungeonBuyCountCost(dungeonBuyCnt + count + 1);
|
||||||
let freeCount = getVipDungeonCnt(session.get('vipStartTime'));
|
let freeCount = getVipDungeonCnt(session.get('vipStartTime'));
|
||||||
@@ -81,7 +81,7 @@ export class DungeonBattleHandler {
|
|||||||
return resResult(STATUS.TOKEN_ERR);
|
return resResult(STATUS.TOKEN_ERR);
|
||||||
}
|
}
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
await Role.updateRoleInfo(roleId, { dungeonRefTime: new Date(Date.now() - 86400000) });
|
await RoleModel.updateRoleInfo(roleId, { dungeonRefTime: new Date(Date.now() - 86400000) });
|
||||||
return resResult(STATUS.SUCCESS);
|
return resResult(STATUS.SUCCESS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import { Application, BackendSession, HandlerService, } from 'pinus';
|
import { Application, BackendSession, HandlerService, } from 'pinus';
|
||||||
import { EventRecordModel } from '../../../db/EventRecord';
|
import { EventRecordModel } from '../../../db/EventRecord';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { EVENT_STATUS, EVENT_RECORD_STATUS, EVENT_ANSWER_STATUS, TASK_TYPE, DEBUG_MAGIC_WORD, ITEM_CHANGE_REASON, EVENT_TYPE, EVENT_QUIZ_NUM } from '../../../consts';
|
import { EVENT_STATUS, EVENT_RECORD_STATUS, EVENT_ANSWER_STATUS, TASK_TYPE, DEBUG_MAGIC_WORD, ITEM_CHANGE_REASON, EVENT_TYPE, EVENT_QUIZ_NUM } from '../../../consts';
|
||||||
import { checkEventStatus, getEventSuccessStatus, getEvent, checkQuiz, startEvent, refreshEvent, getEventTime, randomPosition, randomQuestion } from '../../../services/eventSercive';
|
import { checkEventStatus, getEventSuccessStatus, getEvent, checkQuiz, startEvent, refreshEvent, getEventTime, randomPosition, randomQuestion } from '../../../services/eventSercive';
|
||||||
import { addItems } from '../../../services/role/rewardService';
|
import { addItems } from '../../../services/role/rewardService';
|
||||||
@@ -115,7 +115,7 @@ export class EventBattleHandler {
|
|||||||
let reward = isSuccess ? dicEvent.winReward : dicEvent.loseReward;
|
let reward = isSuccess ? dicEvent.winReward : dicEvent.loseReward;
|
||||||
let goods = await addItems(roleId, roleName, sid, reward, ITEM_CHANGE_REASON.EVENT_REWARD);
|
let goods = await addItems(roleId, roleName, sid, reward, ITEM_CHANGE_REASON.EVENT_REWARD);
|
||||||
if (eventStatus == EVENT_STATUS.STARTING) { // 如果是第一次开启的挑战,保存成开启状态
|
if (eventStatus == EVENT_STATUS.STARTING) { // 如果是第一次开启的挑战,保存成开启状态
|
||||||
await Role.setEventStatus(roleId, EVENT_STATUS.OPEN);
|
await RoleModel.setEventStatus(roleId, EVENT_STATUS.OPEN);
|
||||||
// 第一场时间挑战完,开始正常刷新事件,所以刷新时间也重置起来
|
// 第一场时间挑战完,开始正常刷新事件,所以刷新时间也重置起来
|
||||||
session.set('eventStatus', EVENT_STATUS.OPEN);
|
session.set('eventStatus', EVENT_STATUS.OPEN);
|
||||||
session.push('eventStatus', () => { });
|
session.push('eventStatus', () => { });
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { BattleRecordModel } from '../../../db/BattleRecord';
|
|||||||
import { ExpeditionRecordModel } from '../../../db/ExpeditionRecord';
|
import { ExpeditionRecordModel } from '../../../db/ExpeditionRecord';
|
||||||
import { ExpeditionWarRecordModel } from '../../../db/ExpeditionWarRecord';
|
import { ExpeditionWarRecordModel } from '../../../db/ExpeditionWarRecord';
|
||||||
import { ExpeditionPointModel } from '../../../db/ExpeditionPoint';
|
import { ExpeditionPointModel } from '../../../db/ExpeditionPoint';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { genCode, getWarTypeName } from '../../../pubUtils/util';
|
import { genCode, getWarTypeName } from '../../../pubUtils/util';
|
||||||
import { getPointRewardStatus, getResetRemainCnt, findOrCreateEnemies, getExpeditionStatus } from '../../../services/expeditionService';
|
import { getPointRewardStatus, getResetRemainCnt, findOrCreateEnemies, getExpeditionStatus } from '../../../services/expeditionService';
|
||||||
import { DEBUG_MAGIC_WORD, EXPEDITION_WAR_RECORD_STATUS, ITEM_CHANGE_REASON, KING_EXP_RATIO_TYPE, TASK_TYPE, TA_EVENT } from '../../../consts';
|
import { DEBUG_MAGIC_WORD, EXPEDITION_WAR_RECORD_STATUS, ITEM_CHANGE_REASON, KING_EXP_RATIO_TYPE, TASK_TYPE, TA_EVENT } from '../../../consts';
|
||||||
@@ -68,7 +68,7 @@ export class ExpeditionBattleHandler {
|
|||||||
roleId, roleName, heroes: [], myCe
|
roleId, roleName, heroes: [], myCe
|
||||||
});
|
});
|
||||||
await findOrCreateEnemies(roleId, myCe, expeditionCode, 1, EXPEDITION_WAR_RECORD_STATUS.WAITING);
|
await findOrCreateEnemies(roleId, myCe, expeditionCode, 1, EXPEDITION_WAR_RECORD_STATUS.WAITING);
|
||||||
await Role.increaseExpeditionResetCnt(roleId, needRefresh, curTime);
|
await RoleModel.increaseExpeditionResetCnt(roleId, needRefresh, curTime);
|
||||||
let expeditionWarRecord = await ExpeditionWarRecordModel.getRecordByCode(expeditionCode);
|
let expeditionWarRecord = await ExpeditionWarRecordModel.getRecordByCode(expeditionCode);
|
||||||
let curLv = 0;
|
let curLv = 0;
|
||||||
if (expeditionWarRecord.length > 0) {
|
if (expeditionWarRecord.length > 0) {
|
||||||
@@ -134,7 +134,7 @@ export class ExpeditionBattleHandler {
|
|||||||
return resResult(STATUS.BATTLE_MISS_INFO);
|
return resResult(STATUS.BATTLE_MISS_INFO);
|
||||||
}
|
}
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'lv warStar');
|
let role = await RoleModel.findByRoleId(roleId, 'lv warStar');
|
||||||
let apJson = await getAp(roleId, ip, role.lv);
|
let apJson = await getAp(roleId, ip, role.lv);
|
||||||
let { ap } = apJson;
|
let { ap } = apJson;
|
||||||
if (ap < warInfo.cost) {
|
if (ap < warInfo.cost) {
|
||||||
@@ -199,7 +199,7 @@ export class ExpeditionBattleHandler {
|
|||||||
let dicWar = gameData.war.get(battleId);
|
let dicWar = gameData.war.get(battleId);
|
||||||
if(!dicWar) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
if(!dicWar) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
||||||
// 前置关卡是否挑战过
|
// 前置关卡是否挑战过
|
||||||
let role = await Role.findByRoleId(roleId, 'warStar topLineupCe vipStartTime')
|
let role = await RoleModel.findByRoleId(roleId, 'warStar topLineupCe vipStartTime')
|
||||||
let { warStar, topLineupCe, vipStartTime } = role;
|
let { warStar, topLineupCe, vipStartTime } = role;
|
||||||
let previousGk = dicWar.previousGk;
|
let previousGk = dicWar.previousGk;
|
||||||
if (previousGk) {
|
if (previousGk) {
|
||||||
@@ -225,7 +225,7 @@ export class ExpeditionBattleHandler {
|
|||||||
// 更新敌人剩余状态及战斗状态
|
// 更新敌人剩余状态及战斗状态
|
||||||
expeditionWarRecord = await ExpeditionWarRecordModel.updateEnemiesStatus(expeditionCode, expeditionId, EXPEDITION_WAR_RECORD_STATUS.SUCCESS, []);
|
expeditionWarRecord = await ExpeditionWarRecordModel.updateEnemiesStatus(expeditionCode, expeditionId, EXPEDITION_WAR_RECORD_STATUS.SUCCESS, []);
|
||||||
// 更新点数
|
// 更新点数
|
||||||
role = await Role.increaseExpeditionPoint(roleId, dicParam.EXPEDITION_CONST.EXPEDITION_CONST_POINTS);
|
role = await RoleModel.increaseExpeditionPoint(roleId, dicParam.EXPEDITION_CONST.EXPEDITION_CONST_POINTS);
|
||||||
|
|
||||||
// 关卡奖励
|
// 关卡奖励
|
||||||
let warReward = new WarReward(roleId, roleName, sid, battleId, true);
|
let warReward = new WarReward(roleId, roleName, sid, battleId, true);
|
||||||
@@ -234,7 +234,7 @@ export class ExpeditionBattleHandler {
|
|||||||
let curWarStar = warStar.find(cur => cur.id == battleId);
|
let curWarStar = warStar.find(cur => cur.id == battleId);
|
||||||
let { newWarStars, newStar } = calculateWarStar(warStar, battleId, []);
|
let { newWarStars, newStar } = calculateWarStar(warStar, battleId, []);
|
||||||
if (!curWarStar || newStar > curWarStar.star) {
|
if (!curWarStar || newStar > curWarStar.star) {
|
||||||
role = await Role.updateRoleInfo(roleId, { warStar: newWarStars });
|
role = await RoleModel.updateRoleInfo(roleId, { warStar: newWarStars });
|
||||||
}
|
}
|
||||||
|
|
||||||
// 更新下一关状态
|
// 更新下一关状态
|
||||||
@@ -284,7 +284,7 @@ export class ExpeditionBattleHandler {
|
|||||||
return resResult(STATUS.BATTLE_INFO_VALIDATE_ERR);
|
return resResult(STATUS.BATTLE_INFO_VALIDATE_ERR);
|
||||||
}
|
}
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
let apJson = await setAp(serverId, roleId, ip, role.lv, isSuccess?-1 * warInfo.cost: 0, sid, ITEM_CHANGE_REASON.EXPEDITION_BATTLE_END); // 扣除体力
|
let apJson = await setAp(serverId, roleId, ip, role.lv, isSuccess?-1 * warInfo.cost: 0, sid, ITEM_CHANGE_REASON.EXPEDITION_BATTLE_END); // 扣除体力
|
||||||
if (!apJson) {
|
if (!apJson) {
|
||||||
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
|
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
|
||||||
@@ -306,7 +306,7 @@ export class ExpeditionBattleHandler {
|
|||||||
$set: { status: isSuccess ? 1 : 2, star }
|
$set: { status: isSuccess ? 1 : 2, star }
|
||||||
}, true);
|
}, true);
|
||||||
// 更新点数
|
// 更新点数
|
||||||
role = await Role.increaseExpeditionPoint(roleId, isSuccess ? dicParam.EXPEDITION_CONST.EXPEDITION_CONST_POINTS : 0);
|
role = await RoleModel.increaseExpeditionPoint(roleId, isSuccess ? dicParam.EXPEDITION_CONST.EXPEDITION_CONST_POINTS : 0);
|
||||||
let { expeditionPoint = 0, warStar = [] } = role;
|
let { expeditionPoint = 0, warStar = [] } = role;
|
||||||
|
|
||||||
// 关卡奖励
|
// 关卡奖励
|
||||||
@@ -325,7 +325,7 @@ export class ExpeditionBattleHandler {
|
|||||||
reportTAEvent(roleId, TA_EVENT.GK_FIRST_PASS, { war_id: battleId, war_type: getWarTypeName(warInfo.warType), pass_time: Date.now(), pass_duration: nowSeconds() - getSeconds(createdAt), hero_list: dbHeroes });
|
reportTAEvent(roleId, TA_EVENT.GK_FIRST_PASS, { war_id: battleId, war_type: getWarTypeName(warInfo.warType), pass_time: Date.now(), pass_duration: nowSeconds() - getSeconds(createdAt), hero_list: dbHeroes });
|
||||||
}
|
}
|
||||||
if (!curWarStar || newStar > curWarStar.star) {
|
if (!curWarStar || newStar > curWarStar.star) {
|
||||||
await Role.updateRoleInfo(roleId, { warStar: newWarStars });
|
await RoleModel.updateRoleInfo(roleId, { warStar: newWarStars });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
await checkTaskInBattleEnd(serverId, roleId, sid, battleId, dbHeroes, star, isSuccess);
|
await checkTaskInBattleEnd(serverId, roleId, sid, battleId, dbHeroes, star, isSuccess);
|
||||||
@@ -354,7 +354,7 @@ export class ExpeditionBattleHandler {
|
|||||||
|
|
||||||
const serverId = session.get('serverId');
|
const serverId = session.get('serverId');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let { expeditionPoint } = role;
|
let { expeditionPoint } = role;
|
||||||
let dicExpeditionPoint = gameData.expeditionPoint;
|
let dicExpeditionPoint = gameData.expeditionPoint;
|
||||||
let curDicExpeditionPoint = dicExpeditionPoint.get(point);
|
let curDicExpeditionPoint = dicExpeditionPoint.get(point);
|
||||||
@@ -386,7 +386,7 @@ export class ExpeditionBattleHandler {
|
|||||||
}
|
}
|
||||||
if (hasReceivedAll) { // 全部领取了,刷新
|
if (hasReceivedAll) { // 全部领取了,刷新
|
||||||
await ExpeditionPointModel.completeStatus(roleId);
|
await ExpeditionPointModel.completeStatus(roleId);
|
||||||
await Role.increaseExpeditionPoint(roleId, maxPoint * -1);
|
await RoleModel.increaseExpeditionPoint(roleId, maxPoint * -1);
|
||||||
}
|
}
|
||||||
let pointRewards = await getPointRewardStatus(roleId);
|
let pointRewards = await getPointRewardStatus(roleId);
|
||||||
|
|
||||||
@@ -408,7 +408,7 @@ export class ExpeditionBattleHandler {
|
|||||||
return resResult(STATUS.TOKEN_ERR);
|
return resResult(STATUS.TOKEN_ERR);
|
||||||
}
|
}
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
await Role.updateRoleInfo(roleId, { expeditionResetCnt: 0 });
|
await RoleModel.updateRoleInfo(roleId, { expeditionResetCnt: 0 });
|
||||||
return resResult(STATUS.SUCCESS);
|
return resResult(STATUS.SUCCESS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import { getAp, setAp } from '../../../services/actionPointService';
|
|||||||
import { setBattleStatus, checkEventBattle } from '../../../services/eventSercive';
|
import { setBattleStatus, checkEventBattle } from '../../../services/eventSercive';
|
||||||
import { STATUS } from '../../../consts/statusCode';
|
import { STATUS } from '../../../consts/statusCode';
|
||||||
import { resResult } from '../../../pubUtils/util';
|
import { resResult } from '../../../pubUtils/util';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { RScriptRecordModel } from '../../../db/RScriptRecord';
|
import { RScriptRecordModel } from '../../../db/RScriptRecord';
|
||||||
import { checkBattleHeroes, roleLevelup, calculateWarStar, getBattleListOfTypes, getMainChapter, getStarOfChapter, checkWarCountAndInc } from '../../../services/normalBattleService';
|
import { checkBattleHeroes, roleLevelup, calculateWarStar, getBattleListOfTypes, getMainChapter, getStarOfChapter, checkWarCountAndInc } from '../../../services/normalBattleService';
|
||||||
import { checkDungeonNum, checkDungeonAndIncrease, saveDungeonFirst } from '../../../services/dungeonService';
|
import { checkDungeonNum, checkDungeonAndIncrease, saveDungeonFirst } from '../../../services/dungeonService';
|
||||||
@@ -55,7 +55,7 @@ export class NormalBattleHandler {
|
|||||||
if (!warInfo) {
|
if (!warInfo) {
|
||||||
return resResult(STATUS.BATTLE_MISS_INFO);
|
return resResult(STATUS.BATTLE_MISS_INFO);
|
||||||
}
|
}
|
||||||
let role = await Role.findByRoleId(roleId, 'lv warStar warCount roleId refWarCount');
|
let role = await RoleModel.findByRoleId(roleId, 'lv warStar warCount roleId refWarCount');
|
||||||
let apJson = await getAp(roleId, ip, role.lv);
|
let apJson = await getAp(roleId, ip, role.lv);
|
||||||
let { ap } = apJson;
|
let { ap } = apJson;
|
||||||
if (ap < warInfo.cost) {
|
if (ap < warInfo.cost) {
|
||||||
@@ -136,7 +136,7 @@ export class NormalBattleHandler {
|
|||||||
const { types } = msg;
|
const { types } = msg;
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let result = await getBattleListOfTypes(role, types);
|
let result = await getBattleListOfTypes(role, types);
|
||||||
return resResult(STATUS.SUCCESS, {
|
return resResult(STATUS.SUCCESS, {
|
||||||
result
|
result
|
||||||
@@ -176,7 +176,7 @@ export class NormalBattleHandler {
|
|||||||
return resResult(STATUS.BATTLE_INFO_VALIDATE_ERR);
|
return resResult(STATUS.BATTLE_INFO_VALIDATE_ERR);
|
||||||
}
|
}
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'lv vipStartTime warStar warCount refWarCount roleId');
|
let role = await RoleModel.findByRoleId(roleId, 'lv vipStartTime warStar warCount refWarCount roleId');
|
||||||
let apJson = await setAp(serverId, roleId, ip, role.lv, isSuccess? -1 * warInfo.cost: 0, sid, getReasonByWarType(warInfo.warType)); // 扣除体力
|
let apJson = await setAp(serverId, roleId, ip, role.lv, isSuccess? -1 * warInfo.cost: 0, sid, getReasonByWarType(warInfo.warType)); // 扣除体力
|
||||||
if (!apJson) {
|
if (!apJson) {
|
||||||
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
|
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
|
||||||
@@ -225,7 +225,7 @@ export class NormalBattleHandler {
|
|||||||
}
|
}
|
||||||
} else if (warInfo.warType == WAR_TYPE.MYSTERY) {
|
} else if (warInfo.warType == WAR_TYPE.MYSTERY) {
|
||||||
let checkResult = await checkDungeonAndIncrease(roleId, isSuccess?1:0, false, battleId);
|
let checkResult = await checkDungeonAndIncrease(roleId, isSuccess?1:0, false, battleId);
|
||||||
let role = await Role.saveDungeonHero(roleId, battleId, heroes, isSuccess);
|
let role = await RoleModel.saveDungeonHero(roleId, battleId, heroes, isSuccess);
|
||||||
if (role) {
|
if (role) {
|
||||||
await saveDungeonFirst(role, battleId, BattleRecord);
|
await saveDungeonFirst(role, battleId, BattleRecord);
|
||||||
}
|
}
|
||||||
@@ -236,7 +236,7 @@ export class NormalBattleHandler {
|
|||||||
dungeonNum = Object.assign(dungeonNum, checkResult.data)
|
dungeonNum = Object.assign(dungeonNum, checkResult.data)
|
||||||
} else if (warInfo.warType == WAR_TYPE.NORMAL) {
|
} else if (warInfo.warType == WAR_TYPE.NORMAL) {
|
||||||
if(isSuccess) {
|
if(isSuccess) {
|
||||||
let role = await Role.updateMainWarId(roleId, battleId, nowSeconds());
|
let role = await RoleModel.updateMainWarId(roleId, battleId, nowSeconds());
|
||||||
if (role) {
|
if (role) {
|
||||||
let r = new Rank(REDIS_KEY.MAIN_RANK, { serverId });
|
let r = new Rank(REDIS_KEY.MAIN_RANK, { serverId });
|
||||||
await r.setRankWithRoleInfo(roleId, role.mainWarId, role.mainUpdatedAt, role);
|
await r.setRankWithRoleInfo(roleId, role.mainWarId, role.mainUpdatedAt, role);
|
||||||
@@ -244,7 +244,7 @@ export class NormalBattleHandler {
|
|||||||
}
|
}
|
||||||
} else if (warInfo.warType == WAR_TYPE.MAIN_ELITE) {
|
} else if (warInfo.warType == WAR_TYPE.MAIN_ELITE) {
|
||||||
if(isSuccess) {
|
if(isSuccess) {
|
||||||
let role = await Role.updateMainEliteWarId(roleId, battleId, nowSeconds());
|
let role = await RoleModel.updateMainEliteWarId(roleId, battleId, nowSeconds());
|
||||||
if (role) {
|
if (role) {
|
||||||
let r = new Rank(REDIS_KEY.MAIN_ELITE_RANK, { serverId });
|
let r = new Rank(REDIS_KEY.MAIN_ELITE_RANK, { serverId });
|
||||||
await r.setRankWithRoleInfo(roleId, role.mainEliteWarId, role.mainEliteUpdatedAt, role);
|
await r.setRankWithRoleInfo(roleId, role.mainEliteWarId, role.mainEliteUpdatedAt, role);
|
||||||
@@ -286,7 +286,7 @@ export class NormalBattleHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!curWarStar || newStar > curWarStar.star) {
|
if (!curWarStar || newStar > curWarStar.star) {
|
||||||
await Role.updateRoleInfo(roleId, { warStar: newWarStars });
|
await RoleModel.updateRoleInfo(roleId, { warStar: newWarStars });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -325,12 +325,12 @@ export class NormalBattleHandler {
|
|||||||
return resResult(STATUS.BATTLE_MISS_INFO);
|
return resResult(STATUS.BATTLE_MISS_INFO);
|
||||||
}
|
}
|
||||||
// 校验是否三星通关过
|
// 校验是否三星通关过
|
||||||
let { warStar } = await Role.findByRoleId(roleId);
|
let { warStar } = await RoleModel.findByRoleId(roleId);
|
||||||
let curWar = warStar.find(cur => cur.id == battleId);
|
let curWar = warStar.find(cur => cur.id == battleId);
|
||||||
if (!curWar || curWar.star < 3) {
|
if (!curWar || curWar.star < 3) {
|
||||||
return resResult(STATUS.BATTLE_SWEEP_CONDITION_STAR);
|
return resResult(STATUS.BATTLE_SWEEP_CONDITION_STAR);
|
||||||
}
|
}
|
||||||
let role = await Role.findByRoleId(roleId, 'lv warCount refWarCount roleId');
|
let role = await RoleModel.findByRoleId(roleId, 'lv warCount refWarCount roleId');
|
||||||
// 扫荡次数
|
// 扫荡次数
|
||||||
let dailyNum = {};
|
let dailyNum = {};
|
||||||
let dungeonNum = {};
|
let dungeonNum = {};
|
||||||
@@ -459,7 +459,7 @@ export class NormalBattleHandler {
|
|||||||
|
|
||||||
async getMainStarBox(msg: {}, session: BackendSession) {
|
async getMainStarBox(msg: {}, session: BackendSession) {
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let role = await Role.findByRoleId(roleId, 'warStar receivedBox');
|
let role = await RoleModel.findByRoleId(roleId, 'warStar receivedBox');
|
||||||
|
|
||||||
let result = getMainChapter(role);
|
let result = getMainChapter(role);
|
||||||
return resResult(STATUS.SUCCESS, result);
|
return resResult(STATUS.SUCCESS, result);
|
||||||
@@ -474,7 +474,7 @@ export class NormalBattleHandler {
|
|||||||
let roleName = session.get('roleName');
|
let roleName = session.get('roleName');
|
||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'warStar receivedBox');
|
let role = await RoleModel.findByRoleId(roleId, 'warStar receivedBox');
|
||||||
let ids: number[] = [];
|
let ids: number[] = [];
|
||||||
let rewards: RewardInter[] = [];
|
let rewards: RewardInter[] = [];
|
||||||
let star = getStarOfChapter(role.warStar, warType, chapter);
|
let star = getStarOfChapter(role.warStar, warType, chapter);
|
||||||
@@ -491,7 +491,7 @@ export class NormalBattleHandler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(ids.length <= 0) return resResult(STATUS.BATTLE_NO_BOX_CAN_RECEIVE);
|
if(ids.length <= 0) return resResult(STATUS.BATTLE_NO_BOX_CAN_RECEIVE);
|
||||||
role = await Role.receivedBox(roleId, ids);
|
role = await RoleModel.receivedBox(roleId, ids);
|
||||||
let goods = await addItems(roleId, roleName, sid, rewards, ITEM_CHANGE_REASON.RECEIVE_CHAPTER_BOX)
|
let goods = await addItems(roleId, roleName, sid, rewards, ITEM_CHANGE_REASON.RECEIVE_CHAPTER_BOX)
|
||||||
|
|
||||||
let result = getMainChapter(role);
|
let result = getMainChapter(role);
|
||||||
@@ -508,7 +508,7 @@ export class NormalBattleHandler {
|
|||||||
let roleName = session.get('roleName');
|
let roleName = session.get('roleName');
|
||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'receivedWarIds warStar');
|
let role = await RoleModel.findByRoleId(roleId, 'receivedWarIds warStar');
|
||||||
let { warStar, receivedWarIds = [] } = role;
|
let { warStar, receivedWarIds = [] } = role;
|
||||||
let warIds: number[] = [];
|
let warIds: number[] = [];
|
||||||
let rewards: RewardInter[] = [];
|
let rewards: RewardInter[] = [];
|
||||||
@@ -522,7 +522,7 @@ export class NormalBattleHandler {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(warIds.length <= 0) return resResult(STATUS.BATTLE_NO_WAR_REWARD_CAN_RECEIVE);
|
if(warIds.length <= 0) return resResult(STATUS.BATTLE_NO_WAR_REWARD_CAN_RECEIVE);
|
||||||
role = await Role.receiveWarRewards(roleId, warIds);
|
role = await RoleModel.receiveWarRewards(roleId, warIds);
|
||||||
let goods = await addItems(roleId, roleName, sid, rewards, ITEM_CHANGE_REASON.RECEIVE_CHAPTER_BOX)
|
let goods = await addItems(roleId, roleName, sid, rewards, ITEM_CHANGE_REASON.RECEIVE_CHAPTER_BOX)
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, {
|
return resResult(STATUS.SUCCESS, {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { Application, BackendSession, pinus, HandlerService, } from 'pinus';
|
|||||||
import { findIndex } from 'underscore';
|
import { findIndex } from 'underscore';
|
||||||
import { gameData, getPvpBoxBySeasonNumAndIndex } from '../../../pubUtils/data';
|
import { gameData, getPvpBoxBySeasonNumAndIndex } from '../../../pubUtils/data';
|
||||||
import { refreshEnemies, getEnemies, refChallengeCnt, generPVPOppRecInfo, generMyRecInfo, sendLastSeasonRewardIfNotSent, refreshRefOppCnt, generPvpLineupCe, calLineupScore, checkPvpSeasonIsStart, checkPvpSeasonIsSummit, getPvpSeasonStatus, checkPvpSeasonIsWaiting } from '../../../services/pvpService';
|
import { refreshEnemies, getEnemies, refChallengeCnt, generPVPOppRecInfo, generMyRecInfo, sendLastSeasonRewardIfNotSent, refreshRefOppCnt, generPvpLineupCe, calLineupScore, checkPvpSeasonIsStart, checkPvpSeasonIsSummit, getPvpSeasonStatus, checkPvpSeasonIsWaiting } from '../../../services/pvpService';
|
||||||
import Role, { RoleType } from '../../../db/Role';
|
import { RoleModel, RoleType } from '../../../db/Role';
|
||||||
import { STATUS } from '../../../consts/statusCode';
|
import { STATUS } from '../../../consts/statusCode';
|
||||||
import { resResult, genCode, checkRoleIsRobot, robotIdComBack } from '../../../pubUtils/util';
|
import { resResult, genCode, checkRoleIsRobot, robotIdComBack } from '../../../pubUtils/util';
|
||||||
import { PvpDefenseModel, pvpUpdateInter } from '../../../db/PvpDefense';
|
import { PvpDefenseModel, pvpUpdateInter } from '../../../db/PvpDefense';
|
||||||
@@ -51,7 +51,7 @@ export class PvpHandler {
|
|||||||
let seasonRewardTime: number = this.app.get('pvpSeasonRewardTime');
|
let seasonRewardTime: number = this.app.get('pvpSeasonRewardTime');
|
||||||
let pvpDefense = await PvpDefenseModel.findByRoleIdIncludeAll(roleId);
|
let pvpDefense = await PvpDefenseModel.findByRoleIdIncludeAll(roleId);
|
||||||
if(!pvpDefense) {
|
if(!pvpDefense) {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
pvpDefense = await PvpDefenseModel.createPvpDefense(seasonNum, { serverId: role.serverId, roleId: role.roleId, roleName: role.roleName, role: role._id });
|
pvpDefense = await PvpDefenseModel.createPvpDefense(seasonNum, { serverId: role.serverId, roleId: role.roleId, roleName: role.roleName, role: role._id });
|
||||||
} else {
|
} else {
|
||||||
// 如果没有发过,将上赛季的奖励发下
|
// 如果没有发过,将上赛季的奖励发下
|
||||||
@@ -204,7 +204,7 @@ export class PvpHandler {
|
|||||||
oppBeforePlayers: pvpDefense.oppPlayers
|
oppBeforePlayers: pvpDefense.oppPlayers
|
||||||
};
|
};
|
||||||
// 刷新对手
|
// 刷新对手
|
||||||
const role = await Role.findByRoleId(roleId, null, true);
|
const role = await RoleModel.findByRoleId(roleId, null, true);
|
||||||
let oppPlayers = await refreshEnemies(role, seasonNum, pvpDefense.score ,pvpDefense.attack.score, pvpDefense.attack.pLv||1);
|
let oppPlayers = await refreshEnemies(role, seasonNum, pvpDefense.score ,pvpDefense.attack.score, pvpDefense.attack.pLv||1);
|
||||||
update.oppPlayers = oppPlayers;
|
update.oppPlayers = oppPlayers;
|
||||||
|
|
||||||
@@ -257,7 +257,7 @@ export class PvpHandler {
|
|||||||
|
|
||||||
let update: pvpUpdateInter = {};
|
let update: pvpUpdateInter = {};
|
||||||
|
|
||||||
const role = await Role.findByRoleId(roleId, null, true);
|
const role = await RoleModel.findByRoleId(roleId, null, true);
|
||||||
|
|
||||||
const myRecInfo = await generMyRecInfo(pvpDefense, role, isSuccess, pos, myHeroes);
|
const myRecInfo = await generMyRecInfo(pvpDefense, role, isSuccess, pos, myHeroes);
|
||||||
let { attackInfo, showHeroScores, updateParam } = myRecInfo
|
let { attackInfo, showHeroScores, updateParam } = myRecInfo
|
||||||
@@ -332,7 +332,7 @@ export class PvpHandler {
|
|||||||
// 更新挑战阵容
|
// 更新挑战阵容
|
||||||
if(refOppObj.shouldRefOpp) {
|
if(refOppObj.shouldRefOpp) {
|
||||||
if(pvpDefense.attack) {
|
if(pvpDefense.attack) {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let seasonNum: number = this.app.get('pvpSeasonNum');
|
let seasonNum: number = this.app.get('pvpSeasonNum');
|
||||||
let oppPlayers = await refreshEnemies(role, seasonNum, pvpDefense.score, pvpDefense.attack.score, pvpDefense.attack.pLv||1);
|
let oppPlayers = await refreshEnemies(role, seasonNum, pvpDefense.score, pvpDefense.attack.score, pvpDefense.attack.pLv||1);
|
||||||
update.oppPlayers = oppPlayers;
|
update.oppPlayers = oppPlayers;
|
||||||
@@ -546,13 +546,13 @@ export class PvpHandler {
|
|||||||
if(pvpHistoryOpp.isRobot) {
|
if(pvpHistoryOpp.isRobot) {
|
||||||
result.setServerName(await getServerName(serverId));
|
result.setServerName(await getServerName(serverId));
|
||||||
} else {
|
} else {
|
||||||
let role = await Role.findByRoleId(robotIdComBack(oppoRoleId), 'serverId');
|
let role = await RoleModel.findByRoleId(robotIdComBack(oppoRoleId), 'serverId');
|
||||||
result.setServerName(await getServerName(role.serverId));
|
result.setServerName(await getServerName(role.serverId));
|
||||||
}
|
}
|
||||||
} else { // 查询对方pvpDefense
|
} else { // 查询对方pvpDefense
|
||||||
let pvpDefense = await PvpDefenseModel.findByRoleId(oppoRoleId);
|
let pvpDefense = await PvpDefenseModel.findByRoleId(oppoRoleId);
|
||||||
let dbHeroes = await HeroModel.findByRole(oppoRoleId);
|
let dbHeroes = await HeroModel.findByRole(oppoRoleId);
|
||||||
let role = await Role.findByRoleId(oppoRoleId);
|
let role = await RoleModel.findByRoleId(oppoRoleId);
|
||||||
|
|
||||||
let heroes = new Array<PlayerDetailHero>();
|
let heroes = new Array<PlayerDetailHero>();
|
||||||
for (let dbHero of dbHeroes) {
|
for (let dbHero of dbHeroes) {
|
||||||
@@ -660,7 +660,7 @@ export class PvpHandler {
|
|||||||
let newDefense = <Defense>calLineupScore(defense, heroScores);
|
let newDefense = <Defense>calLineupScore(defense, heroScores);
|
||||||
|
|
||||||
let pvpDefense = await PvpDefenseModel.updateInfoAndInclude(roleId, { score, hisScore, heroScores, attack: newAttack, defense: newDefense });
|
let pvpDefense = await PvpDefenseModel.updateInfoAndInclude(roleId, { score, hisScore, heroScores, attack: newAttack, defense: newDefense });
|
||||||
const role = await Role.findByRoleId(roleId);
|
const role = await RoleModel.findByRoleId(roleId);
|
||||||
|
|
||||||
// 加入排行榜
|
// 加入排行榜
|
||||||
let seasonNum: number = this.app.get('pvpSeasonNum');
|
let seasonNum: number = this.app.get('pvpSeasonNum');
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { HANG_UP_CONSTS, ITEM_CHANGE_REASON, MSG_SOURCE, POP_UP_SHOP_CONDITION_T
|
|||||||
import { TaskHero, TowerTaskRecModel, TowerTaskRecType } from './../../../db/TowerTaskRec';
|
import { TaskHero, TowerTaskRecModel, TowerTaskRecType } from './../../../db/TowerTaskRec';
|
||||||
import { HangUpSpdUpRecModel } from './../../../db/HangUpSpdUpRec';
|
import { HangUpSpdUpRecModel } from './../../../db/HangUpSpdUpRec';
|
||||||
import { HangUpRecordModel } from './../../../db/HangUpRecord';
|
import { HangUpRecordModel } from './../../../db/HangUpRecord';
|
||||||
import Role from './../../../db/Role';
|
import { RoleModel } from './../../../db/Role';
|
||||||
import { TowerRecordModel, WarStatus } from './../../../db/TowerRecord';
|
import { TowerRecordModel, WarStatus } from './../../../db/TowerRecord';
|
||||||
import { Application, BackendSession } from 'pinus';
|
import { Application, BackendSession } from 'pinus';
|
||||||
import { resResult, genCode, shouldRefresh } from '../../../pubUtils/util';
|
import { resResult, genCode, shouldRefresh } from '../../../pubUtils/util';
|
||||||
@@ -38,7 +38,7 @@ export class TowerBattleHandler {
|
|||||||
async getStatus(msg: {}, session: BackendSession) {
|
async getStatus(msg: {}, session: BackendSession) {
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let serverId = session.get('serverId');
|
let serverId = session.get('serverId');
|
||||||
let role = await Role.findByRoleId(roleId, 'roleId serverId towerLv towerReceived');
|
let role = await RoleModel.findByRoleId(roleId, 'roleId serverId towerLv towerReceived');
|
||||||
let data = await getTowerStatus(role);
|
let data = await getTowerStatus(role);
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, data);
|
return resResult(STATUS.SUCCESS, data);
|
||||||
@@ -51,7 +51,7 @@ export class TowerBattleHandler {
|
|||||||
*/
|
*/
|
||||||
async resetLv(msg: {towerLv: number}, session: BackendSession) {
|
async resetLv(msg: {towerLv: number}, session: BackendSession) {
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let { towerLv } = await Role.findByRoleId(roleId);
|
let { towerLv } = await RoleModel.findByRoleId(roleId);
|
||||||
if (msg.towerLv !== towerLv) {
|
if (msg.towerLv !== towerLv) {
|
||||||
return resResult(STATUS.TOWER_RESET_ERR);
|
return resResult(STATUS.TOWER_RESET_ERR);
|
||||||
}
|
}
|
||||||
@@ -99,7 +99,7 @@ export class TowerBattleHandler {
|
|||||||
let roleName = session.get('roleName');
|
let roleName = session.get('roleName');
|
||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
const result = await calcuHangUpReward(role);
|
const result = await calcuHangUpReward(role);
|
||||||
if(!result) {
|
if(!result) {
|
||||||
return resResult(STATUS.TOWER_HANG_UP_NOT_START);
|
return resResult(STATUS.TOWER_HANG_UP_NOT_START);
|
||||||
@@ -126,7 +126,7 @@ export class TowerBattleHandler {
|
|||||||
|
|
||||||
const curTime = new Date();
|
const curTime = new Date();
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let { hangUpSpdUpCnt, gold, lastSpdUpTime } = role;
|
let { hangUpSpdUpCnt, gold, lastSpdUpTime } = role;
|
||||||
if (shouldRefresh(lastSpdUpTime, curTime)) {
|
if (shouldRefresh(lastSpdUpTime, curTime)) {
|
||||||
hangUpSpdUpCnt = 0;
|
hangUpSpdUpCnt = 0;
|
||||||
@@ -148,7 +148,7 @@ export class TowerBattleHandler {
|
|||||||
|
|
||||||
await handleCost(roleId, sid, [getGoldObject(costGold)], ITEM_CHANGE_REASON.TOWER_HUNG_UP_SDP_UP)
|
await handleCost(roleId, sid, [getGoldObject(costGold)], ITEM_CHANGE_REASON.TOWER_HUNG_UP_SDP_UP)
|
||||||
|
|
||||||
const spdUpResult = await Role.hangUpSpdUp(roleId, msg.speedUpCnt, curTime);
|
const spdUpResult = await RoleModel.hangUpSpdUp(roleId, msg.speedUpCnt, curTime);
|
||||||
if (!spdUpResult) {
|
if (!spdUpResult) {
|
||||||
return resResult(STATUS.TOWER_HANG_UP_FAILED);
|
return resResult(STATUS.TOWER_HANG_UP_FAILED);
|
||||||
}
|
}
|
||||||
@@ -172,12 +172,12 @@ export class TowerBattleHandler {
|
|||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let roleName = session.get('roleName');
|
let roleName = session.get('roleName');
|
||||||
let curTime = new Date();
|
let curTime = new Date();
|
||||||
let { towerLv, towerTaskRefTime, towerTaskReCnt=0 } = await Role.findByRoleId(roleId);
|
let { towerLv, towerTaskRefTime, towerTaskReCnt=0 } = await RoleModel.findByRoleId(roleId);
|
||||||
if(towerTaskReCnt >= dicParam.TOWER_SEARCH.TOWER_SEARCH_REFRESHRULE) { // 付费刷新次数
|
if(towerTaskReCnt >= dicParam.TOWER_SEARCH.TOWER_SEARCH_REFRESHRULE) { // 付费刷新次数
|
||||||
return resResult(STATUS.TOWER_REF_CNT_NOT_ENOUGH);
|
return resResult(STATUS.TOWER_REF_CNT_NOT_ENOUGH);
|
||||||
}
|
}
|
||||||
let costGold = getTowerTaskCostGold(towerTaskReCnt, towerTaskRefTime);
|
let costGold = getTowerTaskCostGold(towerTaskReCnt, towerTaskRefTime);
|
||||||
let {gold} = await Role.findByRoleId(roleId);
|
let {gold} = await RoleModel.findByRoleId(roleId);
|
||||||
if(costGold > gold) {
|
if(costGold > gold) {
|
||||||
return resResult(STATUS.TOWER_GOLD_NOT_ENOUGH);
|
return resResult(STATUS.TOWER_GOLD_NOT_ENOUGH);
|
||||||
}
|
}
|
||||||
@@ -189,7 +189,7 @@ export class TowerBattleHandler {
|
|||||||
if(task) batchCode = task.batchCode;
|
if(task) batchCode = task.batchCode;
|
||||||
}
|
}
|
||||||
curTasks = await refreshTasks(towerLv, batchCode, roleId, roleName, curTasks);
|
curTasks = await refreshTasks(towerLv, batchCode, roleId, roleName, curTasks);
|
||||||
let newRole = await Role.increaseTowerRefCnt(roleId, 1);
|
let newRole = await RoleModel.increaseTowerRefCnt(roleId, 1);
|
||||||
|
|
||||||
let refRemainTime = getRemainTime(curTime);
|
let refRemainTime = getRemainTime(curTime);
|
||||||
let nextCostGold = getTowerTaskCostGold(newRole.towerTaskReCnt, newRole.towerTaskRefTime);
|
let nextCostGold = getTowerTaskCostGold(newRole.towerTaskReCnt, newRole.towerTaskRefTime);
|
||||||
@@ -251,7 +251,7 @@ export class TowerBattleHandler {
|
|||||||
if (!recs || recs.length === 0) {
|
if (!recs || recs.length === 0) {
|
||||||
return resResult(STATUS.TOWER_TASK_SEND_ERR);
|
return resResult(STATUS.TOWER_TASK_SEND_ERR);
|
||||||
}
|
}
|
||||||
let role = await Role.increaseTowerCnt(roleId, tasks.length)
|
let role = await RoleModel.increaseTowerCnt(roleId, tasks.length)
|
||||||
let refRemainTime = getRemainTime(curTime);
|
let refRemainTime = getRemainTime(curTime);
|
||||||
|
|
||||||
curTasks = await TowerTaskRecModel.getCurTasks(roleId); // 当前显示中的任务
|
curTasks = await TowerTaskRecModel.getCurTasks(roleId); // 当前显示中的任务
|
||||||
@@ -289,7 +289,7 @@ export class TowerBattleHandler {
|
|||||||
let refRemainTime = getRemainTime(curTime);
|
let refRemainTime = getRemainTime(curTime);
|
||||||
|
|
||||||
let curTasks = await TowerTaskRecModel.getCurTasks(roleId); // 当前显示中的任务
|
let curTasks = await TowerTaskRecModel.getCurTasks(roleId); // 当前显示中的任务
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let costGold = getTowerTaskCostGold(role.towerTaskReCnt, role.towerTaskRefTime);
|
let costGold = getTowerTaskCostGold(role.towerTaskReCnt, role.towerTaskRefTime);
|
||||||
return resResult(STATUS.SUCCESS, { curTasks: treatTask(curTasks, curTime), goods, refRemainTime, nextCostGold: costGold });
|
return resResult(STATUS.SUCCESS, { curTasks: treatTask(curTasks, curTime), goods, refRemainTime, nextCostGold: costGold });
|
||||||
}
|
}
|
||||||
@@ -302,7 +302,7 @@ export class TowerBattleHandler {
|
|||||||
let serverId = session.get('serverId');
|
let serverId = session.get('serverId');
|
||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let oldTowerLv = role.towerLv;
|
let oldTowerLv = role.towerLv;
|
||||||
let dicTower = gameData.tower.get(oldTowerLv);
|
let dicTower = gameData.tower.get(oldTowerLv);
|
||||||
if(!dicTower.canSkip) {
|
if(!dicTower.canSkip) {
|
||||||
@@ -339,7 +339,7 @@ export class TowerBattleHandler {
|
|||||||
await TowerRecordModel.skipTower(roleId, role.towerLv, toLv, warStatus);
|
await TowerRecordModel.skipTower(roleId, role.towerLv, toLv, warStatus);
|
||||||
await checkAndStartHungUp(roleId, roleName, role.towerLv);
|
await checkAndStartHungUp(roleId, roleName, role.towerLv);
|
||||||
// 更新玩家表
|
// 更新玩家表
|
||||||
role = await Role.setTowerLv(roleId, toLv, newWarStar);
|
role = await RoleModel.setTowerLv(roleId, toLv, newWarStar);
|
||||||
|
|
||||||
await addItems(roleId, roleName, sid, dicTower.reward, ITEM_CHANGE_REASON.TOWER_BATTLE_END);
|
await addItems(roleId, roleName, sid, dicTower.reward, ITEM_CHANGE_REASON.TOWER_BATTLE_END);
|
||||||
pushTowerMsg(roleId, roleName, serverId, MSG_SOURCE.TOWER_SUC, role.towerLv - 1);
|
pushTowerMsg(roleId, roleName, serverId, MSG_SOURCE.TOWER_SUC, role.towerLv - 1);
|
||||||
@@ -365,7 +365,7 @@ export class TowerBattleHandler {
|
|||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
let { id } = msg; // id为0表示一键领取
|
let { id } = msg; // id为0表示一键领取
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'towerLv towerReceived');
|
let role = await RoleModel.findByRoleId(roleId, 'towerLv towerReceived');
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let { towerLv, towerReceived = [] } = role;
|
let { towerLv, towerReceived = [] } = role;
|
||||||
@@ -390,7 +390,7 @@ export class TowerBattleHandler {
|
|||||||
rewards.push(...dicTowerGift.reward);
|
rewards.push(...dicTowerGift.reward);
|
||||||
newReceived.push(id);
|
newReceived.push(id);
|
||||||
}
|
}
|
||||||
role = await Role.receiveTowerBox(roleId, newReceived);
|
role = await RoleModel.receiveTowerBox(roleId, newReceived);
|
||||||
let goods = await addItems(roleId, roleName, sid, combineItems(rewards), ITEM_CHANGE_REASON.RECEIVE_TOWER_BOX);
|
let goods = await addItems(roleId, roleName, sid, combineItems(rewards), ITEM_CHANGE_REASON.RECEIVE_TOWER_BOX);
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, { goods, receivedBox: newReceived });
|
return resResult(STATUS.SUCCESS, { goods, receivedBox: newReceived });
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { DEFAULT_MSG_PER_PAGE, SDK_PUSH_MSG_TYPE, SDK_PUSH_TARGET_TYPE, STATUS,
|
|||||||
import { createAccuseData, createGroupMsg, createPrivateMsg, getPrivateMessages, pushGroupMsgToRoom, pushMsgToRole, updatePrivateMsgReadInfo, recentPrivateChatInfos, recentWorldMsgs, recentSysMsgs, recentGuildMsgs, updatePrivateMsgIsTop, delPrivateMsg, recentServerGroupMsgs, recentLeagueMsgs } from '../../../services/chatService';
|
import { createAccuseData, createGroupMsg, createPrivateMsg, getPrivateMessages, pushGroupMsgToRoom, pushMsgToRole, updatePrivateMsgReadInfo, recentPrivateChatInfos, recentWorldMsgs, recentSysMsgs, recentGuildMsgs, updatePrivateMsgIsTop, delPrivateMsg, recentServerGroupMsgs, recentLeagueMsgs } from '../../../services/chatService';
|
||||||
import { getSimpleRoleInfo } from '../../../services/roleService';
|
import { getSimpleRoleInfo } from '../../../services/roleService';
|
||||||
import { checkTask } from '../../../services/task/taskService';
|
import { checkTask } from '../../../services/task/taskService';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { getFriendRelationType } from '../../../services/friendService';
|
import { getFriendRelationType } from '../../../services/friendService';
|
||||||
import { GVGLeagueModel } from '../../../db/GVGLeague';
|
import { GVGLeagueModel } from '../../../db/GVGLeague';
|
||||||
import { getAllGroupOfServer } from '../../../services/serverService';
|
import { getAllGroupOfServer } from '../../../services/serverService';
|
||||||
@@ -209,7 +209,7 @@ export class ChatHandler {
|
|||||||
const roleId = session.get('roleId');
|
const roleId = session.get('roleId');
|
||||||
const roleName = session.get('roleName');
|
const roleName = session.get('roleName');
|
||||||
const { targetRoleId, targetMsgCode, reason } = msg;
|
const { targetRoleId, targetMsgCode, reason } = msg;
|
||||||
let targetRole = await Role.findByRoleId(targetRoleId);
|
let targetRole = await RoleModel.findByRoleId(targetRoleId);
|
||||||
if(!targetRoleId) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!targetRoleId) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
const accuseRec = await createAccuseData(roleId, roleName, targetRoleId, targetRole.roleName, targetMsgCode, reason);
|
const accuseRec = await createAccuseData(roleId, roleName, targetRoleId, targetRole.roleName, targetMsgCode, reason);
|
||||||
if (!accuseRec) return resResult(STATUS.WRONG_PARMS);
|
if (!accuseRec) return resResult(STATUS.WRONG_PARMS);
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ import { difference, pick } from 'underscore';
|
|||||||
* @Author: 梁桐川
|
* @Author: 梁桐川
|
||||||
* @Date: 2020-11-30 15:05:48
|
* @Date: 2020-11-30 15:05:48
|
||||||
* @Last Modified by: 梁桐川
|
* @Last Modified by: 梁桐川
|
||||||
* @Last Modified time: 2023-05-06 15:26:55
|
* @Last Modified time: 2021-08-27 17:47:56
|
||||||
*/
|
*/
|
||||||
import { IT_TYPE, CURRENCY_BY_TYPE, CURRENCY_TYPE, COM_TEAM_STATUS, COM_BTL_CONST, CONSUME_TYPE, MSG_SOURCE, ROLE_SELECT, TASK_TYPE, KING_EXP_RATIO_TYPE, ITEM_CHANGE_REASON, getChannelType, CHANNEL_PREFIX, DEBUG_MAGIC_WORD, PUSH_ROUTE, POPULATE_TYPE } from '../../../consts';
|
import { IT_TYPE, CURRENCY_BY_TYPE, CURRENCY_TYPE, COM_TEAM_STATUS, COM_BTL_CONST, CONSUME_TYPE, MSG_SOURCE, ROLE_SELECT, TASK_TYPE, KING_EXP_RATIO_TYPE, ITEM_CHANGE_REASON, getChannelType, CHANNEL_PREFIX, DEBUG_MAGIC_WORD, PUSH_ROUTE, POPULATE_TYPE } from '../../../consts';
|
||||||
import Role from '../../../db/Role';
|
import Role, { RoleModel } from '../../../db/Role';
|
||||||
import { STATUS } from '../../../consts/statusCode';
|
import { STATUS } from '../../../consts/statusCode';
|
||||||
import { Application, BackendSession } from 'pinus';
|
import { Application, BackendSession } from 'pinus';
|
||||||
import { resResult, getRandSingleEelm, cal } from '../../../pubUtils/util';
|
import { resResult, getRandSingleEelm, cal } from '../../../pubUtils/util';
|
||||||
@@ -59,7 +59,7 @@ export class ComBattleHandler {
|
|||||||
const enoughBlueprt = await hasEnoughBlueprt(roleId, sid, blueprtId);
|
const enoughBlueprt = await hasEnoughBlueprt(roleId, sid, blueprtId);
|
||||||
if (!enoughBlueprt) return resResult(STATUS.COM_BATTLE_BLUEPRT_NOT_ENOUGH);
|
if (!enoughBlueprt) return resResult(STATUS.COM_BATTLE_BLUEPRT_NOT_ENOUGH);
|
||||||
|
|
||||||
const roleInfo = await Role.findByRoleId(roleId, null, true);
|
const roleInfo = await RoleModel.findByRoleId(roleId, null, true);
|
||||||
const { lv, topLineupCe } = roleInfo;
|
const { lv, topLineupCe } = roleInfo;
|
||||||
if (lv < COM_BTL_CONST.ENABLE_LV) return resResult(STATUS.COM_BATTLE_LV_NOT_ENOUGH);
|
if (lv < COM_BTL_CONST.ENABLE_LV) return resResult(STATUS.COM_BATTLE_LV_NOT_ENOUGH);
|
||||||
if(ceLimit && ceLimit > topLineupCe * (1 + COM_BTL_CONST.ROBOT_CE_RATIO)) {
|
if(ceLimit && ceLimit > topLineupCe * (1 + COM_BTL_CONST.ROBOT_CE_RATIO)) {
|
||||||
@@ -102,7 +102,7 @@ export class ComBattleHandler {
|
|||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
const { lv: lvs = [], magicWord } = msg;
|
const { lv: lvs = [], magicWord } = msg;
|
||||||
const roleInfo = await Role.findByRoleId(roleId, null, true);
|
const roleInfo = await RoleModel.findByRoleId(roleId, null, true);
|
||||||
const { lv: playerLv } = roleInfo;
|
const { lv: playerLv } = roleInfo;
|
||||||
let { topLineupCe = 1000 } = roleInfo;
|
let { topLineupCe = 1000 } = roleInfo;
|
||||||
|
|
||||||
@@ -717,7 +717,7 @@ export class ComBattleHandler {
|
|||||||
let teamStatus = getComTeamByCode(teamCode);
|
let teamStatus = getComTeamByCode(teamCode);
|
||||||
if(!teamStatus) return resResult(STATUS.WRONG_PARMS);
|
if(!teamStatus) return resResult(STATUS.WRONG_PARMS);
|
||||||
|
|
||||||
let role = await Role.findByRoleId(targetRoleId, 'lv');
|
let role = await RoleModel.findByRoleId(targetRoleId, 'lv');
|
||||||
if(comBtlLvInvalid(role.lv, [teamStatus.lv])) {
|
if(comBtlLvInvalid(role.lv, [teamStatus.lv])) {
|
||||||
return resResult(STATUS.COM_BATTLE_INVITE_LV_NOT_ENOUGH);
|
return resResult(STATUS.COM_BATTLE_INVITE_LV_NOT_ENOUGH);
|
||||||
}
|
}
|
||||||
@@ -754,7 +754,7 @@ export class ComBattleHandler {
|
|||||||
if(r != roleId) roleIdList.push(r);
|
if(r != roleId) roleIdList.push(r);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const roles = await Role.findByRoleIds(roleIdList, ROLE_SELECT.SHOW_SIMPLE, true);
|
const roles = await RoleModel.findByRoleIds(roleIdList, ROLE_SELECT.SHOW_SIMPLE, true);
|
||||||
let result = new Array<FriendParams>();
|
let result = new Array<FriendParams>();
|
||||||
for(let role of roles) {
|
for(let role of roles) {
|
||||||
if(role.quitTime == role.loginTime) {
|
if(role.quitTime == role.loginTime) {
|
||||||
@@ -769,14 +769,14 @@ export class ComBattleHandler {
|
|||||||
async getTeamInvitation(msg: { }, session: BackendSession) {
|
async getTeamInvitation(msg: { }, session: BackendSession) {
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let guildCode = session.get('guildCode');
|
let guildCode = session.get('guildCode');
|
||||||
let role = await Role.findByRoleId(roleId, 'lv topLineupCe');
|
let role = await RoleModel.findByRoleId(roleId, 'lv topLineupCe');
|
||||||
const assistCnt = await getAllAssistCnt(roleId);
|
const assistCnt = await getAllAssistCnt(roleId);
|
||||||
|
|
||||||
let { minLv, maxLv } = getComBtlLvByPlayerLv(role.lv);
|
let { minLv, maxLv } = getComBtlLvByPlayerLv(role.lv);
|
||||||
let refreshTime = nowSeconds() - INFO_WINDOW.TEAM_INFORMATION_TIME;
|
let refreshTime = nowSeconds() - INFO_WINDOW.TEAM_INFORMATION_TIME;
|
||||||
const invitations = await ComBattleTeamModel.findInvitations(roleId, guildCode, minLv, maxLv, role.topLineupCe, refreshTime, INFO_WINDOW.TEAM_VIEW);
|
const invitations = await ComBattleTeamModel.findInvitations(roleId, guildCode, minLv, maxLv, role.topLineupCe, refreshTime, INFO_WINDOW.TEAM_VIEW);
|
||||||
let roleIds = invitations.map(cur => cur.capId);
|
let roleIds = invitations.map(cur => cur.capId);
|
||||||
let roles = await Role.findByRoleIds(roleIds);
|
let roles = await RoleModel.findByRoleIds(roleIds);
|
||||||
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
|
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
|
||||||
const teams: ComBattleInvitation[] = [];
|
const teams: ComBattleInvitation[] = [];
|
||||||
for(let invitation of invitations) {
|
for(let invitation of invitations) {
|
||||||
@@ -810,7 +810,7 @@ export class ComBattleHandler {
|
|||||||
if (magicWord !== DEBUG_MAGIC_WORD) {
|
if (magicWord !== DEBUG_MAGIC_WORD) {
|
||||||
return resResult(STATUS.TOKEN_ERR);
|
return resResult(STATUS.TOKEN_ERR);
|
||||||
}
|
}
|
||||||
let role = await Role.updateRoleInfo(roleId, { lv: targetLv });
|
let role = await RoleModel.updateRoleInfo(roleId, { lv: targetLv });
|
||||||
return resResult(STATUS.SUCCESS, { lv: role.lv, roleId });
|
return resResult(STATUS.SUCCESS, { lv: role.lv, roleId });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { STATUS } from './../../../consts/statusCode';
|
import { STATUS } from './../../../consts/statusCode';
|
||||||
import Role, { RoleType } from './../../../db/Role';
|
import { RoleModel, RoleType } from './../../../db/Role';
|
||||||
import { UserModel, UserType } from '../../../db/User';
|
import { UserModel, UserType } from '../../../db/User';
|
||||||
import { GMUserModel } from '../../../db/GMUser';
|
import { GMUserModel } from '../../../db/GMUser';
|
||||||
import { Application, HandlerService, pinus, } from 'pinus';
|
import { Application, HandlerService, pinus, } from 'pinus';
|
||||||
@@ -87,7 +87,7 @@ export class EntryHandler {
|
|||||||
|
|
||||||
|
|
||||||
let ipLocation = await getIpLocation(ip);
|
let ipLocation = await getIpLocation(ip);
|
||||||
let role = await Role.findByUidAndSetTime(user.uid, serverId, ip, ipLocation, null, true);
|
let role = await RoleModel.findByUidAndSetTime(user.uid, serverId, ip, ipLocation, null, true);
|
||||||
if (!role) {
|
if (!role) {
|
||||||
return resResult(STATUS.ROLE_NOT_FOUND);
|
return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
}
|
}
|
||||||
@@ -118,7 +118,7 @@ export class EntryHandler {
|
|||||||
async getData(msg: { }, session: FrontendSession) {
|
async getData(msg: { }, session: FrontendSession) {
|
||||||
let ip = session.get('ip');
|
let ip = session.get('ip');
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let role = await Role.findByRoleId(roleId, '-_id', true, true);
|
let role = await RoleModel.findByRoleId(roleId, '-_id', true, true);
|
||||||
|
|
||||||
// 推送数据
|
// 推送数据
|
||||||
pushData(role.hasInit, role, session);
|
pushData(role.hasInit, role, session);
|
||||||
@@ -189,7 +189,7 @@ export class EntryHandler {
|
|||||||
let self = this;
|
let self = this;
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
|
|
||||||
let role = await Role.findByRoleIdAndSetTime(roleId, '-_id', true);
|
let role = await RoleModel.findByRoleIdAndSetTime(roleId, '-_id', true);
|
||||||
if (!role) {
|
if (!role) {
|
||||||
return resResult(STATUS.ROLE_NOT_FOUND);
|
return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
}
|
}
|
||||||
@@ -213,9 +213,9 @@ export class EntryHandler {
|
|||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let ip = session.get('ip');
|
let ip = session.get('ip');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let apJson = await getAp(roleId, ip, role.lv);
|
let apJson = await getAp(roleId, ip, role.lv);
|
||||||
return resResult(STATUS.SUCCESS, { apJson });
|
return resResult(STATUS.SUCCESS, { apJson });
|
||||||
}
|
}
|
||||||
@@ -263,7 +263,7 @@ export class EntryHandler {
|
|||||||
} catch(e) {
|
} catch(e) {
|
||||||
console.error(e.stack);
|
console.error(e.stack);
|
||||||
}
|
}
|
||||||
Role.updateRoleInfo(roleId, { quitTime: nowSeconds() });
|
RoleModel.updateRoleInfo(roleId, { quitTime: nowSeconds() });
|
||||||
// if(teamCode) { // 如果有寻宝中的队伍,那么等于战败
|
// if(teamCode) { // 如果有寻宝中的队伍,那么等于战败
|
||||||
// setComBtlOnUserLeave(roleId, teamCode)
|
// setComBtlOnUserLeave(roleId, teamCode)
|
||||||
// }
|
// }
|
||||||
@@ -375,7 +375,7 @@ export class EntryHandler {
|
|||||||
return resResult(STATUS.TOKEN_ERR);
|
return resResult(STATUS.TOKEN_ERR);
|
||||||
}
|
}
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let role = await Role.findByRoleId(roleId, '-_id', true, true);
|
let role = await RoleModel.findByRoleId(roleId, '-_id', true, true);
|
||||||
let module = await getModuleData(type, { role, session });
|
let module = await getModuleData(type, { role, session });
|
||||||
return resResult(STATUS.SUCCESS, { role: module });
|
return resResult(STATUS.SUCCESS, { role: module });
|
||||||
}
|
}
|
||||||
@@ -394,7 +394,7 @@ export class EntryHandler {
|
|||||||
const code = genCode(6);
|
const code = genCode(6);
|
||||||
const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
||||||
|
|
||||||
await Role.createRole(user.uid, serverId, { roleId, code, roleName: roleId, seqId, lv: DEFAULT_LV, exp: (getExpByLv(DEFAULT_LV - 1) || { sum: 0 }).sum || 0 }, '');
|
await RoleModel.createRole(user.uid, serverId, { roleId, code, roleName: roleId, seqId, lv: DEFAULT_LV, exp: (getExpByLv(DEFAULT_LV - 1) || { sum: 0 }).sum || 0 }, '');
|
||||||
}
|
}
|
||||||
console.log('debugQueryTokenByTel got user:', token);
|
console.log('debugQueryTokenByTel got user:', token);
|
||||||
return resResult(STATUS.SUCCESS, { user: token });
|
return resResult(STATUS.SUCCESS, { user: token });
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import { getActivityProducts, getParamStr } from '../../../services/gmService';
|
|||||||
import { ActivityGroupModel } from '../../../db/ActivityGroup';
|
import { ActivityGroupModel } from '../../../db/ActivityGroup';
|
||||||
import { Receiver } from '../../../db/GMMail';
|
import { Receiver } from '../../../db/GMMail';
|
||||||
import { getRoleOnlineInfo } from '../../../services/redisService';
|
import { getRoleOnlineInfo } from '../../../services/redisService';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
|
|
||||||
export interface Cascader {
|
export interface Cascader {
|
||||||
value: number|string;
|
value: number|string;
|
||||||
@@ -96,7 +96,7 @@ export class GmOrderHandler {
|
|||||||
|
|
||||||
let results = [];
|
let results = [];
|
||||||
for(let { roleId, serverId } of receiver) {
|
for(let { roleId, serverId } of receiver) {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if(!role && role.serverId != serverId) {
|
if(!role && role.serverId != serverId) {
|
||||||
results.push(resResult(STATUS.ROLE_NOT_FOUND));
|
results.push(resResult(STATUS.ROLE_NOT_FOUND));
|
||||||
continue;
|
continue;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { getRoleOnlineInfo, updateUserInfo } from '../../../services/redisServic
|
|||||||
import { addItems } from '../../../services/role/rewardService';
|
import { addItems } from '../../../services/role/rewardService';
|
||||||
import { RewardInter } from '../../../pubUtils/interface';
|
import { RewardInter } from '../../../pubUtils/interface';
|
||||||
import { gameData, getExpByLv, getHeroExpByLv, getHeroLvByExp, getLvByExp, getEquipByJobClassAndEPlace } from '../../../pubUtils/data';
|
import { gameData, getExpByLv, getHeroExpByLv, getHeroLvByExp, getLvByExp, getEquipByJobClassAndEPlace } from '../../../pubUtils/data';
|
||||||
import Role, { RoleType, WarStar } from '../../../db/Role';
|
import { RoleModel, RoleType, WarStar } from '../../../db/Role';
|
||||||
import { BLOCK_TYPE, DEFAULT_HEROES, GUILD_AUTH, GUILD_DISMISS_WAY, GUILD_JOB, GUILD_MASTER_CHANGE_WAY, GUILD_STATUS, GUILD_STRUCTURE, HERO_SYSTEM_TYPE, ITEM_CHANGE_REASON, MAIL_TYPE, MEMORY_LOG_TYPE, PUSH_ROUTE, REDIS_KEY, TA_EVENT, WAR_TYPE } from '../../../consts';
|
import { BLOCK_TYPE, DEFAULT_HEROES, GUILD_AUTH, GUILD_DISMISS_WAY, GUILD_JOB, GUILD_MASTER_CHANGE_WAY, GUILD_STATUS, GUILD_STRUCTURE, HERO_SYSTEM_TYPE, ITEM_CHANGE_REASON, MAIL_TYPE, MEMORY_LOG_TYPE, PUSH_ROUTE, REDIS_KEY, TA_EVENT, WAR_TYPE } from '../../../consts';
|
||||||
import { GuildFormParam, SetHeroParam } from '../../../domain/backEndField/params';
|
import { GuildFormParam, SetHeroParam } from '../../../domain/backEndField/params';
|
||||||
import { GuildModel, GuildUpdateParam } from '../../../db/Guild';
|
import { GuildModel, GuildUpdateParam } from '../../../db/Guild';
|
||||||
@@ -57,7 +57,7 @@ export class GmRoleHandler {
|
|||||||
let exp = getExpByLv(lv - 1)?.sum||0;
|
let exp = getExpByLv(lv - 1)?.sum||0;
|
||||||
exp += expInc;
|
exp += expInc;
|
||||||
let newLv = getLvByExp(exp);
|
let newLv = getLvByExp(exp);
|
||||||
let role = await Role.updateRoleInfo(roleId, { lv: newLv, exp })
|
let role = await RoleModel.updateRoleInfo(roleId, { lv: newLv, exp })
|
||||||
let r = new Rank(REDIS_KEY.USER_LV, { serverId: serverId });
|
let r = new Rank(REDIS_KEY.USER_LV, { serverId: serverId });
|
||||||
await r.setRankWithRoleInfo(roleId, newLv, Date.now(), role);
|
await r.setRankWithRoleInfo(roleId, newLv, Date.now(), role);
|
||||||
sendMessageToUserWithSuc(roleId, PUSH_ROUTE.PLAYER_EXP_CHANGE, {
|
sendMessageToUserWithSuc(roleId, PUSH_ROUTE.PLAYER_EXP_CHANGE, {
|
||||||
@@ -65,7 +65,7 @@ export class GmRoleHandler {
|
|||||||
}, sid);
|
}, sid);
|
||||||
}
|
}
|
||||||
if(fixedIpLocation != undefined) {
|
if(fixedIpLocation != undefined) {
|
||||||
await Role.updateRoleInfo(roleId, { fixedIpLocation })
|
await RoleModel.updateRoleInfo(roleId, { fixedIpLocation })
|
||||||
}
|
}
|
||||||
return resResult(STATUS.SUCCESS);
|
return resResult(STATUS.SUCCESS);
|
||||||
}
|
}
|
||||||
@@ -73,7 +73,7 @@ export class GmRoleHandler {
|
|||||||
async handleBlock(msg: { roleId: string, blockType: BLOCK_TYPE, blockReason: string }, session: BackendSession) {
|
async handleBlock(msg: { roleId: string, blockType: BLOCK_TYPE, blockReason: string }, session: BackendSession) {
|
||||||
let { roleId, blockType, blockReason } = msg;
|
let { roleId, blockType, blockReason } = msg;
|
||||||
if(roleId == undefined || blockType == undefined || blockReason == undefined) return resResult(STATUS.WRONG_PARMS);
|
if(roleId == undefined || blockType == undefined || blockReason == undefined) return resResult(STATUS.WRONG_PARMS);
|
||||||
let role = await Role.updateRoleInfo(roleId, { blockType, blockReason });
|
let role = await RoleModel.updateRoleInfo(roleId, { blockType, blockReason });
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
let { isOnline, sid } = await getRoleOnlineInfo(roleId);
|
let { isOnline, sid } = await getRoleOnlineInfo(roleId);
|
||||||
if(isOnline) {
|
if(isOnline) {
|
||||||
@@ -199,7 +199,7 @@ export class GmRoleHandler {
|
|||||||
// 更新装备信息
|
// 更新装备信息
|
||||||
await HeroModel.updateHeroInfo(roleId, hid, { ePlace: hero.ePlace });
|
await HeroModel.updateHeroInfo(roleId, hid, { ePlace: hero.ePlace });
|
||||||
// 获取战力重算需要的数据
|
// 获取战力重算需要的数据
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let schools = await SchoolModel.findByRoleId(roleId);
|
let schools = await SchoolModel.findByRoleId(roleId);
|
||||||
let jewels = await JewelModel.findbyRole(roleId);
|
let jewels = await JewelModel.findbyRole(roleId);
|
||||||
let heroes = await HeroModel.findByRole(roleId);
|
let heroes = await HeroModel.findByRole(roleId);
|
||||||
@@ -222,10 +222,10 @@ export class GmRoleHandler {
|
|||||||
|
|
||||||
await HeroModel.deleteHero(roleId, hid);
|
await HeroModel.deleteHero(roleId, hid);
|
||||||
await SkinModel.deleteByHero(roleId, hid);
|
await SkinModel.deleteByHero(roleId, hid);
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
await PvpDefenseModel.deleteHero(roleId, hid);
|
await PvpDefenseModel.deleteHero(roleId, hid);
|
||||||
await RoleCeModel.deleteHero(roleId, hid);
|
await RoleCeModel.deleteHero(roleId, hid);
|
||||||
await Role.updateRoleInfo(roleId, { topLineup: role.topLineup.filter(cur => cur.hid != hid), topLineupCe: role.topLineupCe - hero.ce, ce: role.ce - hero.ce });
|
await RoleModel.updateRoleInfo(roleId, { topLineup: role.topLineup.filter(cur => cur.hid != hid), topLineupCe: role.topLineupCe - hero.ce, ce: role.ce - hero.ce });
|
||||||
await JewelModel.updateMany({ hid }, { $set: { hid: 0}});
|
await JewelModel.updateMany({ hid }, { $set: { hid: 0}});
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS);
|
return resResult(STATUS.SUCCESS);
|
||||||
@@ -311,7 +311,7 @@ export class GmRoleHandler {
|
|||||||
|
|
||||||
await UserGuildModel.dismiss(code);
|
await UserGuildModel.dismiss(code);
|
||||||
const { members } = guild;
|
const { members } = guild;
|
||||||
await Role.dissmissGuild(members);
|
await RoleModel.dissmissGuild(members);
|
||||||
await UserGuildApplyModel.deleteApplyByGuild(code);
|
await UserGuildApplyModel.deleteApplyByGuild(code);
|
||||||
|
|
||||||
await this.app.rpc.connector.connectorRemote.setOtherUserGuildSession.broadcast(members.map(roleId => { return { roleId, userGuild: null } })); // 更新session
|
await this.app.rpc.connector.connectorRemote.setOtherUserGuildSession.broadcast(members.map(roleId => { return { roleId, userGuild: null } })); // 更新session
|
||||||
@@ -335,7 +335,7 @@ export class GmRoleHandler {
|
|||||||
if(!guild) return resResult(STATUS.GUILD_NOT_FOUND);
|
if(!guild) return resResult(STATUS.GUILD_NOT_FOUND);
|
||||||
if(guild.status == GUILD_STATUS.DISMISSED) return resResult(STATUS.GUILD_DELETE_ERROR);
|
if(guild.status == GUILD_STATUS.DISMISSED) return resResult(STATUS.GUILD_DELETE_ERROR);
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let userGuild = await UserGuildModel.getMyGuild(roleId);
|
let userGuild = await UserGuildModel.getMyGuild(roleId);
|
||||||
@@ -368,11 +368,11 @@ export class GmRoleHandler {
|
|||||||
async skipEpilogue(msg: { roleId: string, roleName: string }, session: BackendSession) {
|
async skipEpilogue(msg: { roleId: string, roleName: string }, session: BackendSession) {
|
||||||
|
|
||||||
const { roleId, roleName } = msg;
|
const { roleId, roleName } = msg;
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
if(role.hasInit) return resResult(STATUS.ROLE_HAS_INIT);
|
if(role.hasInit) return resResult(STATUS.ROLE_HAS_INIT);
|
||||||
|
|
||||||
let checkName = await Role.checkName(roleName, role.serverId);
|
let checkName = await RoleModel.checkName(roleName, role.serverId);
|
||||||
if (checkName) return resResult(STATUS.NAME_HAS_USED);
|
if (checkName) return resResult(STATUS.NAME_HAS_USED);
|
||||||
|
|
||||||
let warStars: WarStar[] = [];
|
let warStars: WarStar[] = [];
|
||||||
@@ -397,7 +397,7 @@ export class GmRoleHandler {
|
|||||||
|
|
||||||
async reCalCe(msg: { roleId: string }, session: BackendSession) {
|
async reCalCe(msg: { roleId: string }, session: BackendSession) {
|
||||||
const { roleId } = msg;
|
const { roleId } = msg;
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let schools = await SchoolModel.findByRoleId(roleId);
|
let schools = await SchoolModel.findByRoleId(roleId);
|
||||||
let jewels = await JewelModel.findbyRole(roleId);
|
let jewels = await JewelModel.findbyRole(roleId);
|
||||||
let heroes = await HeroModel.findByRole(roleId);
|
let heroes = await HeroModel.findByRole(roleId);
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import { getSimpleRoleInfo } from '../../../services/roleService';
|
|||||||
import { getRoleOnlineInfo } from '../../../services/redisService';
|
import { getRoleOnlineInfo } from '../../../services/redisService';
|
||||||
import { lockData } from '../../../services/redLockService';
|
import { lockData } from '../../../services/redLockService';
|
||||||
import { GuildModel } from '../../../db/Guild';
|
import { GuildModel } from '../../../db/Guild';
|
||||||
import Role, { RoleType } from '../../../db/Role';
|
import { RoleModel, RoleType } from '../../../db/Role';
|
||||||
import { openGuildRefine } from '../../../services/guildRefineService';
|
import { openGuildRefine } from '../../../services/guildRefineService';
|
||||||
import { unlockTrain } from '../../../services/guildTrainService';
|
import { unlockTrain } from '../../../services/guildTrainService';
|
||||||
import { UserGuildModel } from '../../../db/UserGuild';
|
import { UserGuildModel } from '../../../db/UserGuild';
|
||||||
@@ -257,7 +257,7 @@ export class AuctionHandler {
|
|||||||
const serverId: number = session.get('serverId');
|
const serverId: number = session.get('serverId');
|
||||||
if (!guildCode) {//创建公会
|
if (!guildCode) {//创建公会
|
||||||
const roleId = session.get('roleId');
|
const roleId = session.get('roleId');
|
||||||
const role: RoleType = await Role.findByRoleId(roleId);
|
const role: RoleType = await RoleModel.findByRoleId(roleId);
|
||||||
// 创建公会
|
// 创建公会
|
||||||
const name = '测试公会'
|
const name = '测试公会'
|
||||||
const icon = 1
|
const icon = 1
|
||||||
@@ -271,7 +271,7 @@ export class AuctionHandler {
|
|||||||
const userGuild = await UserGuildModel.createUserGuild(guild.code, role, true);
|
const userGuild = await UserGuildModel.createUserGuild(guild.code, role, true);
|
||||||
if (!userGuild) return resResult(STATUS.GUILD_CREATE_ERROR);
|
if (!userGuild) return resResult(STATUS.GUILD_CREATE_ERROR);
|
||||||
|
|
||||||
await Role.joinGuild(roleId, guild.code, guild.name, true);
|
await RoleModel.joinGuild(roleId, guild.code, guild.name, true);
|
||||||
await UserGuildApplyModel.deleteApply(roleId); // 删除玩家所有对其他公会的申请
|
await UserGuildApplyModel.deleteApply(roleId); // 删除玩家所有对其他公会的申请
|
||||||
guildCode = guild.code;
|
guildCode = guild.code;
|
||||||
session.set('guildCode', guildCode);
|
session.set('guildCode', guildCode);
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ import { checkTask } from '../../../services/task/taskService';
|
|||||||
import { guildInter } from '../../../pubUtils/interface';
|
import { guildInter } from '../../../pubUtils/interface';
|
||||||
import { addItems, getGoldObject, handleCost } from '../../../services/role/rewardService';
|
import { addItems, getGoldObject, handleCost } from '../../../services/role/rewardService';
|
||||||
import * as dicParam from '../../../pubUtils/dicParam';
|
import * as dicParam from '../../../pubUtils/dicParam';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { sendMailToGuildByContent } from '../../../services/mailService';
|
import { sendMailToGuildByContent } from '../../../services/mailService';
|
||||||
import { genAuction, getAuctionRewardByPoolId } from '../../../services/auctionService';
|
import { genAuction, getAuctionRewardByPoolId } from '../../../services/auctionService';
|
||||||
import { sendMessageToGuildWithSuc } from '../../../services/pushService';
|
import { sendMessageToGuildWithSuc } from '../../../services/pushService';
|
||||||
@@ -244,7 +244,7 @@ export class GuildHandler {
|
|||||||
let freeCount = dicParam.GUILD_BOSS.GUILD_BOSS_ENCOURAGE_FREECOUNT - myEncourageCnt > 0? dicParam.GUILD_BOSS.GUILD_BOSS_ENCOURAGE_FREECOUNT - myEncourageCnt: 0;
|
let freeCount = dicParam.GUILD_BOSS.GUILD_BOSS_ENCOURAGE_FREECOUNT - myEncourageCnt > 0? dicParam.GUILD_BOSS.GUILD_BOSS_ENCOURAGE_FREECOUNT - myEncourageCnt: 0;
|
||||||
let costGold = (count - freeCount) * dicParam.GUILD_BOSS.GUILD_BOSS_ENCOURAGE_COST;
|
let costGold = (count - freeCount) * dicParam.GUILD_BOSS.GUILD_BOSS_ENCOURAGE_COST;
|
||||||
if(costGold < 0) costGold = 0;
|
if(costGold < 0) costGold = 0;
|
||||||
let { gold } = await Role.findByRoleId(roleId, 'gold');
|
let { gold } = await RoleModel.findByRoleId(roleId, 'gold');
|
||||||
if(gold < costGold) return resResult(STATUS.BATTLE_GOLD_NOT_ENOUGH);
|
if(gold < costGold) return resResult(STATUS.BATTLE_GOLD_NOT_ENOUGH);
|
||||||
|
|
||||||
let { code, bossLv } = bossInstance;
|
let { code, bossLv } = bossInstance;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { STATUS, GUILD_OPERATE, GUILD_AUTH, GUILD_JOB, GUILD_APPLY_TYPE, GUILD_S
|
|||||||
import { UserGuildModel, UserGuildType } from '../../../db/UserGuild';
|
import { UserGuildModel, UserGuildType } from '../../../db/UserGuild';
|
||||||
import { checkAuth, joinGuild, getUserGuildWithRefActive, addActive, settleGuildWeekly, getMyGuildInfo, setUserGuildSession, getInvitationList, addGuildRecord, pushChangeGuildLeader, pushGuildMemberQuit, pushGuildDismiss, pushGuildInfoUpdate, getTodayGuildActive, getGuildQuitCdTime } from '../../../services/guildService';
|
import { checkAuth, joinGuild, getUserGuildWithRefActive, addActive, settleGuildWeekly, getMyGuildInfo, setUserGuildSession, getInvitationList, addGuildRecord, pushChangeGuildLeader, pushGuildMemberQuit, pushGuildDismiss, pushGuildInfoUpdate, getTodayGuildActive, getGuildQuitCdTime } from '../../../services/guildService';
|
||||||
import { GuildModel, GuildType, GuildUpdateParam } from '../../../db/Guild';
|
import { GuildModel, GuildType, GuildUpdateParam } from '../../../db/Guild';
|
||||||
import Role, { RoleType } from '../../../db/Role';
|
import { RoleModel, RoleType } from '../../../db/Role';
|
||||||
import { ARMY } from '../../../pubUtils/dicParam';
|
import { ARMY } from '../../../pubUtils/dicParam';
|
||||||
import { handleCost, addItems, getGoldObject } from '../../../services/role/rewardService';
|
import { handleCost, addItems, getGoldObject } from '../../../services/role/rewardService';
|
||||||
import { nowSeconds, getTimeFun, getSeconds, getZeroPointD, DAY_TO_MS, HOUR_TO_MS } from '../../../pubUtils/timeUtil';
|
import { nowSeconds, getTimeFun, getSeconds, getZeroPointD, DAY_TO_MS, HOUR_TO_MS } from '../../../pubUtils/timeUtil';
|
||||||
@@ -60,7 +60,7 @@ export class GuildHandler {
|
|||||||
if (checkNameResult) return resResult(STATUS.GUILD_NAME_DUP);
|
if (checkNameResult) return resResult(STATUS.GUILD_NAME_DUP);
|
||||||
|
|
||||||
// 检查元宝是否够
|
// 检查元宝是否够
|
||||||
const role = await Role.findByRoleId(roleId);
|
const role = await RoleModel.findByRoleId(roleId);
|
||||||
if (ARMY.ARMY_CREAT_COST > role.gold) {
|
if (ARMY.ARMY_CREAT_COST > role.gold) {
|
||||||
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
||||||
}
|
}
|
||||||
@@ -82,7 +82,7 @@ export class GuildHandler {
|
|||||||
const userGuild = await UserGuildModel.createUserGuild(guild.code, role, true);
|
const userGuild = await UserGuildModel.createUserGuild(guild.code, role, true);
|
||||||
if (!userGuild) return resResult(STATUS.GUILD_CREATE_ERROR);
|
if (!userGuild) return resResult(STATUS.GUILD_CREATE_ERROR);
|
||||||
|
|
||||||
await Role.joinGuild(roleId, guild.code, guild.name, true);
|
await RoleModel.joinGuild(roleId, guild.code, guild.name, true);
|
||||||
await UserGuildApplyModel.deleteApply(roleId); // 删除玩家所有对其他公会的申请
|
await UserGuildApplyModel.deleteApply(roleId); // 删除玩家所有对其他公会的申请
|
||||||
|
|
||||||
// 加入排行
|
// 加入排行
|
||||||
@@ -118,7 +118,7 @@ export class GuildHandler {
|
|||||||
const guildList = await GuildModel.getGuildList(page, showPeopleMax, name, serverId);
|
const guildList = await GuildModel.getGuildList(page, showPeopleMax, name, serverId);
|
||||||
const applyList = await UserGuildApplyModel.findApplyByRole(roleId);
|
const applyList = await UserGuildApplyModel.findApplyByRole(roleId);
|
||||||
|
|
||||||
const { quitGuildTime: quitTime = 0 } = await Role.findByRoleId(roleId);
|
const { quitGuildTime: quitTime = 0 } = await RoleModel.findByRoleId(roleId);
|
||||||
|
|
||||||
const list = new Array<GuildListInfo>();
|
const list = new Array<GuildListInfo>();
|
||||||
for (let guild of guildList) {
|
for (let guild of guildList) {
|
||||||
@@ -162,7 +162,7 @@ export class GuildHandler {
|
|||||||
for(let roleId of guild.members) {
|
for(let roleId of guild.members) {
|
||||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'guildName', value: name }]);
|
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'guildName', value: name }]);
|
||||||
}
|
}
|
||||||
await Role.updateGuildName(code, name);
|
await RoleModel.updateGuildName(code, name);
|
||||||
}
|
}
|
||||||
if (notice != undefined) {
|
if (notice != undefined) {
|
||||||
pushGuildNoticeUpdateMsg(roleId, roleName, guild);
|
pushGuildNoticeUpdateMsg(roleId, roleName, guild);
|
||||||
@@ -234,15 +234,15 @@ export class GuildHandler {
|
|||||||
}
|
}
|
||||||
await this.app.rpc.connector.connectorRemote.setOtherUserGuildSession.broadcast([{ roleId: memberRoleId, userGuild }]);
|
await this.app.rpc.connector.connectorRemote.setOtherUserGuildSession.broadcast([{ roleId: memberRoleId, userGuild }]);
|
||||||
|
|
||||||
const role = await Role.findByRoleId(memberRoleId);
|
const role = await RoleModel.findByRoleId(memberRoleId);
|
||||||
let updateObject = {};
|
let updateObject = {};
|
||||||
if (auth == GUILD_AUTH.LEADER) { // 转让团长
|
if (auth == GUILD_AUTH.LEADER) { // 转让团长
|
||||||
updateObject['leader'] = role._id;
|
updateObject['leader'] = role._id;
|
||||||
let myUserGuild = await UserGuildModel.updateInfo(roleId, { auth: GUILD_AUTH.MEMBER, job: GUILD_JOB.SHIBING }, {}); // 自己降权限
|
let myUserGuild = await UserGuildModel.updateInfo(roleId, { auth: GUILD_AUTH.MEMBER, job: GUILD_JOB.SHIBING }, {}); // 自己降权限
|
||||||
setUserGuildSession(session, myUserGuild);
|
setUserGuildSession(session, myUserGuild);
|
||||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, code, [{ field: 'leader', value: new GuildLeader(role) }]);
|
await updateUserInfo(REDIS_KEY.GUILD_INFO, code, [{ field: 'leader', value: new GuildLeader(role) }]);
|
||||||
await Role.updateRoleInfo(memberRoleId, { isGuildLeader: true });
|
await RoleModel.updateRoleInfo(memberRoleId, { isGuildLeader: true });
|
||||||
await Role.updateRoleInfo(roleId, { isGuildLeader: false });
|
await RoleModel.updateRoleInfo(roleId, { isGuildLeader: false });
|
||||||
await guildAbdicateToLeague(guild, roleId, role);
|
await guildAbdicateToLeague(guild, roleId, role);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -310,7 +310,7 @@ export class GuildHandler {
|
|||||||
return resResult(STATUS.GUILD_MEMBER_MAX);
|
return resResult(STATUS.GUILD_MEMBER_MAX);
|
||||||
}
|
}
|
||||||
|
|
||||||
const role = await Role.findByRoleId(roleId, null, true);
|
const role = await RoleModel.findByRoleId(roleId, null, true);
|
||||||
if (ceLimit > role.ce) {
|
if (ceLimit > role.ce) {
|
||||||
return resResult(STATUS.GUILD_NOT_REACH_CONDI);
|
return resResult(STATUS.GUILD_NOT_REACH_CONDI);
|
||||||
}
|
}
|
||||||
@@ -407,8 +407,8 @@ export class GuildHandler {
|
|||||||
|
|
||||||
const day = <number>getTimeFun().getBeforeDay(3);
|
const day = <number>getTimeFun().getBeforeDay(3);
|
||||||
|
|
||||||
const { quitGuildTime: quitTime = 0 } = await Role.findByRoleId(roleId);
|
const { quitGuildTime: quitTime = 0 } = await RoleModel.findByRoleId(roleId);
|
||||||
let allList = await Role.getInviteList(day, serverId);
|
let allList = await RoleModel.getInviteList(day, serverId);
|
||||||
allList = allList.filter(cur => !invitedMembers.includes(cur.roleId))
|
allList = allList.filter(cur => !invitedMembers.includes(cur.roleId))
|
||||||
let list = getRandEelm(allList, 10);
|
let list = getRandEelm(allList, 10);
|
||||||
if (!list.length) list = allList;
|
if (!list.length) list = allList;
|
||||||
@@ -433,7 +433,7 @@ export class GuildHandler {
|
|||||||
const guild = await GuildModel.findByCode(code, serverId, GUILD_SELECT.INVITED_MEMBER);
|
const guild = await GuildModel.findByCode(code, serverId, GUILD_SELECT.INVITED_MEMBER);
|
||||||
if (guild.isMemberMax) return resResult(STATUS.GUILD_MEMBER_MAX);
|
if (guild.isMemberMax) return resResult(STATUS.GUILD_MEMBER_MAX);
|
||||||
|
|
||||||
const roleList = await Role.findByRoleIds(roleIds);
|
const roleList = await RoleModel.findByRoleIds(roleIds);
|
||||||
let result = new Array<string>();
|
let result = new Array<string>();
|
||||||
|
|
||||||
for (let role of roleList) {
|
for (let role of roleList) {
|
||||||
@@ -572,7 +572,7 @@ export class GuildHandler {
|
|||||||
await sendMailToGuildByContent(MAIL_TYPE.GUILD_DISSMISS, code, {}, guild);
|
await sendMailToGuildByContent(MAIL_TYPE.GUILD_DISSMISS, code, {}, guild);
|
||||||
await UserGuildModel.dismiss(code);
|
await UserGuildModel.dismiss(code);
|
||||||
const { members } = guild;
|
const { members } = guild;
|
||||||
await Role.dissmissGuild(members);
|
await RoleModel.dissmissGuild(members);
|
||||||
await UserGuildApplyModel.deleteApplyByGuild(code);
|
await UserGuildApplyModel.deleteApplyByGuild(code);
|
||||||
await guildDismissToLeague(guild);
|
await guildDismissToLeague(guild);
|
||||||
|
|
||||||
@@ -609,7 +609,7 @@ export class GuildHandler {
|
|||||||
const userGuild = await UserGuildModel.quit(code, roleId);
|
const userGuild = await UserGuildModel.quit(code, roleId);
|
||||||
if (!userGuild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
if (!userGuild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||||
|
|
||||||
const role = await Role.quitGuild(roleId, nowSeconds());
|
const role = await RoleModel.quitGuild(roleId, nowSeconds());
|
||||||
if (!role) return resResult(STATUS.GUILD_QUIT_ERROR);
|
if (!role) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||||
|
|
||||||
const guild = await GuildModel.quit(code, roleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
const guild = await GuildModel.quit(code, roleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
||||||
@@ -646,7 +646,7 @@ export class GuildHandler {
|
|||||||
const userGuild = await UserGuildModel.quit(code, memberRoleId);
|
const userGuild = await UserGuildModel.quit(code, memberRoleId);
|
||||||
if (!userGuild) return resResult(STATUS.GUILD_KICK_ERROR);
|
if (!userGuild) return resResult(STATUS.GUILD_KICK_ERROR);
|
||||||
|
|
||||||
const role = await Role.quitGuild(memberRoleId, nowSeconds());
|
const role = await RoleModel.quitGuild(memberRoleId, nowSeconds());
|
||||||
if (!role) return resResult(STATUS.GUILD_KICK_ERROR);
|
if (!role) return resResult(STATUS.GUILD_KICK_ERROR);
|
||||||
|
|
||||||
const guild = await GuildModel.quit(code, memberRoleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
const guild = await GuildModel.quit(code, memberRoleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
||||||
@@ -688,7 +688,7 @@ export class GuildHandler {
|
|||||||
const { code, roleId: leaderRoleId } = msg;
|
const { code, roleId: leaderRoleId } = msg;
|
||||||
|
|
||||||
// 离线72小时
|
// 离线72小时
|
||||||
const { roleName: oldRoleName, quitTime } = await Role.findByRoleId(leaderRoleId);
|
const { roleName: oldRoleName, quitTime } = await RoleModel.findByRoleId(leaderRoleId);
|
||||||
if (quitTime > <number>getTimeFun().getBeforeDay(3)) {
|
if (quitTime > <number>getTimeFun().getBeforeDay(3)) {
|
||||||
return resResult(STATUS.GUILD_LEADER_LOGIN);
|
return resResult(STATUS.GUILD_LEADER_LOGIN);
|
||||||
}
|
}
|
||||||
@@ -699,7 +699,7 @@ export class GuildHandler {
|
|||||||
}
|
}
|
||||||
let topUserGuild: UserGuildType;
|
let topUserGuild: UserGuildType;
|
||||||
for (let userGuild of topUserGuilds) {
|
for (let userGuild of topUserGuilds) {
|
||||||
let role = await Role.findByRoleId(userGuild.roleId, 'quitTime');
|
let role = await RoleModel.findByRoleId(userGuild.roleId, 'quitTime');
|
||||||
if (role && role.quitTime > <number>getTimeFun().getBeforeDay(3)) {
|
if (role && role.quitTime > <number>getTimeFun().getBeforeDay(3)) {
|
||||||
topUserGuild = userGuild; break;
|
topUserGuild = userGuild; break;
|
||||||
}
|
}
|
||||||
@@ -709,7 +709,7 @@ export class GuildHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 检查元宝是否够
|
// 检查元宝是否够
|
||||||
const role = await Role.findByRoleId(roleId);
|
const role = await RoleModel.findByRoleId(roleId);
|
||||||
if (ARMY.ARMY_IMPEACH_COST > role.gold) {
|
if (ARMY.ARMY_IMPEACH_COST > role.gold) {
|
||||||
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
return resResult(STATUS.DAILY_REFRESH_GOLD_LACK);
|
||||||
}
|
}
|
||||||
@@ -735,8 +735,8 @@ export class GuildHandler {
|
|||||||
await sendMailByContent(MAIL_TYPE.GUILD_BE_SET_LEADER, topUser.roleId, { sendName: roleName, params: [guild.name] });
|
await sendMailByContent(MAIL_TYPE.GUILD_BE_SET_LEADER, topUser.roleId, { sendName: roleName, params: [guild.name] });
|
||||||
|
|
||||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, code, [{ field: 'leader', value: new GuildLeader(topUser) }]);
|
await updateUserInfo(REDIS_KEY.GUILD_INFO, code, [{ field: 'leader', value: new GuildLeader(topUser) }]);
|
||||||
await Role.updateRoleInfo(leaderRoleId, { isGuildLeader: false });
|
await RoleModel.updateRoleInfo(leaderRoleId, { isGuildLeader: false });
|
||||||
let newLeader = await Role.updateRoleInfo(topUser.roleId, { isGuildLeader: true });
|
let newLeader = await RoleModel.updateRoleInfo(topUser.roleId, { isGuildLeader: true });
|
||||||
await guildAbdicateToLeague(guild, leaderRoleId, newLeader);
|
await guildAbdicateToLeague(guild, leaderRoleId, newLeader);
|
||||||
reportTAEvent(roleId, TA_EVENT.GUILD_MASTER_CHANGE, { way: GUILD_MASTER_CHANGE_WAY.IMPEACH, change_id_after: topUser.roleId }, ip)
|
reportTAEvent(roleId, TA_EVENT.GUILD_MASTER_CHANGE, { way: GUILD_MASTER_CHANGE_WAY.IMPEACH, change_id_after: topUser.roleId }, ip)
|
||||||
|
|
||||||
@@ -957,7 +957,7 @@ export class GuildHandler {
|
|||||||
const guild = await GuildModel.findByCode(code, serverId);
|
const guild = await GuildModel.findByCode(code, serverId);
|
||||||
const leader = <RoleType>guild.leader;
|
const leader = <RoleType>guild.leader;
|
||||||
let threeDaysBefore = <number>getTimeFun().getBeforeDay(3);
|
let threeDaysBefore = <number>getTimeFun().getBeforeDay(3);
|
||||||
await Role.updateRoleInfo(leader.roleId, { quitTime: threeDaysBefore });
|
await RoleModel.updateRoleInfo(leader.roleId, { quitTime: threeDaysBefore });
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, { code });
|
return resResult(STATUS.SUCCESS, { code });
|
||||||
}
|
}
|
||||||
@@ -971,7 +971,7 @@ export class GuildHandler {
|
|||||||
}
|
}
|
||||||
const roleId = session.get('roleId');
|
const roleId = session.get('roleId');
|
||||||
const quitGuildTime = type ? Math.floor((new Date().getTime() - HOUR_TO_MS * 2) / 1000) : 0;
|
const quitGuildTime = type ? Math.floor((new Date().getTime() - HOUR_TO_MS * 2) / 1000) : 0;
|
||||||
await Role.updateRoleInfo(roleId, { quitGuildTime: quitGuildTime });
|
await RoleModel.updateRoleInfo(roleId, { quitGuildTime: quitGuildTime });
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS);
|
return resResult(STATUS.SUCCESS);
|
||||||
}
|
}
|
||||||
@@ -992,13 +992,13 @@ export class GuildHandler {
|
|||||||
|
|
||||||
const { isMemberMax, isAuto, ceLimit, lv } = guild;
|
const { isMemberMax, isAuto, ceLimit, lv } = guild;
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if (role.guildCode) {
|
if (role.guildCode) {
|
||||||
let oldCode = role.guildCode;
|
let oldCode = role.guildCode;
|
||||||
const userGuild = await UserGuildModel.quit(oldCode, roleId);
|
const userGuild = await UserGuildModel.quit(oldCode, roleId);
|
||||||
if (!userGuild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
if (!userGuild) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||||
|
|
||||||
role = await Role.quitGuild(roleId, nowSeconds());
|
role = await RoleModel.quitGuild(roleId, nowSeconds());
|
||||||
if (!role) return resResult(STATUS.GUILD_QUIT_ERROR);
|
if (!role) return resResult(STATUS.GUILD_QUIT_ERROR);
|
||||||
|
|
||||||
const guild = await GuildModel.quit(oldCode, roleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
const guild = await GuildModel.quit(oldCode, roleId, serverId, role.ce, userGuild.auth == GUILD_AUTH.MANAGER);
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ import { GVGCityAreaPointModel } from '../../../db/GVGCityAreaPoint';
|
|||||||
import { Rank } from '../../../services/rankService';
|
import { Rank } from '../../../services/rankService';
|
||||||
import { LeagueRankInfo, RoleRankInfo } from '../../../domain/rank';
|
import { LeagueRankInfo, RoleRankInfo } from '../../../domain/rank';
|
||||||
import { addBattleEndRec } from '../../../services/gvg/gvgRecService';
|
import { addBattleEndRec } from '../../../services/gvg/gvgRecService';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { EXTERIOR, GVG } from '../../../pubUtils/dicParam';
|
import { EXTERIOR, GVG } from '../../../pubUtils/dicParam';
|
||||||
import { sendMessageToGuildWithSuc, sendMessageToGVGAreaByTeamWithSuc, sendMessageToUserWithSuc } from '../../../services/pushService';
|
import { sendMessageToGuildWithSuc, sendMessageToGVGAreaByTeamWithSuc, sendMessageToUserWithSuc } from '../../../services/pushService';
|
||||||
import { checkLeagueAuth } from '../../../services/gvg/gvgTeamService';
|
import { checkLeagueAuth } from '../../../services/gvg/gvgTeamService';
|
||||||
@@ -75,7 +75,7 @@ export class GVGBattleHandler {
|
|||||||
let durability = gameData.gvgTeamDurability.get(index)||0;
|
let durability = gameData.gvgTeamDurability.get(index)||0;
|
||||||
|
|
||||||
let groupKey = await getGroupKey(serverId);
|
let groupKey = await getGroupKey(serverId);
|
||||||
let role = await Role.findByRoleId(roleId, 'lv title');
|
let role = await RoleModel.findByRoleId(roleId, 'lv title');
|
||||||
let updateParam: SaveTeamUpdateParam = { index, head, spine, frame, roleName, serverId, leagueCode, leagueName, lv: role.lv, title: role.title }
|
let updateParam: SaveTeamUpdateParam = { index, head, spine, frame, roleName, serverId, leagueCode, leagueName, lv: role.lv, title: role.title }
|
||||||
if(lineup) {
|
if(lineup) {
|
||||||
let { isOK, heroes } = await checkBattleHeroesByHid(roleId, lineup.map(cur => cur.actorId));
|
let { isOK, heroes } = await checkBattleHeroesByHid(roleId, lineup.map(cur => cur.actorId));
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import { GVGVestigeRankModel } from "../../../db/GVGVestigeRank";
|
|||||||
import { GVGVestigeRecModel, GVGVestigeRecUpdate } from "../../../db/GVGVestigeRec";
|
import { GVGVestigeRecModel, GVGVestigeRecUpdate } from "../../../db/GVGVestigeRec";
|
||||||
import { GVGVestigeSumRankModel } from "../../../db/GVGVestigeSumRank";
|
import { GVGVestigeSumRankModel } from "../../../db/GVGVestigeSumRank";
|
||||||
import { HeroModel } from "../../../db/Hero";
|
import { HeroModel } from "../../../db/Hero";
|
||||||
import Role from "../../../db/Role";
|
import { RoleModel } from "../../../db/Role";
|
||||||
import { GVGVestigeOppLineup, VestigeRank } from "../../../domain/gvgField/returnData";
|
import { GVGVestigeOppLineup, VestigeRank } from "../../../domain/gvgField/returnData";
|
||||||
import { RoleRankInfo } from "../../../domain/rank";
|
import { RoleRankInfo } from "../../../domain/rank";
|
||||||
import { getRemoteRplFilePath, getRemoteRplPrefix } from "../../../pubUtils/battleUtils";
|
import { getRemoteRplFilePath, getRemoteRplPrefix } from "../../../pubUtils/battleUtils";
|
||||||
@@ -156,7 +156,7 @@ export class GVGProduceHandler {
|
|||||||
let hisVestigeRank = await GVGVestigeRankModel.findByRole(vestigeId, targetRoleId);
|
let hisVestigeRank = await GVGVestigeRankModel.findByRole(vestigeId, targetRoleId);
|
||||||
if(!hisVestigeRank) return resResult(STATUS.GVG_VESTIGE_TARGET_NOT_FOUND);
|
if(!hisVestigeRank) return resResult(STATUS.GVG_VESTIGE_TARGET_NOT_FOUND);
|
||||||
|
|
||||||
let role = await Role.findByRoleId(hisVestigeRank.roleId, 'roleId roleName serverId guildName title lv heads head spines spine frames frame')
|
let role = await RoleModel.findByRoleId(hisVestigeRank.roleId, 'roleId roleName serverId guildName title lv heads head spines spine frames frame')
|
||||||
if(!hisVestigeRank) return resResult(STATUS.GVG_VESTIGE_TARGET_NOT_FOUND);
|
if(!hisVestigeRank) return resResult(STATUS.GVG_VESTIGE_TARGET_NOT_FOUND);
|
||||||
|
|
||||||
let hids = hisVestigeRank.lineup?.map(cur => cur.actorId)||[];
|
let hids = hisVestigeRank.lineup?.map(cur => cur.actorId)||[];
|
||||||
@@ -477,7 +477,7 @@ export class GVGProduceHandler {
|
|||||||
for(let { roleId: targetRoleId, rank, lineup } of vestigeRanks) {
|
for(let { roleId: targetRoleId, rank, lineup } of vestigeRanks) {
|
||||||
let param = <RoleRankInfo>await r.getParam(rank, targetRoleId, [rank]);
|
let param = <RoleRankInfo>await r.getParam(rank, targetRoleId, [rank]);
|
||||||
if(!param) {
|
if(!param) {
|
||||||
let role = await Role.findByRoleId(targetRoleId, ROLE_SELECT.RANK);
|
let role = await RoleModel.findByRoleId(targetRoleId, ROLE_SELECT.RANK);
|
||||||
await r.generParamAndSet(REDIS_KEY.USER_INFO, { roleId: targetRoleId }, { role });
|
await r.generParamAndSet(REDIS_KEY.USER_INFO, { roleId: targetRoleId }, { role });
|
||||||
param = <RoleRankInfo>await r.getParam(rank, targetRoleId, [rank]);
|
param = <RoleRankInfo>await r.getParam(rank, targetRoleId, [rank]);
|
||||||
}
|
}
|
||||||
@@ -492,7 +492,7 @@ export class GVGProduceHandler {
|
|||||||
}
|
}
|
||||||
if(!myRank) {
|
if(!myRank) {
|
||||||
let obj = new VestigeRank();
|
let obj = new VestigeRank();
|
||||||
let role = await Role.findByRoleId(roleId, ROLE_SELECT.RANK);
|
let role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.RANK);
|
||||||
obj.setByRole(role, serverNames[serverId]);
|
obj.setByRole(role, serverNames[serverId]);
|
||||||
myRank = obj;
|
myRank = obj;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import { Contribute, GVGUserDataModel } from "../../../db/GVGUserData";
|
|||||||
import { GVGUserItemModel } from "../../../db/GVGUserItem";
|
import { GVGUserItemModel } from "../../../db/GVGUserItem";
|
||||||
import { GVGUserTaskModel } from "../../../db/GVGUserTask";
|
import { GVGUserTaskModel } from "../../../db/GVGUserTask";
|
||||||
import { GVG } from "../../../pubUtils/dicParam";
|
import { GVG } from "../../../pubUtils/dicParam";
|
||||||
import Role from "../../../db/Role";
|
import { RoleModel } from "../../../db/Role";
|
||||||
import { addGVGTechActive, calFighterContribute, calProducerContribute, checkPreTech, checkTechIsIng, checkTechProgress, getDailyLoginReward, getMyContribute, pushTechChange, pushTechRollback, sendUngotBoxReward } from "../../../services/gvg/gvgPrepareService";
|
import { addGVGTechActive, calFighterContribute, calProducerContribute, checkPreTech, checkTechIsIng, checkTechProgress, getDailyLoginReward, getMyContribute, pushTechChange, pushTechRollback, sendUngotBoxReward } from "../../../services/gvg/gvgPrepareService";
|
||||||
import { GVGUserDailyDataModel } from "../../../db/GVGUserDailyData";
|
import { GVGUserDailyDataModel } from "../../../db/GVGUserDailyData";
|
||||||
import { gameData } from "../../../pubUtils/data";
|
import { gameData } from "../../../pubUtils/data";
|
||||||
@@ -188,7 +188,7 @@ export class GVGHandler {
|
|||||||
|
|
||||||
const members = myLeague.members||[];
|
const members = myLeague.members||[];
|
||||||
const roleIds = members.map(member => member.roleId);
|
const roleIds = members.map(member => member.roleId);
|
||||||
const roles = await Role.findByRoleIds(roleIds);
|
const roles = await RoleModel.findByRoleIds(roleIds);
|
||||||
const serverNames = await getAllServerName();
|
const serverNames = await getAllServerName();
|
||||||
|
|
||||||
const myUserData = await GVGUserDataModel.findByRole(configId, myLeague.leagueCode, roleId);
|
const myUserData = await GVGUserDataModel.findByRole(configId, myLeague.leagueCode, roleId);
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import { checkCanManage, checkGuildLeader, checkLeagueAuth, createLeague, getLea
|
|||||||
import { LeagueGuildInfo, LeagueListInfo, LeagueMemberListInfo, LeagueSimpleInfo } from "../../../domain/gvgField/returnData";
|
import { LeagueGuildInfo, LeagueListInfo, LeagueMemberListInfo, LeagueSimpleInfo } from "../../../domain/gvgField/returnData";
|
||||||
import { getAllServerName, getServerName, isRoleOnline, updateUserInfo } from "../../../services/redisService";
|
import { getAllServerName, getServerName, isRoleOnline, updateUserInfo } from "../../../services/redisService";
|
||||||
import { GVG } from "../../../pubUtils/dicParam";
|
import { GVG } from "../../../pubUtils/dicParam";
|
||||||
import Role, { RoleType } from "../../../db/Role";
|
import { RoleModel, RoleType } from "../../../db/Role";
|
||||||
import { GVGUserDataModel } from "../../../db/GVGUserData";
|
import { GVGUserDataModel } from "../../../db/GVGUserData";
|
||||||
import { sendMessageToGuildWithSuc, sendMessageToUserWithSuc } from "../../../services/pushService";
|
import { sendMessageToGuildWithSuc, sendMessageToUserWithSuc } from "../../../services/pushService";
|
||||||
import { GVGLeaguePrepareModel } from "../../../db/GVGLeaguePrepare";
|
import { GVGLeaguePrepareModel } from "../../../db/GVGLeaguePrepare";
|
||||||
@@ -376,7 +376,7 @@ export class GVGManageHandler {
|
|||||||
|
|
||||||
const members = league.members||[];
|
const members = league.members||[];
|
||||||
let roleIds = members.map(member => member.roleId);
|
let roleIds = members.map(member => member.roleId);
|
||||||
const roles = await Role.findByRoleIds(roleIds);
|
const roles = await RoleModel.findByRoleIds(roleIds);
|
||||||
const serverNames = await getAllServerName();
|
const serverNames = await getAllServerName();
|
||||||
const userdatas = await GVGUserDataModel.findByRoles(configId, targetLeagueCode, roleIds);
|
const userdatas = await GVGUserDataModel.findByRoles(configId, targetLeagueCode, roleIds);
|
||||||
const result: LeagueMemberListInfo[] = [];
|
const result: LeagueMemberListInfo[] = [];
|
||||||
@@ -534,7 +534,7 @@ export class GVGManageHandler {
|
|||||||
const members = myLeague.members||[];
|
const members = myLeague.members||[];
|
||||||
const candidates = members.filter(cur => cur.auth == LEAGUE_AUTH.SUB_LEADER);
|
const candidates = members.filter(cur => cur.auth == LEAGUE_AUTH.SUB_LEADER);
|
||||||
let roleIds = candidates.map(member => member.roleId);
|
let roleIds = candidates.map(member => member.roleId);
|
||||||
const roles = await Role.findByRoleIds(roleIds);
|
const roles = await RoleModel.findByRoleIds(roleIds);
|
||||||
const serverNames = await getAllServerName();
|
const serverNames = await getAllServerName();
|
||||||
const userdatas = await GVGUserDataModel.findByRoles(configId, targetLeagueCode, roleIds);
|
const userdatas = await GVGUserDataModel.findByRoles(configId, targetLeagueCode, roleIds);
|
||||||
const result = roles.map(role => {
|
const result = roles.map(role => {
|
||||||
@@ -572,7 +572,7 @@ export class GVGManageHandler {
|
|||||||
const checkHisAuth = await checkLeagueAuth(targetRoleId, myLeague, LEAGUE_MANAGE_TYPE.BE_ABDICATED);
|
const checkHisAuth = await checkLeagueAuth(targetRoleId, myLeague, LEAGUE_MANAGE_TYPE.BE_ABDICATED);
|
||||||
if(!checkHisAuth) return resResult(STATUS.GVG_HE_HAS_NO_AUTH);
|
if(!checkHisAuth) return resResult(STATUS.GVG_HE_HAS_NO_AUTH);
|
||||||
|
|
||||||
const targetRole = await Role.findByRoleId(targetRoleId, '_id roleName serverId guildName roleId');
|
const targetRole = await RoleModel.findByRoleId(targetRoleId, '_id roleName serverId guildName roleId');
|
||||||
let targetRoleServerName = await getServerName(targetRole.serverId);
|
let targetRoleServerName = await getServerName(targetRole.serverId);
|
||||||
|
|
||||||
// 修改联军数据 members,leader
|
// 修改联军数据 members,leader
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { GVGLeagueFarmModel, GVGLeagueFarmType } from "../../../db/GVGLeagueFarm
|
|||||||
import { GVGLeagueFarmRecModel } from "../../../db/GVGLeagueFarmRec";
|
import { GVGLeagueFarmRecModel } from "../../../db/GVGLeagueFarmRec";
|
||||||
import { GVGLeaguePrepareModel } from "../../../db/GVGLeaguePrepare";
|
import { GVGLeaguePrepareModel } from "../../../db/GVGLeaguePrepare";
|
||||||
import { GVGUserItemModel } from "../../../db/GVGUserItem";
|
import { GVGUserItemModel } from "../../../db/GVGUserItem";
|
||||||
import Role from "../../../db/Role";
|
import { RoleModel } from "../../../db/Role";
|
||||||
import { LeagueFarmListInfo, LeagueFarmMember, LeagueField } from "../../../domain/gvgField/returnData";
|
import { LeagueFarmListInfo, LeagueFarmMember, LeagueField } from "../../../domain/gvgField/returnData";
|
||||||
import { gameData, getGVGResourceBasesByType } from "../../../pubUtils/data";
|
import { gameData, getGVGResourceBasesByType } from "../../../pubUtils/data";
|
||||||
import { ItemInter, RewardInter } from "../../../pubUtils/interface";
|
import { ItemInter, RewardInter } from "../../../pubUtils/interface";
|
||||||
@@ -118,7 +118,7 @@ export class GVGProduceHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const serverNames = await getAllServerName();
|
const serverNames = await getAllServerName();
|
||||||
const roles = await Role.findByRoleIds(roleIds);
|
const roles = await RoleModel.findByRoleIds(roleIds);
|
||||||
const result: LeagueFarmMember[] = [];
|
const result: LeagueFarmMember[] = [];
|
||||||
for(let role of roles) {
|
for(let role of roles) {
|
||||||
let obj = new LeagueFarmMember(role, serverNames);
|
let obj = new LeagueFarmMember(role, serverNames);
|
||||||
@@ -419,7 +419,7 @@ export class GVGProduceHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const serverNames = await getAllServerName();
|
const serverNames = await getAllServerName();
|
||||||
const roles = await Role.findByRoleIds(roleIds);
|
const roles = await RoleModel.findByRoleIds(roleIds);
|
||||||
const result: LeagueFarmMember[] = [];
|
const result: LeagueFarmMember[] = [];
|
||||||
for(let role of roles) {
|
for(let role of roles) {
|
||||||
let obj = new LeagueFarmMember(role, serverNames);
|
let obj = new LeagueFarmMember(role, serverNames);
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import { ITID, CONSUME_TYPE } from '../../../consts/constModules/itemConst';
|
|||||||
import { GUILD_POINT_WAYS, GUILD_STRUCTURE, WISH_POOL_TYPE } from '../../../consts/constModules/guildConst';
|
import { GUILD_POINT_WAYS, GUILD_STRUCTURE, WISH_POOL_TYPE } from '../../../consts/constModules/guildConst';
|
||||||
import { getWishPool, getUserGuildWithRefActive, addActive, canWishToday } from '../../../services/guildService';
|
import { getWishPool, getUserGuildWithRefActive, addActive, canWishToday } from '../../../services/guildService';
|
||||||
import { findIndex, findWhere } from 'underscore';
|
import { findIndex, findWhere } from 'underscore';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { getRoleOnlineInfo } from '../../../services/redisService';
|
import { getRoleOnlineInfo } from '../../../services/redisService';
|
||||||
import { ARMY } from '../../../pubUtils/dicParam';
|
import { ARMY } from '../../../pubUtils/dicParam';
|
||||||
import { guildInter } from '../../../pubUtils/interface';
|
import { guildInter } from '../../../pubUtils/interface';
|
||||||
@@ -89,7 +89,7 @@ export class WishPoolHandler {
|
|||||||
const sid: string = session.get('sid');
|
const sid: string = session.get('sid');
|
||||||
if (wishRoleId == dntRoleId)
|
if (wishRoleId == dntRoleId)
|
||||||
return resResult(STATUS.WRONG_PARMS);
|
return resResult(STATUS.WRONG_PARMS);
|
||||||
let role = await Role.findByRoleId(wishRoleId);
|
let role = await RoleModel.findByRoleId(wishRoleId);
|
||||||
if (!role)
|
if (!role)
|
||||||
return resResult(STATUS.WRONG_PARMS);//没有玩家
|
return resResult(STATUS.WRONG_PARMS);//没有玩家
|
||||||
let wishUserGuild = await getUserGuildWithRefActive(wishRoleId, ' wishDntCnt wishGoods guildCode');
|
let wishUserGuild = await getUserGuildWithRefActive(wishRoleId, ' wishDntCnt wishGoods guildCode');
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Application, BackendSession, ChannelService, HandlerService, } from "pinus";
|
import { Application, BackendSession, ChannelService, HandlerService, } from "pinus";
|
||||||
import { resResult, getRandEelm, getResStr, shouldRefresh, sortArrRandom, checkRoleIsRobot, getRobotSysType, makeRobotId, parseNumberList } from "../../../pubUtils/util";
|
import { resResult, getRandEelm, getResStr, shouldRefresh, sortArrRandom, checkRoleIsRobot, getRobotSysType, makeRobotId, parseNumberList } from "../../../pubUtils/util";
|
||||||
import { STATUS, ROLE_SELECT, FRIEND_DROP_TYPE, FRIEND_RELATION_TYPE, POPULATE_TYPE, BLOCK_OPEATE, CONSUME_TYPE, ITID, HERO_SELECT, REDIS_KEY, MSG_SOURCE, MSG_TYPE, TASK_TYPE, ROBOT_SYS_TYPE, ITEM_CHANGE_REASON, PUSH_ROUTE } from "../../../consts";
|
import { STATUS, ROLE_SELECT, FRIEND_DROP_TYPE, FRIEND_RELATION_TYPE, POPULATE_TYPE, BLOCK_OPEATE, CONSUME_TYPE, ITID, HERO_SELECT, REDIS_KEY, MSG_SOURCE, MSG_TYPE, TASK_TYPE, ROBOT_SYS_TYPE, ITEM_CHANGE_REASON, PUSH_ROUTE } from "../../../consts";
|
||||||
import Role, { RoleModel, RoleType } from "../../../db/Role";
|
import { RoleModel, RoleType } from "../../../db/Role";
|
||||||
import { getTimeFun, getZeroPointD } from "../../../pubUtils/timeUtil";
|
import { getTimeFun, getZeroPointD } from "../../../pubUtils/timeUtil";
|
||||||
import { FriendApplyModel } from "../../../db/FriendApply";
|
import { FriendApplyModel } from "../../../db/FriendApply";
|
||||||
import { FriendListParam, FriendRecommendParams, BlackListParam, FriendValueListParam, HeroDetailParam } from "../../../domain/roleField/friend";
|
import { FriendListParam, FriendRecommendParams, BlackListParam, FriendValueListParam, HeroDetailParam } from "../../../domain/roleField/friend";
|
||||||
@@ -50,7 +50,7 @@ export class FriendHandler {
|
|||||||
|
|
||||||
const day = <number>getTimeFun().getBeforeHour(FRIEND.FRIEND_RECONMMEND_ACTIVETIME);
|
const day = <number>getTimeFun().getBeforeHour(FRIEND.FRIEND_RECONMMEND_ACTIVETIME);
|
||||||
|
|
||||||
const { lv, serverId: myServerId } = await Role.findByRoleId(roleId, ROLE_SELECT.GET_MY_SERVER);
|
const { lv, serverId: myServerId } = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_MY_SERVER);
|
||||||
let nums = parseNumberList(FRIEND.FRIEND_RECONMMEND_LEVEL);
|
let nums = parseNumberList(FRIEND.FRIEND_RECONMMEND_LEVEL);
|
||||||
// let max = Math.max(...nums);
|
// let max = Math.max(...nums);
|
||||||
let recommendList = await RoleModel.find({ loginTime: { $gt: day }, hasInit: true }).limit(200).lean({ getters: true, virtuals: true })
|
let recommendList = await RoleModel.find({ loginTime: { $gt: day }, hasInit: true }).limit(200).lean({ getters: true, virtuals: true })
|
||||||
@@ -117,7 +117,7 @@ export class FriendHandler {
|
|||||||
let roleId: string = session.get('roleId');
|
let roleId: string = session.get('roleId');
|
||||||
|
|
||||||
let { value } = msg;
|
let { value } = msg;
|
||||||
let allList = await Role.searchByNameOrId(value);
|
let allList = await RoleModel.searchByNameOrId(value);
|
||||||
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
|
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
|
||||||
|
|
||||||
let list = new Array<FriendRecommendParams>();
|
let list = new Array<FriendRecommendParams>();
|
||||||
@@ -141,7 +141,7 @@ export class FriendHandler {
|
|||||||
let roleId: string = session.get('roleId');
|
let roleId: string = session.get('roleId');
|
||||||
let roleIds = msg.roleIds;
|
let roleIds = msg.roleIds;
|
||||||
|
|
||||||
const role = await Role.findByRoleId(roleId, ROLE_SELECT.GET_ROLE_ID);
|
const role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_ROLE_ID);
|
||||||
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
|
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
|
||||||
|
|
||||||
let str = '', resultRoleIds = new Array<string>();
|
let str = '', resultRoleIds = new Array<string>();
|
||||||
@@ -157,7 +157,7 @@ export class FriendHandler {
|
|||||||
let hisRelation = await FriendRelationModel.findFriendByRole(hisRoleId, POPULATE_TYPE.NOT);
|
let hisRelation = await FriendRelationModel.findFriendByRole(hisRoleId, POPULATE_TYPE.NOT);
|
||||||
let hisType = getRecommendType(hisRelation, hisRoleId, roleId);
|
let hisType = getRecommendType(hisRelation, hisRoleId, roleId);
|
||||||
if(hisType == FRIEND_RELATION_TYPE.NORMAL) {
|
if(hisType == FRIEND_RELATION_TYPE.NORMAL) {
|
||||||
let incResult = await Role.increaseFriendApplyCnt(hisRoleId, 1, FRIEND.FRIEND_MANAGE_APPLICATION);
|
let incResult = await RoleModel.increaseFriendApplyCnt(hisRoleId, 1, FRIEND.FRIEND_MANAGE_APPLICATION);
|
||||||
if (!incResult) {
|
if (!incResult) {
|
||||||
str = getResStr(STATUS.FRIEND_HIS_APPLY_MAX); continue;
|
str = getResStr(STATUS.FRIEND_HIS_APPLY_MAX); continue;
|
||||||
}
|
}
|
||||||
@@ -198,7 +198,7 @@ export class FriendHandler {
|
|||||||
|
|
||||||
let { applyCodeList, isPass } = msg;
|
let { applyCodeList, isPass } = msg;
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let roles = new Array<RoleType>();
|
let roles = new Array<RoleType>();
|
||||||
let friendCnt = role.friendCnt;
|
let friendCnt = role.friendCnt;
|
||||||
|
|
||||||
@@ -259,7 +259,7 @@ export class FriendHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let deleteCount = await FriendApplyModel.deleteApply(resultApplyCodeList);
|
let deleteCount = await FriendApplyModel.deleteApply(resultApplyCodeList);
|
||||||
role = await Role.increaseFriendApplyCnt(roleId, -1 * deleteCount, FRIEND.FRIEND_MANAGE_APPLICATION);
|
role = await RoleModel.increaseFriendApplyCnt(roleId, -1 * deleteCount, FRIEND.FRIEND_MANAGE_APPLICATION);
|
||||||
roles.push(role);
|
roles.push(role);
|
||||||
// 任务
|
// 任务
|
||||||
await checkTaskWithRoles(roleId, sid, TASK_TYPE.FRIEND_NUM, roles);
|
await checkTaskWithRoles(roleId, sid, TASK_TYPE.FRIEND_NUM, roles);
|
||||||
@@ -280,7 +280,7 @@ export class FriendHandler {
|
|||||||
public async getFriendList(msg: {}, session: BackendSession) {
|
public async getFriendList(msg: {}, session: BackendSession) {
|
||||||
let roleId: string = session.get('roleId');
|
let roleId: string = session.get('roleId');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let res = await getFriendList(role);
|
let res = await getFriendList(role);
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, res);
|
return resResult(STATUS.SUCCESS, res);
|
||||||
@@ -290,7 +290,7 @@ export class FriendHandler {
|
|||||||
public async getBlackList(msg: {}, session: BackendSession) {
|
public async getBlackList(msg: {}, session: BackendSession) {
|
||||||
let roleId: string = session.get('roleId');
|
let roleId: string = session.get('roleId');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let list = new Array<BlackListParam>();
|
let list = new Array<BlackListParam>();
|
||||||
let myRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.BLACKLIST);
|
let myRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.BLACKLIST);
|
||||||
let blacklist = myRelation ? myRelation.blacklist : [];
|
let blacklist = myRelation ? myRelation.blacklist : [];
|
||||||
@@ -328,7 +328,7 @@ export class FriendHandler {
|
|||||||
const serverId = session.get('serverId');
|
const serverId = session.get('serverId');
|
||||||
let { roleId: hisRoleId, type } = msg;
|
let { roleId: hisRoleId, type } = msg;
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let friend: RoleType;
|
let friend: RoleType;
|
||||||
|
|
||||||
let str = '', list = new Array<BlackListParam>(), frdRoleIds = new Array<string>(), blackRoleIds = new Array<string>();
|
let str = '', list = new Array<BlackListParam>(), frdRoleIds = new Array<string>(), blackRoleIds = new Array<string>();
|
||||||
@@ -342,11 +342,11 @@ export class FriendHandler {
|
|||||||
return resResult(STATUS.FRIEND_BLACK_HAS_ADD);
|
return resResult(STATUS.FRIEND_BLACK_HAS_ADD);
|
||||||
}
|
}
|
||||||
|
|
||||||
role = await Role.increaseBlockCnt(roleId, 1, curFriend ? -1 : 0, FRIEND.FRIEND_BLACKLIST_MAX); // 增加黑名单人数
|
role = await RoleModel.increaseBlockCnt(roleId, 1, curFriend ? -1 : 0, FRIEND.FRIEND_BLACKLIST_MAX); // 增加黑名单人数
|
||||||
if (!role) {
|
if (!role) {
|
||||||
return resResult(STATUS.FRIEND_BLACK_MAX)
|
return resResult(STATUS.FRIEND_BLACK_MAX)
|
||||||
}
|
}
|
||||||
friend = await Role.increaseFriendCnt(hisRoleId, curFriend ? -1 : 0); // 对方好友减少
|
friend = await RoleModel.increaseFriendCnt(hisRoleId, curFriend ? -1 : 0); // 对方好友减少
|
||||||
|
|
||||||
let friendShip: FriendShipType;
|
let friendShip: FriendShipType;
|
||||||
if (!!curFriend) {
|
if (!!curFriend) {
|
||||||
@@ -360,8 +360,8 @@ export class FriendHandler {
|
|||||||
await delPrivateMsg(roleId, hisRoleId);
|
await delPrivateMsg(roleId, hisRoleId);
|
||||||
|
|
||||||
let { myRecApplyCount, hisRecApplyCount } = await FriendApplyModel.deleteApplyByRoles(roleId, hisRoleId); // 删除双方的申请
|
let { myRecApplyCount, hisRecApplyCount } = await FriendApplyModel.deleteApplyByRoles(roleId, hisRoleId); // 删除双方的申请
|
||||||
if(myRecApplyCount > 0) await Role.increaseFriendApplyCnt(roleId, -1 * myRecApplyCount, FRIEND.FRIEND_MANAGE_APPLICATION);
|
if(myRecApplyCount > 0) await RoleModel.increaseFriendApplyCnt(roleId, -1 * myRecApplyCount, FRIEND.FRIEND_MANAGE_APPLICATION);
|
||||||
if(hisRecApplyCount > 0) await Role.increaseFriendApplyCnt(roleId, -1 * hisRecApplyCount, FRIEND.FRIEND_MANAGE_APPLICATION);
|
if(hisRecApplyCount > 0) await RoleModel.increaseFriendApplyCnt(roleId, -1 * hisRecApplyCount, FRIEND.FRIEND_MANAGE_APPLICATION);
|
||||||
|
|
||||||
let param = new BlackListParam(friend);
|
let param = new BlackListParam(friend);
|
||||||
let { isOnline, sid } = await getRoleOnlineInfo(friend.roleId);
|
let { isOnline, sid } = await getRoleOnlineInfo(friend.roleId);
|
||||||
@@ -389,11 +389,11 @@ export class FriendHandler {
|
|||||||
return resResult(STATUS.FRIEND_NOT_FOUND);
|
return resResult(STATUS.FRIEND_NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
role = await Role.increaseFriendCnt(roleId, -1); // 减少好友
|
role = await RoleModel.increaseFriendCnt(roleId, -1); // 减少好友
|
||||||
if (!role) {
|
if (!role) {
|
||||||
return resResult(STATUS.FRIEND_NOT_FOUND)
|
return resResult(STATUS.FRIEND_NOT_FOUND)
|
||||||
}
|
}
|
||||||
friend = await Role.increaseFriendCnt(hisRoleId, -1); // 对方好友减少
|
friend = await RoleModel.increaseFriendCnt(hisRoleId, -1); // 对方好友减少
|
||||||
|
|
||||||
let friendShip: FriendShipType;
|
let friendShip: FriendShipType;
|
||||||
|
|
||||||
@@ -414,7 +414,7 @@ export class FriendHandler {
|
|||||||
return resResult(STATUS.FRIEND_BLACK_NOT_FOUND);
|
return resResult(STATUS.FRIEND_BLACK_NOT_FOUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
role = await Role.increaseBlockCnt(roleId, -1, 0, 100); // 黑名单人数减
|
role = await RoleModel.increaseBlockCnt(roleId, -1, 0, 100); // 黑名单人数减
|
||||||
if (!role) {
|
if (!role) {
|
||||||
return resResult(STATUS.FRIEND_BLACK_MAX)
|
return resResult(STATUS.FRIEND_BLACK_MAX)
|
||||||
}
|
}
|
||||||
@@ -422,14 +422,14 @@ export class FriendHandler {
|
|||||||
|
|
||||||
if (type == BLOCK_OPEATE.REMOVE_AND_APPLY) {
|
if (type == BLOCK_OPEATE.REMOVE_AND_APPLY) {
|
||||||
// 申请好友
|
// 申请好友
|
||||||
friend = await Role.increaseFriendApplyCnt(hisRoleId, 1, FRIEND.FRIEND_MANAGE_APPLICATION);
|
friend = await RoleModel.increaseFriendApplyCnt(hisRoleId, 1, FRIEND.FRIEND_MANAGE_APPLICATION);
|
||||||
if (!friend) {
|
if (!friend) {
|
||||||
str = getResStr(STATUS.FRIEND_HIS_APPLY_MAX);
|
str = getResStr(STATUS.FRIEND_HIS_APPLY_MAX);
|
||||||
} else {
|
} else {
|
||||||
let hisRelation = await FriendRelationModel.findFriendByRole(hisRoleId, POPULATE_TYPE.NOT);
|
let hisRelation = await FriendRelationModel.findFriendByRole(hisRoleId, POPULATE_TYPE.NOT);
|
||||||
let hisType = getRecommendType(hisRelation, hisRoleId, roleId);
|
let hisType = getRecommendType(hisRelation, hisRoleId, roleId);
|
||||||
if(hisType == FRIEND_RELATION_TYPE.NORMAL) {
|
if(hisType == FRIEND_RELATION_TYPE.NORMAL) {
|
||||||
let incResult = await Role.increaseFriendApplyCnt(hisRoleId, 1, FRIEND.FRIEND_MANAGE_APPLICATION);
|
let incResult = await RoleModel.increaseFriendApplyCnt(hisRoleId, 1, FRIEND.FRIEND_MANAGE_APPLICATION);
|
||||||
if (incResult) {
|
if (incResult) {
|
||||||
let apply = await FriendApplyModel.createApply(hisRoleId, role);
|
let apply = await FriendApplyModel.createApply(hisRoleId, role);
|
||||||
let hisOnlineInfo = await getRoleOnlineInfo(hisRoleId);
|
let hisOnlineInfo = await getRoleOnlineInfo(hisRoleId);
|
||||||
@@ -483,7 +483,7 @@ export class FriendHandler {
|
|||||||
}
|
}
|
||||||
let canSendList = await sortByBeSentHeart(roleId, arr);
|
let canSendList = await sortByBeSentHeart(roleId, arr);
|
||||||
|
|
||||||
let { lv } = await Role.findByRoleId(roleId, ROLE_SELECT.GET_LV);
|
let { lv } = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_LV);
|
||||||
let dicFriendLv = getDicFriendByLv(lv);
|
let dicFriendLv = getDicFriendByLv(lv);
|
||||||
if (!dicFriendLv) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
if (!dicFriendLv) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ export class FriendHandler {
|
|||||||
}
|
}
|
||||||
let canReceiveList = await sortByBeSentHeart(roleId, arr);
|
let canReceiveList = await sortByBeSentHeart(roleId, arr);
|
||||||
|
|
||||||
let { lv } = await Role.findByRoleId(roleId, ROLE_SELECT.GET_LV);
|
let { lv } = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_LV);
|
||||||
let dicFriendLv = getDicFriendByLv(lv);
|
let dicFriendLv = getDicFriendByLv(lv);
|
||||||
if (!dicFriendLv) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
if (!dicFriendLv) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
||||||
|
|
||||||
@@ -649,7 +649,7 @@ export class FriendHandler {
|
|||||||
let { roleId: targetRoleId } = msg;
|
let { roleId: targetRoleId } = msg;
|
||||||
let isRobot = checkRoleIsRobot(targetRoleId);
|
let isRobot = checkRoleIsRobot(targetRoleId);
|
||||||
if(isRobot) {
|
if(isRobot) {
|
||||||
let role = await Role.findByRoleId(roleId, null, true);
|
let role = await RoleModel.findByRoleId(roleId, null, true);
|
||||||
let sysType = getRobotSysType(targetRoleId);
|
let sysType = getRobotSysType(targetRoleId);
|
||||||
let addObj: any = { roleId: makeRobotId(''), roleName: '', guildName: '' };
|
let addObj: any = { roleId: makeRobotId(''), roleName: '', guildName: '' };
|
||||||
if(sysType == ROBOT_SYS_TYPE.COM_BTL) {
|
if(sysType == ROBOT_SYS_TYPE.COM_BTL) {
|
||||||
@@ -667,7 +667,7 @@ export class FriendHandler {
|
|||||||
return resResult(STATUS.SUCCESS, {...param, isRobot });
|
return resResult(STATUS.SUCCESS, {...param, isRobot });
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
let role = await Role.findByRoleId(targetRoleId, null, true);
|
let role = await RoleModel.findByRoleId(targetRoleId, null, true);
|
||||||
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
|
let myFriendRelation = await FriendRelationModel.findFriendByRole(roleId, POPULATE_TYPE.NOT);
|
||||||
|
|
||||||
let type = getRecommendType(myFriendRelation, roleId, role.roleId);
|
let type = getRecommendType(myFriendRelation, roleId, role.roleId);
|
||||||
@@ -690,7 +690,7 @@ export class FriendHandler {
|
|||||||
let result: PlayerDetail;
|
let result: PlayerDetail;
|
||||||
|
|
||||||
let dbHeroes = await HeroModel.findAndSortByCe(oppoRoleId);
|
let dbHeroes = await HeroModel.findAndSortByCe(oppoRoleId);
|
||||||
let role = await Role.findByRoleId(oppoRoleId, null, true);
|
let role = await RoleModel.findByRoleId(oppoRoleId, null, true);
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let { topLineupCe, towerLv, showLineup } = role;
|
let { topLineupCe, towerLv, showLineup } = role;
|
||||||
@@ -732,7 +732,7 @@ export class FriendHandler {
|
|||||||
|
|
||||||
let { roleId: hisRoleId, hids } = msg;
|
let { roleId: hisRoleId, hids } = msg;
|
||||||
|
|
||||||
let role = await Role.findByRoleId(hisRoleId, 'title');
|
let role = await RoleModel.findByRoleId(hisRoleId, 'title');
|
||||||
if (!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if (!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let roleCe = await RoleCeModel.findByRoleId(hisRoleId);
|
let roleCe = await RoleCeModel.findByRoleId(hisRoleId);
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { resResult, deepCopy, parseGoodStr } from '../../../pubUtils/util';
|
|||||||
import { STATUS } from '../../../consts/statusCode';
|
import { STATUS } from '../../../consts/statusCode';
|
||||||
import { HeroModel, Connect, HeroSkin, HeroUpdate, EPlace, Talent } from '../../../db/Hero';
|
import { HeroModel, Connect, HeroSkin, HeroUpdate, EPlace, Talent } from '../../../db/Hero';
|
||||||
import { CURRENCY_BY_TYPE, CURRENCY_TYPE, CONSUME_TYPE, HERO_GROW_MAX, HERO_SYSTEM_TYPE, ABI_STAGE, DEBUG_MAGIC_WORD, HERO_INITIAL_QUALITY, REDIS_KEY, TASK_TYPE, ITEM_CHANGE_REASON, CHECK_HERO_CONSUME } from '../../../consts';
|
import { CURRENCY_BY_TYPE, CURRENCY_TYPE, CONSUME_TYPE, HERO_GROW_MAX, HERO_SYSTEM_TYPE, ABI_STAGE, DEBUG_MAGIC_WORD, HERO_INITIAL_QUALITY, REDIS_KEY, TASK_TYPE, ITEM_CHANGE_REASON, CHECK_HERO_CONSUME } from '../../../consts';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { ItemModel } from '../../../db/Item';
|
import { ItemModel } from '../../../db/Item';
|
||||||
import { gameData, getHeroExpByLv, getHeroStarByQuality, getHeroWakeByQuality, getHeroLvByExp, getMaxGradeByjobClass, getJobByGradeAndClass, getConnectLvByExp, getEquipByJobClassAndEPlace, getScollByStar, getExpByLv, getConnectMaxLv, getFriendShipByIdAndLv } from '../../../pubUtils/data';
|
import { gameData, getHeroExpByLv, getHeroStarByQuality, getHeroWakeByQuality, getHeroLvByExp, getMaxGradeByjobClass, getJobByGradeAndClass, getConnectLvByExp, getEquipByJobClassAndEPlace, getScollByStar, getExpByLv, getConnectMaxLv, getFriendShipByIdAndLv } from '../../../pubUtils/data';
|
||||||
import { ItemInter, RewardInter } from '../../../pubUtils/interface';
|
import { ItemInter, RewardInter } from '../../../pubUtils/interface';
|
||||||
@@ -89,7 +89,7 @@ export class HeroHandler {
|
|||||||
// 计算武将可以升的级数
|
// 计算武将可以升的级数
|
||||||
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
let hero = await HeroModel.findByHidAndRole(hid, roleId);
|
||||||
if (!hero) return resResult(STATUS.ROLE_HERO_NOT_EXISTS);
|
if (!hero) return resResult(STATUS.ROLE_HERO_NOT_EXISTS);
|
||||||
let { lv: playerLv } = await Role.findByRoleId(roleId);
|
let { lv: playerLv } = await RoleModel.findByRoleId(roleId);
|
||||||
let { lv: oldLv, exp: oldExp } = hero;
|
let { lv: oldLv, exp: oldExp } = hero;
|
||||||
if (oldLv >= playerLv) return resResult(STATUS.ROLE_HERO_LV_OVER);
|
if (oldLv >= playerLv) return resResult(STATUS.ROLE_HERO_LV_OVER);
|
||||||
if (oldLv + addLv > playerLv) addLv = playerLv - oldLv;
|
if (oldLv + addLv > playerLv) addLv = playerLv - oldLv;
|
||||||
@@ -812,7 +812,7 @@ export class HeroHandler {
|
|||||||
await SkinModel.deleteMany({ roleId });
|
await SkinModel.deleteMany({ roleId });
|
||||||
await SchoolModel.deleteAccount(roleId);
|
await SchoolModel.deleteAccount(roleId);
|
||||||
await RoleCeModel.deleteMany({ roleId });
|
await RoleCeModel.deleteMany({ roleId });
|
||||||
await Role.updateRoleInfo(roleId, { jewelCount: 0 });
|
await RoleModel.updateRoleInfo(roleId, { jewelCount: 0 });
|
||||||
let heroInfos = [];
|
let heroInfos = [];
|
||||||
|
|
||||||
for(let [actorId] of gameData.recruit) {
|
for(let [actorId] of gameData.recruit) {
|
||||||
@@ -850,9 +850,9 @@ export class HeroHandler {
|
|||||||
if (!hero) return resResult(STATUS.HERO_NOT_FIND);
|
if (!hero) return resResult(STATUS.HERO_NOT_FIND);
|
||||||
|
|
||||||
await HeroModel.deleteHero(roleId, hid);
|
await HeroModel.deleteHero(roleId, hid);
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
await PvpDefenseModel.deleteHero(roleId, hid);
|
await PvpDefenseModel.deleteHero(roleId, hid);
|
||||||
await Role.updateRoleInfo(roleId, { topLineup: role.topLineup, topLineupCe: role.topLineupCe, ce: role.ce - hero.ce });
|
await RoleModel.updateRoleInfo(roleId, { topLineup: role.topLineup, topLineupCe: role.topLineupCe, ce: role.ce - hero.ce });
|
||||||
return resResult(STATUS.SUCCESS);
|
return resResult(STATUS.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -865,14 +865,14 @@ export class HeroHandler {
|
|||||||
|
|
||||||
//let result = await handleCost(roleId, sid, [{id, count}] );
|
//let result = await handleCost(roleId, sid, [{id, count}] );
|
||||||
let items = [{ id, count }];
|
let items = [{ id, count }];
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if (id == 999999) {
|
if (id == 999999) {
|
||||||
items = getDropItems();
|
items = getDropItems();
|
||||||
if (role.lv < 60) {
|
if (role.lv < 60) {
|
||||||
role.lv = 60;
|
role.lv = 60;
|
||||||
let roleLvInfo = gameData.kingexp.get(role.lv - 1);
|
let roleLvInfo = gameData.kingexp.get(role.lv - 1);
|
||||||
role.exp = roleLvInfo.sum;
|
role.exp = roleLvInfo.sum;
|
||||||
await Role.updateRoleInfo(roleId, role);
|
await RoleModel.updateRoleInfo(roleId, role);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
let result = await addItems(roleId, roleName, sid, items, ITEM_CHANGE_REASON.DEBUG);
|
let result = await addItems(roleId, roleName, sid, items, ITEM_CHANGE_REASON.DEBUG);
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { RewardInter } from "../../../pubUtils/interface";
|
|||||||
|
|
||||||
import { resResult } from "../../../pubUtils/util";
|
import { resResult } from "../../../pubUtils/util";
|
||||||
import { addItems, handleCost } from "../../../services/role/rewardService";
|
import { addItems, handleCost } from "../../../services/role/rewardService";
|
||||||
import Role from "../../../db/Role";
|
import { RoleModel } from "../../../db/Role";
|
||||||
import { gameData } from "../../../pubUtils/data";
|
import { gameData } from "../../../pubUtils/data";
|
||||||
import { ITID } from "../../../consts/constModules/itemConst";
|
import { ITID } from "../../../consts/constModules/itemConst";
|
||||||
import { useGiftPackage } from "../../../services/activity/giftPackageService";
|
import { useGiftPackage } from "../../../services/activity/giftPackageService";
|
||||||
@@ -100,7 +100,7 @@ export class ItemHandler {
|
|||||||
return resResult(STATUS.ROLE_METERIAL_ERROR);
|
return resResult(STATUS.ROLE_METERIAL_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
let { ap, isOver } = await getAp(roleId, ip, role.lv);
|
let { ap, isOver } = await getAp(roleId, ip, role.lv);
|
||||||
if (isOver) return resResult(STATUS.AP_IS_FULL);
|
if (isOver) return resResult(STATUS.AP_IS_FULL);
|
||||||
|
|
||||||
@@ -138,7 +138,7 @@ export class ItemHandler {
|
|||||||
return resResult(STATUS.ROLE_METERIAL_ERROR);
|
return resResult(STATUS.ROLE_METERIAL_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
let { buyTimes = 0 } = await getAp(roleId, ip, role.lv);
|
let { buyTimes = 0 } = await getAp(roleId, ip, role.lv);
|
||||||
if (buyTimes + count > gameData.apMaxBuyTimes.max) return resResult(STATUS.AP_BUY_TIMES_LACK);
|
if (buyTimes + count > gameData.apMaxBuyTimes.max) return resResult(STATUS.AP_BUY_TIMES_LACK);
|
||||||
|
|
||||||
@@ -208,7 +208,7 @@ export class ItemHandler {
|
|||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let ip = session.get('ip');
|
let ip = session.get('ip');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
let apJson = await getAp(roleId, ip, role.lv);
|
let apJson = await getAp(roleId, ip, role.lv);
|
||||||
return resResult(STATUS.SUCCESS, { apJson });
|
return resResult(STATUS.SUCCESS, { apJson });
|
||||||
}
|
}
|
||||||
@@ -222,7 +222,7 @@ export class ItemHandler {
|
|||||||
let lvRecord = lvRecords.find(cur => cur.lv == lv);
|
let lvRecord = lvRecords.find(cur => cur.lv == lv);
|
||||||
let ap = 0, apBefore = 0;
|
let ap = 0, apBefore = 0;
|
||||||
if(!lvRecord) {
|
if(!lvRecord) {
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
let apJson = await getAp(roleId, ip, role.lv);
|
let apJson = await getAp(roleId, ip, role.lv);
|
||||||
ap = apJson.ap;
|
ap = apJson.ap;
|
||||||
apBefore = apJson.ap;
|
apBefore = apJson.ap;
|
||||||
@@ -244,7 +244,7 @@ export class ItemHandler {
|
|||||||
const ip = session.get('ip');
|
const ip = session.get('ip');
|
||||||
const serverId = session.get('serverId');
|
const serverId = session.get('serverId');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
let apJson = await setAp(serverId, roleId, ip, role.lv, msg.ap, sid, ITEM_CHANGE_REASON.DEBUG);
|
let apJson = await setAp(serverId, roleId, ip, role.lv, msg.ap, sid, ITEM_CHANGE_REASON.DEBUG);
|
||||||
if (!apJson) return resResult(STATUS.BATTLE_ACTION_POINT_LACK)
|
if (!apJson) return resResult(STATUS.BATTLE_ACTION_POINT_LACK)
|
||||||
return resResult(STATUS.SUCCESS, { apJson });
|
return resResult(STATUS.SUCCESS, { apJson });
|
||||||
@@ -257,7 +257,7 @@ export class ItemHandler {
|
|||||||
}
|
}
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let ip = session.get('ip');
|
let ip = session.get('ip');
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
await ActionPointModel.resetBuyTimes(roleId);
|
await ActionPointModel.resetBuyTimes(roleId);
|
||||||
let apJson = await getAp(roleId, ip, role.lv);
|
let apJson = await getAp(roleId, ip, role.lv);
|
||||||
return resResult(STATUS.SUCCESS, { apJson });
|
return resResult(STATUS.SUCCESS, { apJson });
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import { checkMailGoods, getMails } from '../../../services/mailService';
|
|||||||
import { ServerMailModel, ServerMailType } from '../../../db/ServerMail';
|
import { ServerMailModel, ServerMailType } from '../../../db/ServerMail';
|
||||||
import { MailParam } from '../../../domain/roleField/mail';
|
import { MailParam } from '../../../domain/roleField/mail';
|
||||||
import { ItemInter, RewardInter } from '../../../pubUtils/interface';
|
import { ItemInter, RewardInter } from '../../../pubUtils/interface';
|
||||||
import Role from '../../../db/Role';
|
import { RoleModel } from '../../../db/Role';
|
||||||
import { gameData } from '../../../pubUtils/data';
|
import { gameData } from '../../../pubUtils/data';
|
||||||
import { ITEM_CHANGE_REASON, ITID, RECEIVE_MAIL_TYPE } from '../../../consts';
|
import { ITEM_CHANGE_REASON, ITID, RECEIVE_MAIL_TYPE } from '../../../consts';
|
||||||
import { BAG } from '../../../pubUtils/dicParam';
|
import { BAG } from '../../../pubUtils/dicParam';
|
||||||
@@ -110,7 +110,7 @@ export class MailHandler {
|
|||||||
let sid: string = session.get('sid');
|
let sid: string = session.get('sid');
|
||||||
let serverId: number = session.get('serverId');
|
let serverId: number = session.get('serverId');
|
||||||
let { id, type, mailType } = msg;
|
let { id, type, mailType } = msg;
|
||||||
let { jewelCount } = await Role.findByRoleId(roleId, 'jewelCount');
|
let { jewelCount } = await RoleModel.findByRoleId(roleId, 'jewelCount');
|
||||||
|
|
||||||
let originMails: {mailType: GM_MAIL_TYPE, mail: MailType|GroupMailType|ServerMailType}[] = []
|
let originMails: {mailType: GM_MAIL_TYPE, mail: MailType|GroupMailType|ServerMailType}[] = []
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Application, BackendSession, HandlerService, pinus, } from "pinus";
|
import { Application, BackendSession, HandlerService, pinus, } from "pinus";
|
||||||
import { resResult } from "../../../pubUtils/util";
|
import { resResult } from "../../../pubUtils/util";
|
||||||
import { STATUS, getRedisKeyByRankType, ROLE_SELECT, RANK_TYPE, HERO_SELECT, GUILD_SELECT, RANK_FIRST_REWARD_STATUS, ITEM_CHANGE_REASON, REDIS_KEY } from "../../../consts";
|
import { STATUS, getRedisKeyByRankType, ROLE_SELECT, RANK_TYPE, HERO_SELECT, GUILD_SELECT, RANK_FIRST_REWARD_STATUS, ITEM_CHANGE_REASON, REDIS_KEY } from "../../../consts";
|
||||||
import Role from "../../../db/Role";
|
import Role,{RoleModel} from "../../../db/Role";
|
||||||
import { UserGuildModel } from "../../../db/UserGuild";
|
import { UserGuildModel } from "../../../db/UserGuild";
|
||||||
import { GuildModel } from "../../../db/Guild";
|
import { GuildModel } from "../../../db/Guild";
|
||||||
import { Rank, getGeneralRank, getRankFirstReward, getRankInHandler } from "../../../services/rankService";
|
import { Rank, getGeneralRank, getRankFirstReward, getRankInHandler } from "../../../services/rankService";
|
||||||
@@ -26,7 +26,7 @@ export class RoleHandler {
|
|||||||
let roleName = session.get('roleName');
|
let roleName = session.get('roleName');
|
||||||
let serverId = session.get('serverId');
|
let serverId = session.get('serverId');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'rankReceived');
|
let role = await RoleModel.findByRoleId(roleId, 'rankReceived');
|
||||||
if (!role) return resResult(STATUS.WRONG_PARMS);
|
if (!role) return resResult(STATUS.WRONG_PARMS);
|
||||||
|
|
||||||
let ranks = await getGeneralRank(role, serverId);
|
let ranks = await getGeneralRank(role, serverId);
|
||||||
@@ -40,7 +40,7 @@ export class RoleHandler {
|
|||||||
let roleName = session.get('roleName');
|
let roleName = session.get('roleName');
|
||||||
let serverId = session.get('serverId');
|
let serverId = session.get('serverId');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'rankReceived');
|
let role = await RoleModel.findByRoleId(roleId, 'rankReceived');
|
||||||
if (!role) return resResult(STATUS.WRONG_PARMS);
|
if (!role) return resResult(STATUS.WRONG_PARMS);
|
||||||
|
|
||||||
let ranks = await getRankFirstReward(role, serverId);
|
let ranks = await getRankFirstReward(role, serverId);
|
||||||
@@ -189,7 +189,7 @@ export class RoleHandler {
|
|||||||
}
|
}
|
||||||
let rewards: RewardInter[] = [];
|
let rewards: RewardInter[] = [];
|
||||||
let canReceiveId: number[] = [];
|
let canReceiveId: number[] = [];
|
||||||
let role = await Role.findByRoleId(roleId, 'rankReceived');
|
let role = await RoleModel.findByRoleId(roleId, 'rankReceived');
|
||||||
|
|
||||||
for (let id of ids) {
|
for (let id of ids) {
|
||||||
let dicReward = gameData.generalRankReward.get(id);
|
let dicReward = gameData.generalRankReward.get(id);
|
||||||
@@ -205,7 +205,7 @@ export class RoleHandler {
|
|||||||
canReceiveId.push(id);
|
canReceiveId.push(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
role = await Role.receiveRankReward(roleId, canReceiveId);
|
role = await RoleModel.receiveRankReward(roleId, canReceiveId);
|
||||||
if (canReceiveId.length <= 0) return resResult(STATUS.REWARD_CONDITION_NOT_REACH);
|
if (canReceiveId.length <= 0) return resResult(STATUS.REWARD_CONDITION_NOT_REACH);
|
||||||
|
|
||||||
let rewardStatus = canReceiveId.map(id => {
|
let rewardStatus = canReceiveId.map(id => {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { STATUS } from '../../../consts/statusCode';
|
import { STATUS } from '../../../consts/statusCode';
|
||||||
import Role, { RoleUpdate } from './../../../db/Role';
|
import { RoleModel, RoleUpdate } from './../../../db/Role';
|
||||||
import { HeroModel, HeroType, HeroUpdate } from '../../../db/Hero';
|
import { HeroModel, HeroType, HeroUpdate } from '../../../db/Hero';
|
||||||
import { resResult, decodeIdCntArrayStr, parseGoodStr, genCode } from '../../../pubUtils/util';
|
import { resResult, decodeIdCntArrayStr, parseGoodStr, genCode } from '../../../pubUtils/util';
|
||||||
import { Application, BackendSession, pinus, HandlerService, } from 'pinus';
|
import { Application, BackendSession, pinus, HandlerService, } from 'pinus';
|
||||||
@@ -48,14 +48,14 @@ export class RoleHandler {
|
|||||||
|
|
||||||
|
|
||||||
let { roleName } = msg;
|
let { roleName } = msg;
|
||||||
let role = await Role.findByRoleId(roleId, 'roleName hasInit title teraphs lv', true);
|
let role = await RoleModel.findByRoleId(roleId, 'roleName hasInit title teraphs lv', true);
|
||||||
if (role.hasInit) return resResult(STATUS.ROLE_HAS_INIT);
|
if (role.hasInit) return resResult(STATUS.ROLE_HAS_INIT);
|
||||||
|
|
||||||
let checkName = await Role.checkName(roleName, serverId);
|
let checkName = await RoleModel.checkName(roleName, serverId);
|
||||||
if (checkName) return resResult(STATUS.NAME_HAS_USED);
|
if (checkName) return resResult(STATUS.NAME_HAS_USED);
|
||||||
|
|
||||||
let { resultHeroes: heroes } = await createHeroes(roleId, roleName, sid, serverId, DEFAULT_HEROES.map(hid => ({hid, count: 1})), { roleName, hasInit: true, title: role.title, teraphs: role.teraphs, lv: role.lv });
|
let { resultHeroes: heroes } = await createHeroes(roleId, roleName, sid, serverId, DEFAULT_HEROES.map(hid => ({hid, count: 1})), { roleName, hasInit: true, title: role.title, teraphs: role.teraphs, lv: role.lv });
|
||||||
// role = await Role.updateRoleInfo(roleId, { roleName, hasInit: true }); // 在算战力的时候一起更新
|
// role = await RoleModel.updateRoleInfo(roleId, { roleName, hasInit: true }); // 在算战力的时候一起更新
|
||||||
session.set('roleName', roleName);
|
session.set('roleName', roleName);
|
||||||
session.push('roleName', () => { });
|
session.push('roleName', () => { });
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ export class RoleHandler {
|
|||||||
|
|
||||||
async getRoleInfo(msg: { targetRoleId: string }, session: BackendSession) {
|
async getRoleInfo(msg: { targetRoleId: string }, session: BackendSession) {
|
||||||
let { targetRoleId } = msg;
|
let { targetRoleId } = msg;
|
||||||
let { roleId, roleName, head = EXTERIOR.EXTERIOR_FACE, frame = EXTERIOR.EXTERIOR_FACECASE, spine = EXTERIOR.EXTERIOR_APPEARANCE, ce = 0, topLineup, topLineupCe = 0 } = await Role.findByRoleId(targetRoleId);
|
let { roleId, roleName, head = EXTERIOR.EXTERIOR_FACE, frame = EXTERIOR.EXTERIOR_FACECASE, spine = EXTERIOR.EXTERIOR_APPEARANCE, ce = 0, topLineup, topLineupCe = 0 } = await RoleModel.findByRoleId(targetRoleId);
|
||||||
return resResult(STATUS.SUCCESS, { roleId, roleName, head, frame, spine, ce, topLineup, topLineupCe });
|
return resResult(STATUS.SUCCESS, { roleId, roleName, head, frame, spine, ce, topLineup, topLineupCe });
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -85,7 +85,7 @@ export class RoleHandler {
|
|||||||
const serverId = session.get('serverId');
|
const serverId = session.get('serverId');
|
||||||
|
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
|
|
||||||
let { title } = role;
|
let { title } = role;
|
||||||
let titleInfo = getTitle(title + 1);
|
let titleInfo = getTitle(title + 1);
|
||||||
@@ -115,7 +115,7 @@ export class RoleHandler {
|
|||||||
let serverId: number = session.get('serverId');
|
let serverId: number = session.get('serverId');
|
||||||
|
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'roleId teraphs gold coin');
|
let role = await RoleModel.findByRoleId(roleId, 'roleId teraphs gold coin');
|
||||||
let teraphs = role.teraphs;
|
let teraphs = role.teraphs;
|
||||||
let index = findIndex(teraphs, { id });
|
let index = findIndex(teraphs, { id });
|
||||||
if (index < 0)
|
if (index < 0)
|
||||||
@@ -149,7 +149,7 @@ export class RoleHandler {
|
|||||||
const serverId = session.get('serverId');
|
const serverId = session.get('serverId');
|
||||||
|
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let teraphs = role.teraphs;
|
let teraphs = role.teraphs;
|
||||||
let index = findIndex(teraphs, { id });
|
let index = findIndex(teraphs, { id });
|
||||||
if (index < 0)
|
if (index < 0)
|
||||||
@@ -353,7 +353,7 @@ export class RoleHandler {
|
|||||||
return resResult(STATUS.LINEUP_MAX);
|
return resResult(STATUS.LINEUP_MAX);
|
||||||
}
|
}
|
||||||
|
|
||||||
let role = await Role.updateRoleInfo(roleId, { showLineup });
|
let role = await RoleModel.updateRoleInfo(roleId, { showLineup });
|
||||||
let r = new Rank(REDIS_KEY.SHOW_LINEUP, {});
|
let r = new Rank(REDIS_KEY.SHOW_LINEUP, {});
|
||||||
await r.generParamAndSet(REDIS_KEY.SHOW_LINEUP, { roleId }, { role });
|
await r.generParamAndSet(REDIS_KEY.SHOW_LINEUP, { roleId }, { role });
|
||||||
|
|
||||||
@@ -368,7 +368,7 @@ export class RoleHandler {
|
|||||||
|
|
||||||
if(isGoodsHidden(id)) return resResult(STATUS.ITEM_IS_HIDDEN);
|
if(isGoodsHidden(id)) return resResult(STATUS.ITEM_IS_HIDDEN);
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
let role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
||||||
if (!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if (!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let { heads } = role;
|
let { heads } = role;
|
||||||
@@ -383,7 +383,7 @@ export class RoleHandler {
|
|||||||
}
|
}
|
||||||
curHead.enable = true;
|
curHead.enable = true;
|
||||||
|
|
||||||
role = await Role.updateRoleInfo(roleId, { heads });
|
role = await RoleModel.updateRoleInfo(roleId, { heads });
|
||||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'head', value: id }]);
|
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'head', value: id }]);
|
||||||
if(role.isGuildLeader) {
|
if(role.isGuildLeader) {
|
||||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, guildCode, [{ field: 'leader', value: new GuildLeader(role) }]);
|
await updateUserInfo(REDIS_KEY.GUILD_INFO, guildCode, [{ field: 'leader', value: new GuildLeader(role) }]);
|
||||||
@@ -400,7 +400,7 @@ export class RoleHandler {
|
|||||||
|
|
||||||
if(isGoodsHidden(id)) return resResult(STATUS.ITEM_IS_HIDDEN);
|
if(isGoodsHidden(id)) return resResult(STATUS.ITEM_IS_HIDDEN);
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
let role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
||||||
if (!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if (!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let { frames } = role;
|
let { frames } = role;
|
||||||
@@ -415,7 +415,7 @@ export class RoleHandler {
|
|||||||
}
|
}
|
||||||
curFrame.enable = true;
|
curFrame.enable = true;
|
||||||
|
|
||||||
role = await Role.updateRoleInfo(roleId, { frames });
|
role = await RoleModel.updateRoleInfo(roleId, { frames });
|
||||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'frame', value: id }]);
|
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'frame', value: id }]);
|
||||||
if(role.isGuildLeader) {
|
if(role.isGuildLeader) {
|
||||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, guildCode, [{ field: 'leader', value: new GuildLeader(role) }]);
|
await updateUserInfo(REDIS_KEY.GUILD_INFO, guildCode, [{ field: 'leader', value: new GuildLeader(role) }]);
|
||||||
@@ -432,7 +432,7 @@ export class RoleHandler {
|
|||||||
|
|
||||||
if(isGoodsHidden(id)) return resResult(STATUS.ITEM_IS_HIDDEN);
|
if(isGoodsHidden(id)) return resResult(STATUS.ITEM_IS_HIDDEN);
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
let role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
||||||
if (!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if (!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let { spines } = role;
|
let { spines } = role;
|
||||||
@@ -447,7 +447,7 @@ export class RoleHandler {
|
|||||||
}
|
}
|
||||||
curSpine.enable = true;
|
curSpine.enable = true;
|
||||||
|
|
||||||
role = await Role.updateRoleInfo(roleId, { spines });
|
role = await RoleModel.updateRoleInfo(roleId, { spines });
|
||||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'spine', value: id }]);
|
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'spine', value: id }]);
|
||||||
if(role.isGuildLeader) {
|
if(role.isGuildLeader) {
|
||||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, guildCode, [{ field: 'leader', value: new GuildLeader(role) }]);
|
await updateUserInfo(REDIS_KEY.GUILD_INFO, guildCode, [{ field: 'leader', value: new GuildLeader(role) }]);
|
||||||
@@ -465,17 +465,17 @@ export class RoleHandler {
|
|||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
if(!roleName) return resResult(STATUS.WRONG_PARMS);
|
if(!roleName) return resResult(STATUS.WRONG_PARMS);
|
||||||
|
|
||||||
let checkName = await Role.checkName(roleName, serverId);
|
let checkName = await RoleModel.checkName(roleName, serverId);
|
||||||
if (checkName) return resResult(STATUS.NAME_HAS_USED);
|
if (checkName) return resResult(STATUS.NAME_HAS_USED);
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId, 'renameCnt');
|
let role = await RoleModel.findByRoleId(roleId, 'renameCnt');
|
||||||
let costGold = role.renameCnt >= dicParam.NAMEPLATE.NAMEPLATE_FREECOST? dicParam.NAMEPLATE.NAMEPLATE_FEECOST: 0;
|
let costGold = role.renameCnt >= dicParam.NAMEPLATE.NAMEPLATE_FREECOST? dicParam.NAMEPLATE.NAMEPLATE_FEECOST: 0;
|
||||||
if(costGold > 0) {
|
if(costGold > 0) {
|
||||||
let result = await handleCost(roleId, sid, [getGoldObject(costGold)], ITEM_CHANGE_REASON.RENAME);
|
let result = await handleCost(roleId, sid, [getGoldObject(costGold)], ITEM_CHANGE_REASON.RENAME);
|
||||||
if(!result) return resResult(STATUS.BATTLE_GOLD_NOT_ENOUGH);
|
if(!result) return resResult(STATUS.BATTLE_GOLD_NOT_ENOUGH);
|
||||||
}
|
}
|
||||||
|
|
||||||
role = await Role.incRoleInfo(roleId, { renameCnt: 1 }, { roleName });
|
role = await RoleModel.incRoleInfo(roleId, { renameCnt: 1 }, { roleName });
|
||||||
session.set('roleName', role.roleName);
|
session.set('roleName', role.roleName);
|
||||||
session.push('roleName', () => { });
|
session.push('roleName', () => { });
|
||||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'roleName', value: roleName }]);
|
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'roleName', value: roleName }]);
|
||||||
@@ -498,7 +498,7 @@ export class RoleHandler {
|
|||||||
if(ids == undefined || ids.length <= 0) {
|
if(ids == undefined || ids.length <= 0) {
|
||||||
return resResult(STATUS.WRONG_PARMS);
|
return resResult(STATUS.WRONG_PARMS);
|
||||||
}
|
}
|
||||||
let role = await Role.saveGuide(roleId, ids);
|
let role = await RoleModel.saveGuide(roleId, ids);
|
||||||
return resResult(STATUS.SUCCESS, {
|
return resResult(STATUS.SUCCESS, {
|
||||||
guide: role.guide
|
guide: role.guide
|
||||||
});
|
});
|
||||||
@@ -508,7 +508,7 @@ export class RoleHandler {
|
|||||||
const roleId = session.get('roleId');
|
const roleId = session.get('roleId');
|
||||||
const { isClosePush } = msg;
|
const { isClosePush } = msg;
|
||||||
|
|
||||||
let role = await Role.setPushMsgOpen(roleId, isClosePush);
|
let role = await RoleModel.setPushMsgOpen(roleId, isClosePush);
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
return resResult(STATUS.SUCCESS, {
|
return resResult(STATUS.SUCCESS, {
|
||||||
isClosePush: role.isClosePush
|
isClosePush: role.isClosePush
|
||||||
@@ -519,7 +519,7 @@ export class RoleHandler {
|
|||||||
const roleId = session.get('roleId');
|
const roleId = session.get('roleId');
|
||||||
const { hasComment } = msg;
|
const { hasComment } = msg;
|
||||||
|
|
||||||
let role = await Role.setHasComment(roleId, hasComment);
|
let role = await RoleModel.setHasComment(roleId, hasComment);
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
return resResult(STATUS.SUCCESS, {
|
return resResult(STATUS.SUCCESS, {
|
||||||
hasComment: role.hasComment
|
hasComment: role.hasComment
|
||||||
@@ -581,7 +581,7 @@ export class RoleHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role) return resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
if(role.hasInit) {
|
if(role.hasInit) {
|
||||||
await deletRole(roleId);
|
await deletRole(roleId);
|
||||||
@@ -598,7 +598,7 @@ export class RoleHandler {
|
|||||||
|
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let roleLvInfo = gameData.kingexp.get(lv - 1);
|
let roleLvInfo = gameData.kingexp.get(lv - 1);
|
||||||
let role = await Role.updateRoleInfo(roleId, { lv, exp: roleLvInfo.sum });
|
let role = await RoleModel.updateRoleInfo(roleId, { lv, exp: roleLvInfo.sum });
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, { lv: role.lv });
|
return resResult(STATUS.SUCCESS, { lv: role.lv });
|
||||||
}
|
}
|
||||||
@@ -610,7 +610,7 @@ export class RoleHandler {
|
|||||||
if (magicWord !== DEBUG_MAGIC_WORD) {
|
if (magicWord !== DEBUG_MAGIC_WORD) {
|
||||||
return resResult(STATUS.TOKEN_ERR);
|
return resResult(STATUS.TOKEN_ERR);
|
||||||
}
|
}
|
||||||
let role = await Role.updateRoleInfo(roleId, params);
|
let role = await RoleModel.updateRoleInfo(roleId, params);
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, { role });
|
return resResult(STATUS.SUCCESS, { role });
|
||||||
|
|
||||||
@@ -624,7 +624,7 @@ export class RoleHandler {
|
|||||||
if (magicWord !== DEBUG_MAGIC_WORD) {
|
if (magicWord !== DEBUG_MAGIC_WORD) {
|
||||||
return resResult(STATUS.TOKEN_ERR);
|
return resResult(STATUS.TOKEN_ERR);
|
||||||
}
|
}
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let user = await UserModel.findUserByUid(role.userInfo.uid);
|
let user = await UserModel.findUserByUid(role.userInfo.uid);
|
||||||
|
|
||||||
reportTAEvent(roleId, 'test', { serverId }, user.ip);
|
reportTAEvent(roleId, 'test', { serverId }, user.ip);
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import { RewardInter } from "../../../pubUtils/interface";
|
|||||||
import { UserShopTypeModel } from "../../../db/UserShopType";
|
import { UserShopTypeModel } from "../../../db/UserShopType";
|
||||||
import { nowSeconds } from "../../../pubUtils/timeUtil";
|
import { nowSeconds } from "../../../pubUtils/timeUtil";
|
||||||
import { isGoodsHidden } from "../../../services/dataService";
|
import { isGoodsHidden } from "../../../services/dataService";
|
||||||
import Role from './../../../db/Role';
|
import { RoleModel } from './../../../db/Role';
|
||||||
|
|
||||||
export default function(app: Application) {
|
export default function(app: Application) {
|
||||||
return new ShopHandler(app);
|
return new ShopHandler(app);
|
||||||
@@ -86,7 +86,7 @@ export class ShopHandler {
|
|||||||
userShop = await UserShopModel.purchase(roleId, roleName, activityId, dicShopItem, count, seasonNum);
|
userShop = await UserShopModel.purchase(roleId, roleName, activityId, dicShopItem, count, seasonNum);
|
||||||
if (!userShop || (userShop && userShop.count > totalCanBuyTimes)) {
|
if (!userShop || (userShop && userShop.count > totalCanBuyTimes)) {
|
||||||
// rollback 消耗
|
// rollback 消耗
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
addItems(roleId, role.roleName, sid, cost, ITEM_CHANGE_REASON.SHOP_PURCHASE);
|
addItems(roleId, role.roleName, sid, cost, ITEM_CHANGE_REASON.SHOP_PURCHASE);
|
||||||
|
|
||||||
// rollback 购买次数
|
// rollback 购买次数
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ import { getMainTask, refDailyTaskBox, removeHistoryTask, getCurTask, checkTask,
|
|||||||
import { TASK } from "../../../pubUtils/dicParam";
|
import { TASK } from "../../../pubUtils/dicParam";
|
||||||
import { ActivityTaskPointModel, ActivityTaskPointModelType } from "../../../db/ActivityTaskPoint";
|
import { ActivityTaskPointModel, ActivityTaskPointModelType } from "../../../db/ActivityTaskPoint";
|
||||||
import { ItemInter, RewardInter } from "../../../pubUtils/interface";
|
import { ItemInter, RewardInter } from "../../../pubUtils/interface";
|
||||||
import Role from "../../../db/Role";
|
import { RoleModel } from "../../../db/Role";
|
||||||
import { roleLevelup } from "../../../services/normalBattleService";
|
import { roleLevelup } from "../../../services/normalBattleService";
|
||||||
import _ = require("underscore");
|
import _ = require("underscore");
|
||||||
import { addActvityTaskPoint } from "../../../services/activity/activityService";
|
import { addActvityTaskPoint } from "../../../services/activity/activityService";
|
||||||
@@ -333,7 +333,7 @@ export class ShopHandler {
|
|||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let serverId = session.get('serverId');
|
let serverId = session.get('serverId');
|
||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let server = await ServerlistModel.findByServerId(serverId);
|
let server = await ServerlistModel.findByServerId(serverId);
|
||||||
return resResult(STATUS.SUCCESS)
|
return resResult(STATUS.SUCCESS)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { ACTIVITY_TYPE } from '../../consts';
|
import { ACTIVITY_TYPE } from '../../consts';
|
||||||
import { ActivityModel, ActivityModelType } from '../../db/Activity';
|
import { ActivityModel, ActivityModelType } from '../../db/Activity';
|
||||||
import { ActivityFirstGiftModel, ActivityFirstGiftModelType } from '../../db/ActivityFirstGift';
|
import { ActivityFirstGiftModel, ActivityFirstGiftModelType } from '../../db/ActivityFirstGift';
|
||||||
import Role, { RoleType } from '../../db/Role';
|
import { RoleModel, RoleType } from '../../db/Role';
|
||||||
import { ServerlistModel } from '../../db/Serverlist';
|
import { ServerlistModel } from '../../db/Serverlist';
|
||||||
import { FirstGiftData } from '../../domain/activityField/firstGiftField';
|
import { FirstGiftData } from '../../domain/activityField/firstGiftField';
|
||||||
import { getRoleCreateTime, getServerCreateTime } from '../redisService';
|
import { getRoleCreateTime, getServerCreateTime } from '../redisService';
|
||||||
@@ -29,7 +29,7 @@ import { getActivitiesByType, getActivityById } from './activityService';
|
|||||||
// return null;
|
// return null;
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// let { createTime } = await Role.findByRoleId(roleId);
|
// let { createTime } = await RoleModel.findByRoleId(roleId);
|
||||||
// let playerData = new FirstGiftData(activityData, createTime);
|
// let playerData = new FirstGiftData(activityData, createTime);
|
||||||
// playerData.setPlayerRecords(playerRecord);
|
// playerData.setPlayerRecords(playerRecord);
|
||||||
// return playerData;
|
// return playerData;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { ACTIVITY_TYPE, STATUS, TASK_TYPE } from '../../consts';
|
|||||||
import { ActivityModel, ActivityModelType } from '../../db/Activity';
|
import { ActivityModel, ActivityModelType } from '../../db/Activity';
|
||||||
import { ActivityGrowthFundModel, ActivityGrowthFundModelType } from '../../db/ActivityGrowthFund';
|
import { ActivityGrowthFundModel, ActivityGrowthFundModelType } from '../../db/ActivityGrowthFund';
|
||||||
import { ActivityBuyRecordsModel } from '../../db/ActivityBuyRecords';
|
import { ActivityBuyRecordsModel } from '../../db/ActivityBuyRecords';
|
||||||
import Role from '../../db/Role';
|
import { RoleModel } from '../../db/Role';
|
||||||
import { GrowthFundData } from '../../domain/activityField/growthFundField';
|
import { GrowthFundData } from '../../domain/activityField/growthFundField';
|
||||||
import { ServerlistModel } from '../../db/Serverlist';
|
import { ServerlistModel } from '../../db/Serverlist';
|
||||||
import { getActivitiesByType, getActivityById } from './activityService';
|
import { getActivitiesByType, getActivityById } from './activityService';
|
||||||
@@ -63,7 +63,7 @@ export async function getPlayerGrowthFundData(activityId: number, serverId: numb
|
|||||||
case ACTIVITY_TYPE.GROWTH_FUND_MAIN://主线
|
case ACTIVITY_TYPE.GROWTH_FUND_MAIN://主线
|
||||||
case ACTIVITY_TYPE.GROWTH_FUND_MAIN_VIP://主线vip
|
case ACTIVITY_TYPE.GROWTH_FUND_MAIN_VIP://主线vip
|
||||||
{
|
{
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let { warStar = new Array<{ id: number, warType: number, star: number }>() } = role;
|
let { warStar = new Array<{ id: number, warType: number, star: number }>() } = role;
|
||||||
let warIDs = warStar.map(cur => cur.id);
|
let warIDs = warStar.map(cur => cur.id);
|
||||||
for (let page of playerData.list) {
|
for (let page of playerData.list) {
|
||||||
@@ -81,7 +81,7 @@ export async function getPlayerGrowthFundData(activityId: number, serverId: numb
|
|||||||
case ACTIVITY_TYPE.GROWTH_FUND_TOWER://镇念塔
|
case ACTIVITY_TYPE.GROWTH_FUND_TOWER://镇念塔
|
||||||
case ACTIVITY_TYPE.GROWTH_FUND_TOWER_VIP:////镇念塔vip
|
case ACTIVITY_TYPE.GROWTH_FUND_TOWER_VIP:////镇念塔vip
|
||||||
{
|
{
|
||||||
let { towerLv } = await Role.findByRoleId(roleId);
|
let { towerLv } = await RoleModel.findByRoleId(roleId);
|
||||||
for (let page of playerData.list) {
|
for (let page of playerData.list) {
|
||||||
for (let item of page.items) {
|
for (let item of page.items) {
|
||||||
if (item.taskType == TASK_TYPE.BATTLE_TOWER_LV) {
|
if (item.taskType == TASK_TYPE.BATTLE_TOWER_LV) {
|
||||||
@@ -96,7 +96,7 @@ export async function getPlayerGrowthFundData(activityId: number, serverId: numb
|
|||||||
case ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE: //精英
|
case ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE: //精英
|
||||||
case ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE_VIP: //精英VIP
|
case ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE_VIP: //精英VIP
|
||||||
{
|
{
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let { warStar = new Array<{ id: number, warType: number, star: number }>() } = role;
|
let { warStar = new Array<{ id: number, warType: number, star: number }>() } = role;
|
||||||
let warIDs = warStar.map(cur => cur.id);
|
let warIDs = warStar.map(cur => cur.id);
|
||||||
for (let page of playerData.list) {
|
for (let page of playerData.list) {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import moment = require('moment');
|
|||||||
import { ACTIVITY_TYPE, ITEM_CHANGE_REASON, STATUS } from '../../consts';
|
import { ACTIVITY_TYPE, ITEM_CHANGE_REASON, STATUS } from '../../consts';
|
||||||
import { ActivityModel, ActivityModelType } from '../../db/Activity';
|
import { ActivityModel, ActivityModelType } from '../../db/Activity';
|
||||||
import { ActivityShopModel, ActivityShopModelType } from '../../db/ActivityShop';
|
import { ActivityShopModel, ActivityShopModelType } from '../../db/ActivityShop';
|
||||||
import Role from '../../db/Role';
|
import { RoleModel } from '../../db/Role';
|
||||||
import { ServerlistModel } from '../../db/Serverlist';
|
import { ServerlistModel } from '../../db/Serverlist';
|
||||||
import { LimitShopData } from '../../domain/activityField/limitShopField';
|
import { LimitShopData } from '../../domain/activityField/limitShopField';
|
||||||
import { deltaDays } from '../../pubUtils/util';
|
import { deltaDays } from '../../pubUtils/util';
|
||||||
@@ -85,7 +85,7 @@ export async function limitPackageActivity(serverId: number, roleId: string, typ
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export async function newPlayerActivityDays(roleId: string) {
|
export async function newPlayerActivityDays(roleId: string) {
|
||||||
let { createTime } = await Role.findByRoleId(roleId);
|
let { createTime } = await RoleModel.findByRoleId(roleId);
|
||||||
let createDate = moment(createTime * 1000).toDate();
|
let createDate = moment(createTime * 1000).toDate();
|
||||||
let todayIndex = deltaDays(createDate, new Date, true) + 1;
|
let todayIndex = deltaDays(createDate, new Date, true) + 1;
|
||||||
return todayIndex;
|
return todayIndex;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import { addReward, stringToRewardParam } from './giftPackageService';
|
|||||||
import moment = require('moment');
|
import moment = require('moment');
|
||||||
import { ServerlistModel } from '../../db/Serverlist';
|
import { ServerlistModel } from '../../db/Serverlist';
|
||||||
import { sendMailByContent } from './../mailService';
|
import { sendMailByContent } from './../mailService';
|
||||||
import Role, { RoleType } from '../../db/Role';
|
import { RoleModel, RoleType } from '../../db/Role';
|
||||||
import { getActivitiesByType, getActivityById } from './activityService';
|
import { getActivitiesByType, getActivityById } from './activityService';
|
||||||
import { RewardInter } from '../../pubUtils/interface';
|
import { RewardInter } from '../../pubUtils/interface';
|
||||||
import { DUNGEON_CONST, PVP, VIP } from '../../pubUtils/dicParam';
|
import { DUNGEON_CONST, PVP, VIP } from '../../pubUtils/dicParam';
|
||||||
@@ -132,7 +132,7 @@ export async function makeMonthlyTicketReward(roleId: string, roleName: string,
|
|||||||
|
|
||||||
await ActivityMonthlyTicketModel.buyMonthlyTicket(serverId, roleId, activityId, activityData.type, endTime, playerData.isForever)
|
await ActivityMonthlyTicketModel.buyMonthlyTicket(serverId, roleId, activityId, activityData.type, endTime, playerData.isForever)
|
||||||
if(activityData.type == ACTIVITY_TYPE.MONTHLY_TICKET_2) {
|
if(activityData.type == ACTIVITY_TYPE.MONTHLY_TICKET_2) {
|
||||||
let role = await Role.buyForeverTicket(roleId);
|
let role = await RoleModel.buyForeverTicket(roleId);
|
||||||
if(sid) await pinus.app.rpc.connector.connectorRemote.setOtherUserSession.toServer(sid,[{ roleId, vipStartTime: role.vipStartTime }]);
|
if(sid) await pinus.app.rpc.connector.connectorRemote.setOtherUserSession.toServer(sid,[{ roleId, vipStartTime: role.vipStartTime }]);
|
||||||
}
|
}
|
||||||
let firstReward = playerData.firstReward;
|
let firstReward = playerData.firstReward;
|
||||||
@@ -196,7 +196,7 @@ export function getVipHungupReward(startTime: number, endTime: number, baseRewar
|
|||||||
|
|
||||||
export async function getVipPvpChallengeMaxCnt(roleId: string, vipStartTime?: number) {
|
export async function getVipPvpChallengeMaxCnt(roleId: string, vipStartTime?: number) {
|
||||||
if(vipStartTime == undefined) {
|
if(vipStartTime == undefined) {
|
||||||
let role = await Role.findByRoleId(roleId, 'vipStartTime');
|
let role = await RoleModel.findByRoleId(roleId, 'vipStartTime');
|
||||||
vipStartTime = role.vipStartTime;
|
vipStartTime = role.vipStartTime;
|
||||||
}
|
}
|
||||||
let count = PVP.PVP_CHALLENGE_COUNTS;
|
let count = PVP.PVP_CHALLENGE_COUNTS;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import { ActivityPopUpShopModel, ActivityPopUpShopModelType, PopUpShopItem } fro
|
|||||||
import { ServerlistModel } from '../../db/Serverlist';
|
import { ServerlistModel } from '../../db/Serverlist';
|
||||||
import moment = require('moment');
|
import moment = require('moment');
|
||||||
import { getActivitiesByType, getActivityById, pushActivities, pushActivityInter, pushSingleActivity } from './activityService';
|
import { getActivitiesByType, getActivityById, pushActivities, pushActivityInter, pushSingleActivity } from './activityService';
|
||||||
import Role, { RoleType } from '../../db/Role';
|
import { RoleModel, RoleType } from '../../db/Role';
|
||||||
import { HeroType } from '../../db/Hero';
|
import { HeroType } from '../../db/Hero';
|
||||||
import { pinus } from 'pinus';
|
import { pinus } from 'pinus';
|
||||||
import { getRandEelm, getRandSingleEelm } from '../../pubUtils/util';
|
import { getRandEelm, getRandSingleEelm } from '../../pubUtils/util';
|
||||||
@@ -25,7 +25,7 @@ import { ActivityPopUpShopRecModel } from '../../db/ActivityPopUpShopRec';
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export async function getPopUpShopData(activityId: number, serverId: number, roleId: string, role?: RoleType) {
|
export async function getPopUpShopData(activityId: number, serverId: number, roleId: string, role?: RoleType) {
|
||||||
if(!role) role = await Role.findByRoleId(roleId, 'roleId totalPay lv');
|
if(!role) role = await RoleModel.findByRoleId(roleId, 'roleId totalPay lv');
|
||||||
|
|
||||||
let activityData = await getActivityById(activityId);
|
let activityData = await getActivityById(activityId);
|
||||||
let playerRecords = await ActivityPopUpShopModel.findAllEffectData(serverId, activityId, roleId);
|
let playerRecords = await ActivityPopUpShopModel.findAllEffectData(serverId, activityId, roleId);
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import moment = require('moment');
|
|||||||
import { ACTIVITY_TYPE, ITEM_CHANGE_REASON, STATUS } from '../../consts';
|
import { ACTIVITY_TYPE, ITEM_CHANGE_REASON, STATUS } from '../../consts';
|
||||||
import { ActivityModel, ActivityModelType } from '../../db/Activity';
|
import { ActivityModel, ActivityModelType } from '../../db/Activity';
|
||||||
import { ActivityRefreshShopModel, ActivityRefreshShopModelType } from '../../db/ActivityRefreshShop';
|
import { ActivityRefreshShopModel, ActivityRefreshShopModelType } from '../../db/ActivityRefreshShop';
|
||||||
import Role from '../../db/Role';
|
import { RoleModel } from '../../db/Role';
|
||||||
import { ServerlistModel } from '../../db/Serverlist';
|
import { ServerlistModel } from '../../db/Serverlist';
|
||||||
import { RefreshShopData } from '../../domain/activityField/refreshShopField';
|
import { RefreshShopData } from '../../domain/activityField/refreshShopField';
|
||||||
import { deltaDays } from '../../pubUtils/util';
|
import { deltaDays } from '../../pubUtils/util';
|
||||||
@@ -31,7 +31,7 @@ export async function getRefreshShopActivity(serverId: number, roleId: string) {
|
|||||||
|
|
||||||
let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityData.activityId, roleId, playerData.roundIndex);
|
let playerRecord: ActivityRefreshShopModelType = await ActivityRefreshShopModel.findData(activityData.activityId, roleId, playerData.roundIndex);
|
||||||
if (!playerRecord) {//生成商店可购买商品的数据
|
if (!playerRecord) {//生成商店可购买商品的数据
|
||||||
let { lv } = await Role.findByRoleId(roleId);
|
let { lv } = await RoleModel.findByRoleId(roleId);
|
||||||
let randomGoods = playerData.randomGoodsItems(lv);
|
let randomGoods = playerData.randomGoodsItems(lv);
|
||||||
playerRecord = await ActivityRefreshShopModel.createShop(activityData.activityId, roleId, playerData.roundIndex, randomGoods);
|
playerRecord = await ActivityRefreshShopModel.createShop(activityData.activityId, roleId, playerData.roundIndex, randomGoods);
|
||||||
}
|
}
|
||||||
@@ -49,7 +49,7 @@ export async function getRefreshShopActivity(serverId: number, roleId: string) {
|
|||||||
*/
|
*/
|
||||||
export async function getPlayerRefreshShopData(activityId: number, serverId: number, roleId: string) {
|
export async function getPlayerRefreshShopData(activityId: number, serverId: number, roleId: string) {
|
||||||
let activityData = await getActivityById(activityId);
|
let activityData = await getActivityById(activityId);
|
||||||
let role = await Role.findByRoleId(roleId, 'lv createTime');
|
let role = await RoleModel.findByRoleId(roleId, 'lv createTime');
|
||||||
let createTime = await getRoleCreateTime(roleId, role);
|
let createTime = await getRoleCreateTime(roleId, role);
|
||||||
let serverTime = await getServerCreateTime(serverId);
|
let serverTime = await getServerCreateTime(serverId);
|
||||||
let playerData = new RefreshShopData(activityData, createTime, serverTime);
|
let playerData = new RefreshShopData(activityData, createTime, serverTime);
|
||||||
@@ -73,7 +73,7 @@ export async function getPlayerRefreshShopData(activityId: number, serverId: num
|
|||||||
*/
|
*/
|
||||||
export async function getPlayerRefreshShopDataByRoundIndex(activityId: number, serverId: number, roleId: string, roundIndex: number) {
|
export async function getPlayerRefreshShopDataByRoundIndex(activityId: number, serverId: number, roleId: string, roundIndex: number) {
|
||||||
let activityData: ActivityModelType = await getActivityById(activityId);
|
let activityData: ActivityModelType = await getActivityById(activityId);
|
||||||
let role = await Role.findByRoleId(roleId, 'lv createTime');
|
let role = await RoleModel.findByRoleId(roleId, 'lv createTime');
|
||||||
let createTime = await getRoleCreateTime(roleId, role);
|
let createTime = await getRoleCreateTime(roleId, role);
|
||||||
let serverTime = await getServerCreateTime(serverId);
|
let serverTime = await getServerCreateTime(serverId);
|
||||||
let playerData = new RefreshShopData(activityData, createTime, serverTime);
|
let playerData = new RefreshShopData(activityData, createTime, serverTime);
|
||||||
@@ -96,7 +96,7 @@ export async function getPlayerRefreshShopDataByRoundIndex(activityId: number, s
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export async function newPlayerActivityDays(roleId: string) {
|
export async function newPlayerActivityDays(roleId: string) {
|
||||||
let { createTime } = await Role.findByRoleId(roleId);
|
let { createTime } = await RoleModel.findByRoleId(roleId);
|
||||||
let createDate = moment(createTime * 1000).toDate();
|
let createDate = moment(createTime * 1000).toDate();
|
||||||
let todayIndex = deltaDays(createDate, new Date, true) + 1;
|
let todayIndex = deltaDays(createDate, new Date, true) + 1;
|
||||||
return todayIndex;
|
return todayIndex;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { ACTIVITY_TYPE, getRedisKeyByRankType, MAIL_TYPE, RANK_TYPE, REDIS_KEY }
|
|||||||
import { ActivityGroupModel } from "../../db/ActivityGroup";
|
import { ActivityGroupModel } from "../../db/ActivityGroup";
|
||||||
import { ActivityTimeLimitRankModel, ActivityTimeLimitRankModelTypeParam } from "../../db/ActivityTimeLimitRank";
|
import { ActivityTimeLimitRankModel, ActivityTimeLimitRankModelTypeParam } from "../../db/ActivityTimeLimitRank";
|
||||||
import { GuildModel, GuildType } from "../../db/Guild";
|
import { GuildModel, GuildType } from "../../db/Guild";
|
||||||
import Role from "../../db/Role";
|
import { RoleModel } from "../../db/Role";
|
||||||
import { TimeLimitRankData } from "../../domain/activityField/timeLimitRankField";
|
import { TimeLimitRankData } from "../../domain/activityField/timeLimitRankField";
|
||||||
import { GuildRankInfo, RoleRankInfo } from "../../domain/rank";
|
import { GuildRankInfo, RoleRankInfo } from "../../domain/rank";
|
||||||
import { stringWithTypeToRewardInter } from "../../pubUtils/roleUtil";
|
import { stringWithTypeToRewardInter } from "../../pubUtils/roleUtil";
|
||||||
@@ -116,7 +116,7 @@ export async function takeSnapshot(data: TimeLimitRankData, serverId: number) {
|
|||||||
serverId, activityId: data.activityId, rankType: data.rankType, score: rank.scores[0]||0, time: rank.scores[1]||0
|
serverId, activityId: data.activityId, rankType: data.rankType, score: rank.scores[0]||0, time: rank.scores[1]||0
|
||||||
}
|
}
|
||||||
if(rank.myId.roleId) {
|
if(rank.myId.roleId) {
|
||||||
let role = await Role.findByRoleId(rank.myId.roleId, '_id roleId');
|
let role = await RoleModel.findByRoleId(rank.myId.roleId, '_id roleId');
|
||||||
if(role) insertInfos.push({ ...insertBaseInfo, roleId: role.roleId, role: role._id });
|
if(role) insertInfos.push({ ...insertBaseInfo, roleId: role.roleId, role: role._id });
|
||||||
} else if(rank.myId.guildCode) {
|
} else if(rank.myId.guildCode) {
|
||||||
let guild = await GuildModel.findByCode(rank.myId.guildCode, serverId, '_id guildCode');
|
let guild = await GuildModel.findByCode(rank.myId.guildCode, serverId, '_id guildCode');
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { MemComBtlTeam } from '../../domain/battleField/ComBattleTeamField';
|
|||||||
import { ItemModel } from '../../db/Item';
|
import { ItemModel } from '../../db/Item';
|
||||||
import { BATTLE_REWARD_TYPE, ITEM_CHANGE_REASON, IT_TYPE, PUSH_ROUTE } from '../../consts';
|
import { BATTLE_REWARD_TYPE, ITEM_CHANGE_REASON, IT_TYPE, PUSH_ROUTE } from '../../consts';
|
||||||
import { FriendRelationModel } from '../../db/FriendRelation';
|
import { FriendRelationModel } from '../../db/FriendRelation';
|
||||||
import Role, { RoleType } from '../../db/Role';
|
import { RoleModel, RoleType } from '../../db/Role';
|
||||||
import { STATUS } from '../../consts/statusCode';
|
import { STATUS } from '../../consts/statusCode';
|
||||||
import { COM_TEAM_STATUS, FRIEND_DROP_TYPE, COM_BTL_CONST, FRIEND_DROP_MAX } from '../../consts';
|
import { COM_TEAM_STATUS, FRIEND_DROP_TYPE, COM_BTL_CONST, FRIEND_DROP_MAX } from '../../consts';
|
||||||
import { RoleStatus, ComBattleTeamModel, ComBattleTeamType, ComBattleReward } from '../../db/ComBattleTeam';
|
import { RoleStatus, ComBattleTeamModel, ComBattleTeamType, ComBattleReward } from '../../db/ComBattleTeam';
|
||||||
@@ -468,7 +468,7 @@ async function teammateValid(roleInfo: Partial<RoleType>, roleId: string, roleId
|
|||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
export async function getValidTeammateRoleSt(roleId: string, roleIds: string[], ceLimit: number, sid: string) {
|
export async function getValidTeammateRoleSt(roleId: string, roleIds: string[], ceLimit: number, sid: string) {
|
||||||
let roleInfo = await Role.findByRoleId(roleId, null, true);
|
let roleInfo = await RoleModel.findByRoleId(roleId, null, true);
|
||||||
|
|
||||||
const valid = await teammateValid(roleInfo, roleId, roleIds, ceLimit);
|
const valid = await teammateValid(roleInfo, roleId, roleIds, ceLimit);
|
||||||
if (!valid) return null;
|
if (!valid) return null;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { HangUpRecordModel } from './../db/HangUpRecord';
|
|||||||
import { HANG_UP_CONSTS, REDIS_KEY, TASK_TYPE, TOWER_FORBIDDEN_CHARA_TYPE, TOWER_TASK_STATUS, MAIL_TYPE, MSG_SOURCE, POP_UP_SHOP_CONDITION_TYPE } from './../consts';
|
import { HANG_UP_CONSTS, REDIS_KEY, TASK_TYPE, TOWER_FORBIDDEN_CHARA_TYPE, TOWER_TASK_STATUS, MAIL_TYPE, MSG_SOURCE, POP_UP_SHOP_CONDITION_TYPE } from './../consts';
|
||||||
import { BattleRecordModel } from './../db/BattleRecord';
|
import { BattleRecordModel } from './../db/BattleRecord';
|
||||||
import { TowerRecordModel, WarStatus } from './../db/TowerRecord';
|
import { TowerRecordModel, WarStatus } from './../db/TowerRecord';
|
||||||
import Role, { RoleType } from './../db/Role';
|
import { RoleModel, RoleType } from './../db/Role';
|
||||||
import { shouldRefresh, resResult, cal, getRandEelmWithWeight, genCode, } from '../pubUtils/util';
|
import { shouldRefresh, resResult, cal, getRandEelmWithWeight, genCode, } from '../pubUtils/util';
|
||||||
import { STATUS } from '../consts/statusCode';
|
import { STATUS } from '../consts/statusCode';
|
||||||
import { HangUpSpdUpRecModel } from '../db/HangUpSpdUpRec';
|
import { HangUpSpdUpRecModel } from '../db/HangUpSpdUpRec';
|
||||||
@@ -28,7 +28,7 @@ import { checkPopUpCondition } from './activity/popUpShopService';
|
|||||||
export async function getTowerStatus(role: RoleType) {
|
export async function getTowerStatus(role: RoleType) {
|
||||||
let { towerLv, roleId, serverId, towerReceived } = role;
|
let { towerLv, roleId, serverId, towerReceived } = role;
|
||||||
if (!towerLv) {
|
if (!towerLv) {
|
||||||
let role = await Role.towerLvUp(roleId);
|
let role = await RoleModel.towerLvUp(roleId);
|
||||||
towerLv = role.towerLv;
|
towerLv = role.towerLv;
|
||||||
}
|
}
|
||||||
let towerRec = await getTowerRecByLv(roleId, towerLv);
|
let towerRec = await getTowerRecByLv(roleId, towerLv);
|
||||||
@@ -88,7 +88,7 @@ export function getTowerHeroCe(warId: number, heroes: HeroType[], recHeroes: num
|
|||||||
* @param roleId
|
* @param roleId
|
||||||
*/
|
*/
|
||||||
export async function getHungupRewards(roleId: string, role?: RoleType) {
|
export async function getHungupRewards(roleId: string, role?: RoleType) {
|
||||||
if(!role) role = await Role.findByRoleId(roleId);
|
if(!role) role = await RoleModel.findByRoleId(roleId);
|
||||||
const result = await calcuHangUpReward(role);
|
const result = await calcuHangUpReward(role);
|
||||||
if(!result) return false;
|
if(!result) return false;
|
||||||
|
|
||||||
@@ -108,7 +108,7 @@ export async function getHungupRewards(roleId: string, role?: RoleType) {
|
|||||||
* @param role
|
* @param role
|
||||||
*/
|
*/
|
||||||
export async function getTasks(roleId: string) {
|
export async function getTasks(roleId: string) {
|
||||||
let role = await Role.findByRoleId(roleId, 'roleName towerLv towerTaskRefTime towerTaskReCnt');
|
let role = await RoleModel.findByRoleId(roleId, 'roleName towerLv towerTaskRefTime towerTaskReCnt');
|
||||||
let { roleName, towerLv, towerTaskRefTime, towerTaskReCnt = 0 } = role;
|
let { roleName, towerLv, towerTaskRefTime, towerTaskReCnt = 0 } = role;
|
||||||
|
|
||||||
// towerLv:从1开始,下次打得层数,dicParam内的:从0开始,打过的层数
|
// towerLv:从1开始,下次打得层数,dicParam内的:从0开始,打过的层数
|
||||||
@@ -120,7 +120,7 @@ export async function getTasks(roleId: string) {
|
|||||||
const needRefresh = shouldRefresh(towerTaskRefTime, curTime);
|
const needRefresh = shouldRefresh(towerTaskRefTime, curTime);
|
||||||
let curTasks: TowerTaskRecType[] = []
|
let curTasks: TowerTaskRecType[] = []
|
||||||
if(needRefresh) {
|
if(needRefresh) {
|
||||||
role = await Role.resetTowerCnt(roleId, curTime);
|
role = await RoleModel.resetTowerCnt(roleId, curTime);
|
||||||
const batchCode = genCode(8);
|
const batchCode = genCode(8);
|
||||||
let tasksData = await TowerTaskRecModel.getPreTasks(roleId);
|
let tasksData = await TowerTaskRecModel.getPreTasks(roleId);
|
||||||
let preTasksMap = treatPreTasks(tasksData);
|
let preTasksMap = treatPreTasks(tasksData);
|
||||||
@@ -183,7 +183,7 @@ export function checkTaskRewards(batchCode: string, tasks: TowerTaskRecType[]) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export async function checkTowerWar(roleId: string, battleId: number, seqIds: number[], heroes: HeroType[]) {
|
export async function checkTowerWar(roleId: string, battleId: number, seqIds: number[], heroes: HeroType[]) {
|
||||||
let { towerLv } = await Role.findByRoleId(roleId);
|
let { towerLv } = await RoleModel.findByRoleId(roleId);
|
||||||
const towerInfo = gameData.tower.get(towerLv);
|
const towerInfo = gameData.tower.get(towerLv);
|
||||||
if (!towerInfo) {
|
if (!towerInfo) {
|
||||||
console.error(`天梯层数异常,lv ${towerLv} by ${roleId}`);
|
console.error(`天梯层数异常,lv ${towerLv} by ${roleId}`);
|
||||||
@@ -252,7 +252,7 @@ export async function towerBattleEnd(sid: string, roleId: string, serverId: numb
|
|||||||
return { status: -1, resResult: resResult(STATUS.BATTLE_ID_NOT_MATCH) };
|
return { status: -1, resResult: resResult(STATUS.BATTLE_ID_NOT_MATCH) };
|
||||||
}
|
}
|
||||||
|
|
||||||
let { towerLv, roleName } = await Role.findByRoleId(roleId);
|
let { towerLv, roleName } = await RoleModel.findByRoleId(roleId);
|
||||||
let { warStatus, heroes: recHeroes } = await TowerRecordModel.getRecordByLv(roleId, towerLv);
|
let { warStatus, heroes: recHeroes } = await TowerRecordModel.getRecordByLv(roleId, towerLv);
|
||||||
// console.log('*******', towerLv, heroes.join(), recHeroes.join())
|
// console.log('*******', towerLv, heroes.join(), recHeroes.join())
|
||||||
for (let hid of heroes) {
|
for (let hid of heroes) {
|
||||||
@@ -275,7 +275,7 @@ export async function towerBattleEnd(sid: string, roleId: string, serverId: numb
|
|||||||
let newRec = await TowerRecordModel.updateRecord(roleId, towerLv, battleCode, battleId, heroes, inc);
|
let newRec = await TowerRecordModel.updateRecord(roleId, towerLv, battleCode, battleId, heroes, inc);
|
||||||
let towerReward: RewardInter[] = [];
|
let towerReward: RewardInter[] = [];
|
||||||
if (inc === 1) {
|
if (inc === 1) {
|
||||||
let role = await Role.towerLvUp(roleId);
|
let role = await RoleModel.towerLvUp(roleId);
|
||||||
// 更新redis
|
// 更新redis
|
||||||
let r = new Rank(REDIS_KEY.TOWER_RANK, { serverId });
|
let r = new Rank(REDIS_KEY.TOWER_RANK, { serverId });
|
||||||
await r.setRankWithRoleInfo(roleId, role.towerLv - 1, role.towerUpTime.getTime(), role);
|
await r.setRankWithRoleInfo(roleId, role.towerLv - 1, role.towerUpTime.getTime(), role);
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { CHAT_SYSTEM } from './../pubUtils/dicParam';
|
import { CHAT_SYSTEM } from './../pubUtils/dicParam';
|
||||||
import { PrivateChatRec } from './../db/ChatInfo';
|
import { PrivateChatRec } from './../db/ChatInfo';
|
||||||
import Role from './../db/Role';
|
import { RoleModel } from './../db/Role';
|
||||||
import { GroupMessageModel } from './../db/GroupMessage';
|
import { GroupMessageModel } from './../db/GroupMessage';
|
||||||
import { CounterModel } from './../db/Counter';
|
import { CounterModel } from './../db/Counter';
|
||||||
import { PrivateMessageModel, PrivateMessageParam, PrivateMessageType } from './../db/PrivateMessage';
|
import { PrivateMessageModel, PrivateMessageParam, PrivateMessageType } from './../db/PrivateMessage';
|
||||||
@@ -346,7 +346,7 @@ async function updateRecentChats(sender: boolean, roleId: string, targetRoleId:
|
|||||||
*/
|
*/
|
||||||
export async function roleChatInfos(roleId: string, roleName?: string) {
|
export async function roleChatInfos(roleId: string, roleName?: string) {
|
||||||
if(!roleName) {
|
if(!roleName) {
|
||||||
let role = await Role.findByRoleId(roleId, 'roleName');
|
let role = await RoleModel.findByRoleId(roleId, 'roleName');
|
||||||
roleName = role.roleName;
|
roleName = role.roleName;
|
||||||
}
|
}
|
||||||
let result = await ChatInfoModel.findInfo(roleId);
|
let result = await ChatInfoModel.findInfo(roleId);
|
||||||
@@ -376,7 +376,7 @@ export async function recentPrivateChatInfos(roleId: string, roleName: string) {
|
|||||||
.splice(CHAT_SYSTEM.RECENT_PRIVATE_CHATS_CNT);
|
.splice(CHAT_SYSTEM.RECENT_PRIVATE_CHATS_CNT);
|
||||||
if (!recentPrivateChats || !recentPrivateChats.length) return [];
|
if (!recentPrivateChats || !recentPrivateChats.length) return [];
|
||||||
|
|
||||||
const roleInfos = await Role.findByRoleIds(recentPrivateChats.map(chat => { return chat.targetRoleId }));
|
const roleInfos = await RoleModel.findByRoleIds(recentPrivateChats.map(chat => { return chat.targetRoleId }));
|
||||||
const chatInfos = recentPrivateChats.map( chat => {
|
const chatInfos = recentPrivateChats.map( chat => {
|
||||||
for (let { roleId: targetRoleId, quitTime, loginTime, roleName: targetRoleName, title, guildName, head, frame, spine, lv } of roleInfos) {
|
for (let { roleId: targetRoleId, quitTime, loginTime, roleName: targetRoleName, title, guildName, head, frame, spine, lv } of roleInfos) {
|
||||||
if (targetRoleId === chat.targetRoleId) {
|
if (targetRoleId === chat.targetRoleId) {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { getMails } from './mailService';
|
|||||||
import { recentGuildMsgs, recentLeagueMsgs, recentPrivateChatInfos, recentServerGroupMsgs, recentSysMsgs, recentWorldMsgs } from './chatService';
|
import { recentGuildMsgs, recentLeagueMsgs, recentPrivateChatInfos, recentServerGroupMsgs, recentSysMsgs, recentWorldMsgs } from './chatService';
|
||||||
import { getCurTask, getPvpTask } from './task/taskService';
|
import { getCurTask, getPvpTask } from './task/taskService';
|
||||||
|
|
||||||
import { RoleType } from '../db/Role';
|
import { RoleModel, RoleType } from '../db/Role';
|
||||||
import { Application, FrontendOrBackendSession, pinus, RpcClient } from 'pinus';
|
import { Application, FrontendOrBackendSession, pinus, RpcClient } from 'pinus';
|
||||||
import { compareVersion, getRandEelmWithWeight, resResult } from '../pubUtils/util';
|
import { compareVersion, getRandEelmWithWeight, resResult } from '../pubUtils/util';
|
||||||
import { STATUS, PUSH_BATCH, PUSH_INTERVAL, CONSUME_TYPE, HERO_SELECT, ENTERY_ROLE_PICK, JEWEL_SELECT, ITEM_SELECT, SKIN_SELECT, PUSH_ROUTE, ARTIFACT_SELECT, ACTIVITYITEM_SELECT, SNS_LINK_TYPE } from '../consts';
|
import { STATUS, PUSH_BATCH, PUSH_INTERVAL, CONSUME_TYPE, HERO_SELECT, ENTERY_ROLE_PICK, JEWEL_SELECT, ITEM_SELECT, SKIN_SELECT, PUSH_ROUTE, ARTIFACT_SELECT, ACTIVITYITEM_SELECT, SNS_LINK_TYPE } from '../consts';
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
import DailyRecord, { DailyRecordModel } from '../db/DailyRecord';
|
import DailyRecord, { DailyRecordModel } from '../db/DailyRecord';
|
||||||
import { resResult } from '../pubUtils/util';
|
import { resResult } from '../pubUtils/util';
|
||||||
import { STATUS } from '../consts/statusCode';
|
import { STATUS } from '../consts/statusCode';
|
||||||
import Role, { RoleType } from '../db/Role';
|
import { RoleModel, RoleType } from '../db/Role';
|
||||||
import { gameData } from '../pubUtils/data';
|
import { gameData } from '../pubUtils/data';
|
||||||
import { DicWar } from '../pubUtils/dictionary/DicWar';
|
import { DicWar } from '../pubUtils/dictionary/DicWar';
|
||||||
import { WarStar } from '../domain/dbGeneral';
|
import { WarStar } from '../domain/dbGeneral';
|
||||||
@@ -118,7 +118,7 @@ export async function getDailyNum(dailyRecord: DailyRecord, role?: RoleType) {
|
|||||||
let {timesPerDay, timesCanBuy} = curDaily;
|
let {timesPerDay, timesCanBuy} = curDaily;
|
||||||
|
|
||||||
if(!role) {
|
if(!role) {
|
||||||
role = await Role.findByRoleId(roleId, 'vipStartTime');
|
role = await RoleModel.findByRoleId(roleId, 'vipStartTime');
|
||||||
}
|
}
|
||||||
timesPerDay = getVipDailyCnt(timesPerDay, role);
|
timesPerDay = getVipDailyCnt(timesPerDay, role);
|
||||||
// console.log('###### getDailyNum', timesPerDay, count, buyCount, timesCanBuy)
|
// console.log('###### getDailyNum', timesPerDay, count, buyCount, timesCanBuy)
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
import { resResult, shouldRefresh, } from '../pubUtils/util';
|
import { resResult, shouldRefresh, } from '../pubUtils/util';
|
||||||
import { STATUS } from '../consts/statusCode';
|
import { STATUS } from '../consts/statusCode';
|
||||||
import Role, { RoleType, WarStar } from '../db/Role';
|
import { RoleModel, RoleType, WarStar } from '../db/Role';
|
||||||
import * as dicParam from '../pubUtils/dicParam';
|
import * as dicParam from '../pubUtils/dicParam';
|
||||||
import { RankParam } from '../domain/rank';
|
import { RankParam } from '../domain/rank';
|
||||||
import { BattleRecordType } from '../db/BattleRecord';
|
import { BattleRecordType } from '../db/BattleRecord';
|
||||||
@@ -41,7 +41,7 @@ function isFirstPass(warStar: WarStar[], warId: number) {
|
|||||||
|
|
||||||
// 检查秘境本次数checkBattle使用
|
// 检查秘境本次数checkBattle使用
|
||||||
export async function checkDungeonNum(roleId: string, inc: number, warId: number) {
|
export async function checkDungeonNum(roleId: string, inc: number, warId: number) {
|
||||||
let { dungeonCnt = 0, dungeonBuyCnt = 0, dungeonRefTime, vipStartTime, warStar } = await Role.findByRoleId(roleId);
|
let { dungeonCnt = 0, dungeonBuyCnt = 0, dungeonRefTime, vipStartTime, warStar } = await RoleModel.findByRoleId(roleId);
|
||||||
if(isFirstPass(warStar, warId)) inc = 0;
|
if(isFirstPass(warStar, warId)) inc = 0;
|
||||||
|
|
||||||
let curTime = new Date();
|
let curTime = new Date();
|
||||||
@@ -53,7 +53,7 @@ export async function checkDungeonNum(roleId: string, inc: number, warId: number
|
|||||||
if(dungeonCnt + inc > freeCount + dungeonBuyCnt) {
|
if(dungeonCnt + inc > freeCount + dungeonBuyCnt) {
|
||||||
return {status: -1, resResult: resResult(STATUS.DUNGEON_TIMES_LACK)}
|
return {status: -1, resResult: resResult(STATUS.DUNGEON_TIMES_LACK)}
|
||||||
}
|
}
|
||||||
await Role.increaseDungeonCnt(roleId, needRefresh, 0, curTime);
|
await RoleModel.increaseDungeonCnt(roleId, needRefresh, 0, curTime);
|
||||||
|
|
||||||
return { status: 0, data: {
|
return { status: 0, data: {
|
||||||
battleCount: freeCount + dungeonBuyCnt - dungeonCnt,
|
battleCount: freeCount + dungeonBuyCnt - dungeonCnt,
|
||||||
@@ -70,7 +70,7 @@ export async function checkDungeonNum(roleId: string, inc: number, warId: number
|
|||||||
|
|
||||||
export async function checkDungeonAndIncrease(roleId: string, inc: number, isRef: boolean, warId: number) {
|
export async function checkDungeonAndIncrease(roleId: string, inc: number, isRef: boolean, warId: number) {
|
||||||
|
|
||||||
let { dungeonCnt = 0, dungeonBuyCnt = 0, dungeonRefTime, vipStartTime, warStar } = await Role.findByRoleId(roleId);
|
let { dungeonCnt = 0, dungeonBuyCnt = 0, dungeonRefTime, vipStartTime, warStar } = await RoleModel.findByRoleId(roleId);
|
||||||
if(isFirstPass(warStar, warId)) inc = 0;
|
if(isFirstPass(warStar, warId)) inc = 0;
|
||||||
let curTime = new Date();
|
let curTime = new Date();
|
||||||
|
|
||||||
@@ -84,7 +84,7 @@ export async function checkDungeonAndIncrease(roleId: string, inc: number, isRef
|
|||||||
return { status: -1, resResult: resResult(STATUS.DUNGEON_TIMES_LACK) }
|
return { status: -1, resResult: resResult(STATUS.DUNGEON_TIMES_LACK) }
|
||||||
}
|
}
|
||||||
// console.log('needRefresh', needRefresh);
|
// console.log('needRefresh', needRefresh);
|
||||||
await Role.increaseDungeonCnt(roleId, needRefresh, inc, curTime);
|
await RoleModel.increaseDungeonCnt(roleId, needRefresh, inc, curTime);
|
||||||
return {status: 1, data: {
|
return {status: 1, data: {
|
||||||
battleCount: freeCount + dungeonBuyCnt - dungeonCnt - inc,
|
battleCount: freeCount + dungeonBuyCnt - dungeonCnt - inc,
|
||||||
buyCount: dicParam.DUNGEON_CONST.DUNGEON_CONST_BUY - dungeonBuyCnt
|
buyCount: dicParam.DUNGEON_CONST.DUNGEON_CONST_BUY - dungeonBuyCnt
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { FrontendOrBackendSession, pinus } from 'pinus';
|
import { FrontendOrBackendSession, pinus } from 'pinus';
|
||||||
import EventRecord, { EventRecordModel } from '../db/EventRecord';
|
import EventRecord, { EventRecordModel } from '../db/EventRecord';
|
||||||
import Role from '../db/Role';
|
import { RoleModel } from '../db/Role';
|
||||||
import { genCode, getRandEelmWithWeight, resResult, getRandSingleEelm } from '../pubUtils/util';
|
import { genCode, getRandEelmWithWeight, resResult, getRandSingleEelm } from '../pubUtils/util';
|
||||||
import { EVENT_STATUS, EVENT_RECORD_STATUS, EVENT_TYPE, EVENT_RANDOM_TYPE_ONE_OPEN, EVENT_QUIZ_NUM, EVENT_ANSWER_STATUS, FUNCS_ID, PUSH_ROUTE } from '../consts';
|
import { EVENT_STATUS, EVENT_RECORD_STATUS, EVENT_TYPE, EVENT_RANDOM_TYPE_ONE_OPEN, EVENT_QUIZ_NUM, EVENT_ANSWER_STATUS, FUNCS_ID, PUSH_ROUTE } from '../consts';
|
||||||
import { EVENT_REFRESH_NUM } from '../consts';
|
import { EVENT_REFRESH_NUM } from '../consts';
|
||||||
@@ -93,7 +93,7 @@ export async function startEvent(session: FrontendOrBackendSession) {
|
|||||||
let sid = session.get('sid');
|
let sid = session.get('sid');
|
||||||
let event = await refreshEvent(1, roleId, roleName, 0, []); // 刷新初始的一件
|
let event = await refreshEvent(1, roleId, roleName, 0, []); // 刷新初始的一件
|
||||||
if(event.length > 0) {
|
if(event.length > 0) {
|
||||||
await Role.setEventStatus(roleId, EVENT_STATUS.STARTING);
|
await RoleModel.setEventStatus(roleId, EVENT_STATUS.STARTING);
|
||||||
session.set('eventStatus', EVENT_STATUS.STARTING);
|
session.set('eventStatus', EVENT_STATUS.STARTING);
|
||||||
session.push('eventStatus', () => {});
|
session.push('eventStatus', () => {});
|
||||||
pushEventMsg(sid, roleId, { event }); // 推送
|
pushEventMsg(sid, roleId, { event }); // 推送
|
||||||
@@ -167,7 +167,7 @@ export async function refreshEvent(num: number, roleId: string, roleName: string
|
|||||||
|
|
||||||
let event = new Array();
|
let event = new Array();
|
||||||
let dicEvent = gameData.eventList.filter(cur => cur.movePointArray && cur.movePointArray.length > 0);
|
let dicEvent = gameData.eventList.filter(cur => cur.movePointArray && cur.movePointArray.length > 0);
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
dicEvent = dicEvent.filter(cur => { // 筛选适合等级
|
dicEvent = dicEvent.filter(cur => { // 筛选适合等级
|
||||||
let { suitLevel, previousGk } = cur;
|
let { suitLevel, previousGk } = cur;
|
||||||
return suitLevel.min <= role.lv && suitLevel.max >= role.lv && checkPreviousGk(previousGk, role.warStar)
|
return suitLevel.min <= role.lv && suitLevel.max >= role.lv && checkPreviousGk(previousGk, role.warStar)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
import { ExpeditionPointModel } from '../db/ExpeditionPoint';
|
import { ExpeditionPointModel } from '../db/ExpeditionPoint';
|
||||||
import Role from '../db/Role';
|
import Role, { RoleModel } from '../db/Role';
|
||||||
import { shouldRefresh, getRandSingleEelm } from '../pubUtils/util';
|
import { shouldRefresh, getRandSingleEelm } from '../pubUtils/util';
|
||||||
import { EXPEDITION_WAR_RECORD_STATUS, SYSTEM_OPEN_ID } from '../consts';
|
import { EXPEDITION_WAR_RECORD_STATUS, SYSTEM_OPEN_ID } from '../consts';
|
||||||
import { ExpeditionWarRecordModel } from '../db/ExpeditionWarRecord';
|
import { ExpeditionWarRecordModel } from '../db/ExpeditionWarRecord';
|
||||||
@@ -19,7 +19,7 @@ import { checkSystemIsOpen } from './roleService';
|
|||||||
*/
|
*/
|
||||||
export async function getExpeditionStatus(roleId: string, roleName: string, isEntry = false) {
|
export async function getExpeditionStatus(roleId: string, roleName: string, isEntry = false) {
|
||||||
// 重置次数
|
// 重置次数
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if(!role.hasInit) return false;
|
if(!role.hasInit) return false;
|
||||||
if(isEntry && !checkSystemIsOpen(role, SYSTEM_OPEN_ID.EXPEDITION)) return false
|
if(isEntry && !checkSystemIsOpen(role, SYSTEM_OPEN_ID.EXPEDITION)) return false
|
||||||
// 获取远征关卡状态
|
// 获取远征关卡状态
|
||||||
@@ -132,7 +132,7 @@ export async function matchPlayers(roleId: string, scale: number, range: number,
|
|||||||
let min = myCe * scale * (1 - range/100);
|
let min = myCe * scale * (1 - range/100);
|
||||||
let max = myCe * scale * (1 + range/100);
|
let max = myCe * scale * (1 + range/100);
|
||||||
|
|
||||||
let resultRange = await Role.findByCeScale(min, max);
|
let resultRange = await RoleModel.findByCeScale(min, max);
|
||||||
resultRange = resultRange.filter(cur => cur.roleId != roleId);
|
resultRange = resultRange.filter(cur => cur.roleId != roleId);
|
||||||
if(resultRange.length > 0) {
|
if(resultRange.length > 0) {
|
||||||
let role = resultRange[0];
|
let role = resultRange[0];
|
||||||
@@ -217,7 +217,7 @@ export async function matchRobots(scale: number, myCe: number, robotCe: number,
|
|||||||
// 远征匹配系数表
|
// 远征匹配系数表
|
||||||
export async function getCEScaleAndRange(roleId: string, curDicExpedition: any) {
|
export async function getCEScaleAndRange(roleId: string, curDicExpedition: any) {
|
||||||
// 匹配,判断是不是新手期
|
// 匹配,判断是不是新手期
|
||||||
const role = await Role.findByRoleId(roleId);
|
const role = await RoleModel.findByRoleId(roleId);
|
||||||
let isNew = (role.expeditionHistoryResetCnt||0) <= 3;
|
let isNew = (role.expeditionHistoryResetCnt||0) <= 3;
|
||||||
|
|
||||||
let scale = isNew?curDicExpedition.CEScaleNew:curDicExpedition.CEScale;
|
let scale = isNew?curDicExpedition.CEScaleNew:curDicExpedition.CEScale;
|
||||||
@@ -228,7 +228,7 @@ export async function getCEScaleAndRange(roleId: string, curDicExpedition: any)
|
|||||||
// 远征累计点数获取
|
// 远征累计点数获取
|
||||||
export async function getPointRewardStatus(roleId: string, role?: Role) {
|
export async function getPointRewardStatus(roleId: string, role?: Role) {
|
||||||
if(!role) {
|
if(!role) {
|
||||||
role = await Role.findByRoleId(roleId);
|
role = await RoleModel.findByRoleId(roleId);
|
||||||
}
|
}
|
||||||
let {expeditionPoint = 0} = role;
|
let {expeditionPoint = 0} = role;
|
||||||
let dicExpeditionPoint = gameData.expeditionPoint;
|
let dicExpeditionPoint = gameData.expeditionPoint;
|
||||||
@@ -252,7 +252,7 @@ export async function getPointRewardStatus(roleId: string, role?: Role) {
|
|||||||
|
|
||||||
export async function getResetRemainCnt(curTime: Date, roleId: string, role?: Role, ) {
|
export async function getResetRemainCnt(curTime: Date, roleId: string, role?: Role, ) {
|
||||||
if(!role) {
|
if(!role) {
|
||||||
role = await Role.findByRoleId(roleId);
|
role = await RoleModel.findByRoleId(roleId);
|
||||||
}
|
}
|
||||||
|
|
||||||
let { expeditionResetCnt, expeditionResetRefTime } = role;
|
let { expeditionResetCnt, expeditionResetRefTime } = role;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { gameData, getDicFriendByLv } from "../pubUtils/data";
|
import { gameData, getDicFriendByLv } from "../pubUtils/data";
|
||||||
import Role, { RoleType } from "../db/Role";
|
import { RoleType, RoleModel } from "../db/Role";
|
||||||
import { FriendRelationType, Relation, FriendRelationModel } from "../db/FriendRelation";
|
import { FriendRelationType, Relation, FriendRelationModel } from "../db/FriendRelation";
|
||||||
import { getResStr, shouldRefresh } from "../pubUtils/util";
|
import { getResStr, shouldRefresh } from "../pubUtils/util";
|
||||||
import { STATUS, FRIEND_RELATION_TYPE, POPULATE_TYPE, FRIEND_DROP_TYPE } from "../consts";
|
import { STATUS, FRIEND_RELATION_TYPE, POPULATE_TYPE, FRIEND_DROP_TYPE } from "../consts";
|
||||||
@@ -91,7 +91,7 @@ export async function getApplyList(roleId: string) {
|
|||||||
result.push(param);
|
result.push(param);
|
||||||
}
|
}
|
||||||
let deleteCount = await FriendApplyModel.deleteApply(delApplyCodeList);
|
let deleteCount = await FriendApplyModel.deleteApply(delApplyCodeList);
|
||||||
await Role.increaseFriendApplyCnt(roleId, -1 * deleteCount, FRIEND.FRIEND_MANAGE_APPLICATION);
|
await RoleModel.increaseFriendApplyCnt(roleId, -1 * deleteCount, FRIEND.FRIEND_MANAGE_APPLICATION);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -135,11 +135,11 @@ export async function increaseFrdCnt(role1: RoleType, role2: RoleType, originalF
|
|||||||
let _dicFriend = getDicFriendByLv(_lv);
|
let _dicFriend = getDicFriendByLv(_lv);
|
||||||
if(_friendCnt >= _dicFriend.frdCnt) return getResStr(STATUS.FRIEND_THEY_CNT_MAX);
|
if(_friendCnt >= _dicFriend.frdCnt) return getResStr(STATUS.FRIEND_THEY_CNT_MAX);
|
||||||
|
|
||||||
let incMyFrdCnt = await Role.increaseFriendCnt(roleId, 1, dicFriend.frdCnt);
|
let incMyFrdCnt = await RoleModel.increaseFriendCnt(roleId, 1, dicFriend.frdCnt);
|
||||||
if(!incMyFrdCnt) return getResStr(STATUS.FRIEND_MY_CNT_MAX);
|
if(!incMyFrdCnt) return getResStr(STATUS.FRIEND_MY_CNT_MAX);
|
||||||
let incHisFrdCnt = await Role.increaseFriendCnt(_roleId, 1, _dicFriend.frdCnt);
|
let incHisFrdCnt = await RoleModel.increaseFriendCnt(_roleId, 1, _dicFriend.frdCnt);
|
||||||
if(!incHisFrdCnt) { // 回滚
|
if(!incHisFrdCnt) { // 回滚
|
||||||
await Role.increaseFriendCnt(roleId, -1, dicFriend.frdCnt);
|
await RoleModel.increaseFriendCnt(roleId, -1, dicFriend.frdCnt);
|
||||||
return getResStr(STATUS.FRIEND_THEY_CNT_MAX);
|
return getResStr(STATUS.FRIEND_THEY_CNT_MAX);
|
||||||
}
|
}
|
||||||
originalFriendCnt = incMyFrdCnt.friendCnt;
|
originalFriendCnt = incMyFrdCnt.friendCnt;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { ServerlistModel, ServerlistType } from "../../db/Serverlist";
|
import { ServerlistModel, ServerlistType } from "../../db/Serverlist";
|
||||||
import Role from "../../db/Role";
|
import { RoleModel } from "../../db/Role";
|
||||||
import { GUILDACTIVITY } from "../../pubUtils/dicParam";
|
import { GUILDACTIVITY } from "../../pubUtils/dicParam";
|
||||||
import { gameData, getCityActivityRewards } from "../../pubUtils/data";
|
import { gameData, getCityActivityRewards } from "../../pubUtils/data";
|
||||||
import { getCurDay, nowSeconds, getTimeFun, getZeroPoint } from "../../pubUtils/timeUtil";
|
import { getCurDay, nowSeconds, getTimeFun, getZeroPoint } from "../../pubUtils/timeUtil";
|
||||||
@@ -38,7 +38,7 @@ import { getCityActivityObj, getGateActivityObj, getRaceActivityObj } from "../m
|
|||||||
export async function setPreDayActiveData(servers: ServerlistType[]) {
|
export async function setPreDayActiveData(servers: ServerlistType[]) {
|
||||||
|
|
||||||
for (let server of servers) {
|
for (let server of servers) {
|
||||||
let roles = await Role.getActivePlayers(server.id);
|
let roles = await RoleModel.getActivePlayers(server.id);
|
||||||
let activePlayerCnt = roles.length;
|
let activePlayerCnt = roles.length;
|
||||||
let activePlayerCe = 0, activePlayers: ActivePlayer[] = [];
|
let activePlayerCe = 0, activePlayers: ActivePlayer[] = [];
|
||||||
let activeGuilds: GuildRecord[] = [];
|
let activeGuilds: GuildRecord[] = [];
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { gameData, getGuildActiveWeekReward, getGuildActiveByIdAndType, getGoodB
|
|||||||
import { GuildModel, GuildType, GuildUpdateParam } from "../db/Guild";
|
import { GuildModel, GuildType, GuildUpdateParam } from "../db/Guild";
|
||||||
import { deltaDays, resResult, shouldRefresh } from "../pubUtils/util";
|
import { deltaDays, resResult, shouldRefresh } from "../pubUtils/util";
|
||||||
import { STATUS, MAIL_TYPE, GUILD_AUTH, GUILD_JOB, REDIS_KEY, CHAT_SERVER, TASK_TYPE, COUNTER, GUILD_REC_TYPE, PUSH_ROUTE, WAR_TYPE, USER_GUILD_STATUS } from "../consts";
|
import { STATUS, MAIL_TYPE, GUILD_AUTH, GUILD_JOB, REDIS_KEY, CHAT_SERVER, TASK_TYPE, COUNTER, GUILD_REC_TYPE, PUSH_ROUTE, WAR_TYPE, USER_GUILD_STATUS } from "../consts";
|
||||||
import Role, { RoleType } from "../db/Role";
|
import { RoleModel, RoleType } from "../db/Role";
|
||||||
import { UserGuildModel, UserGuildType, WishGood } from "../db/UserGuild";
|
import { UserGuildModel, UserGuildType, WishGood } from "../db/UserGuild";
|
||||||
import { UserGuildApplyModel } from "../db/UserGuildApply";
|
import { UserGuildApplyModel } from "../db/UserGuildApply";
|
||||||
import { getZeroPointD, getZeroPointOfTime, getZeroPointOfTimeD, nowSeconds } from "../pubUtils/timeUtil";
|
import { getZeroPointD, getZeroPointOfTime, getZeroPointOfTimeD, nowSeconds } from "../pubUtils/timeUtil";
|
||||||
@@ -94,7 +94,7 @@ export async function joinGuild(code: string, guildName: string, lv: number, rol
|
|||||||
let res: any = await lockData(serverId, DATA_NAME.JOIN_GUILD, code);// 加锁
|
let res: any = await lockData(serverId, DATA_NAME.JOIN_GUILD, code);// 加锁
|
||||||
if (!!res.err) return { status: -1, resResult: resResult(STATUS.REDLOCK_ERR) };
|
if (!!res.err) return { status: -1, resResult: resResult(STATUS.REDLOCK_ERR) };
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if (role.hasGuild) {
|
if (role.hasGuild) {
|
||||||
res.releaseCallback();//解锁
|
res.releaseCallback();//解锁
|
||||||
return { status: -1, resResult: resResult(STATUS.GUILD_HAS_JOIN) };
|
return { status: -1, resResult: resResult(STATUS.GUILD_HAS_JOIN) };
|
||||||
@@ -113,7 +113,7 @@ export async function joinGuild(code: string, guildName: string, lv: number, rol
|
|||||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, guild.code, [{ field: 'guildCe', value: guild.guildCe }])
|
await updateUserInfo(REDIS_KEY.GUILD_INFO, guild.code, [{ field: 'guildCe', value: guild.guildCe }])
|
||||||
}
|
}
|
||||||
|
|
||||||
role = await Role.joinGuild(roleId, code, guildName, false);
|
role = await RoleModel.joinGuild(roleId, code, guildName, false);
|
||||||
if (!role) {
|
if (!role) {
|
||||||
await GuildModel.notAddMember(code, roleId, role.ce);
|
await GuildModel.notAddMember(code, roleId, role.ce);
|
||||||
res.releaseCallback();//解锁
|
res.releaseCallback();//解锁
|
||||||
@@ -265,7 +265,7 @@ async function isIWishedInMyTodayQuitGuilds(roleId: string): Promise<Boolean> {
|
|||||||
* @param {string} roleId
|
* @param {string} roleId
|
||||||
*/
|
*/
|
||||||
export async function canWishToday(roleId: string): Promise<Boolean> {
|
export async function canWishToday(roleId: string): Promise<Boolean> {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if (!role) {
|
if (!role) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import { sendMailByContent, sendMailToLeagueByContent } from "../mailService";
|
|||||||
import { GVGCityAreaPointModel } from "../../db/GVGCityAreaPoint";
|
import { GVGCityAreaPointModel } from "../../db/GVGCityAreaPoint";
|
||||||
import { addCityGuardMessage } from "./gvgRecService";
|
import { addCityGuardMessage } from "./gvgRecService";
|
||||||
import { GVGUserDataModel } from "../../db/GVGUserData";
|
import { GVGUserDataModel } from "../../db/GVGUserData";
|
||||||
import Role from "../../db/Role";
|
import { RoleModel } from "../../db/Role";
|
||||||
import { getFightTimeByPeriod } from "./gvgFightService";
|
import { getFightTimeByPeriod } from "./gvgFightService";
|
||||||
import { getRandSingleEelm } from "../../pubUtils/util";
|
import { getRandSingleEelm } from "../../pubUtils/util";
|
||||||
import { HeroModel, HeroType } from "../../db/Hero";
|
import { HeroModel, HeroType } from "../../db/Hero";
|
||||||
@@ -186,7 +186,7 @@ export async function refreshTeams(configId: number, groupKey: string, roleId: s
|
|||||||
for(let team of oldTeams) {
|
for(let team of oldTeams) {
|
||||||
if(team.configId != configId || (hasConfirm && team.confirmConfigId != configId)) {
|
if(team.configId != configId || (hasConfirm && team.confirmConfigId != configId)) {
|
||||||
let { teamCode, maxDurability, lineup } = team;
|
let { teamCode, maxDurability, lineup } = team;
|
||||||
let { lv, title, roleName, guildCode } = await Role.findByRoleId(roleId, 'lv title roleName guildCode');
|
let { lv, title, roleName, guildCode } = await RoleModel.findByRoleId(roleId, 'lv title roleName guildCode');
|
||||||
let heroes = await HeroModel.findByHidRange(lineup.map(hero => hero.actorId), roleId);
|
let heroes = await HeroModel.findByHidRange(lineup.map(hero => hero.actorId), roleId);
|
||||||
let { newLineup, newLineupCe } = await generNewLineup(roleId, heroes, lineup.map(({ actorId, dataId, outIndex }) => ({ actorId, dataId, order: outIndex })));
|
let { newLineup, newLineupCe } = await generNewLineup(roleId, heroes, lineup.map(({ actorId, dataId, outIndex }) => ({ actorId, dataId, order: outIndex })));
|
||||||
let addUpdate = hasConfirm? { confirmConfigId: configId }: {};
|
let addUpdate = hasConfirm? { confirmConfigId: configId }: {};
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ import { GVGVestigeRankModel, GVGVestigeRankType, GVGVestigeRankUpdate } from ".
|
|||||||
import { GVGVestigeRecType } from "../../db/GVGVestigeRec";
|
import { GVGVestigeRecType } from "../../db/GVGVestigeRec";
|
||||||
import { GVGVestigeSumRankModel, GVGVestigeSumRankType } from "../../db/GVGVestigeSumRank";
|
import { GVGVestigeSumRankModel, GVGVestigeSumRankType } from "../../db/GVGVestigeSumRank";
|
||||||
import { HeroModel, HeroType } from "../../db/Hero";
|
import { HeroModel, HeroType } from "../../db/Hero";
|
||||||
import Role from "../../db/Role";
|
import { RoleModel } from "../../db/Role";
|
||||||
import { OppDetailData, OppPlayerHeroInfo, OppPlayerInfo } from "../../domain/gvgField/gvgDb";
|
import { OppDetailData, OppPlayerHeroInfo, OppPlayerInfo } from "../../domain/gvgField/gvgDb";
|
||||||
import { GVGVestigeOppPlayer } from "../../domain/gvgField/returnData";
|
import { GVGVestigeOppPlayer } from "../../domain/gvgField/returnData";
|
||||||
import { KeyNameParam, LeagueRankInfo, myIdInter, RoleRankInfo } from "../../domain/rank";
|
import { KeyNameParam, LeagueRankInfo, myIdInter, RoleRankInfo } from "../../domain/rank";
|
||||||
@@ -121,7 +121,7 @@ export async function getOppPlayerByRanks(serverId: number, groupKey: string, ve
|
|||||||
let serverNames = await getAllServerName();
|
let serverNames = await getAllServerName();
|
||||||
let opps = await GVGVestigeRankModel.findByRanks(groupKey, vestigeId, ranks);
|
let opps = await GVGVestigeRankModel.findByRanks(groupKey, vestigeId, ranks);
|
||||||
let roleIds = opps.map(cur => cur.roleId);
|
let roleIds = opps.map(cur => cur.roleId);
|
||||||
let roles = await Role.findByRoleIds(roleIds, 'roleId roleName head frame spine heads frames spines title lv guildName serverId updatedAt')
|
let roles = await RoleModel.findByRoleIds(roleIds, 'roleId roleName head frame spine heads frames spines title lv guildName serverId updatedAt')
|
||||||
let dicRankMap = gameData.gvgVestige.get(vestigeId);
|
let dicRankMap = gameData.gvgVestige.get(vestigeId);
|
||||||
if(!dicRankMap) return [];
|
if(!dicRankMap) return [];
|
||||||
let result: GVGVestigeOppPlayer[] = [];
|
let result: GVGVestigeOppPlayer[] = [];
|
||||||
@@ -233,7 +233,7 @@ export async function generateDefenseInfo(roleId: string, vestigeId: number, ran
|
|||||||
if(!playerVestigeData) return null;
|
if(!playerVestigeData) return null;
|
||||||
let lineup = playerVestigeData.lineup||[];
|
let lineup = playerVestigeData.lineup||[];
|
||||||
let hids = lineup.map(cur => cur.actorId);
|
let hids = lineup.map(cur => cur.actorId);
|
||||||
let role = await Role.findByRoleId(playerVestigeData.roleId, 'roleId roleName heads head frames frame spines spine title lv');
|
let role = await RoleModel.findByRoleId(playerVestigeData.roleId, 'roleId roleName heads head frames frame spines spine title lv');
|
||||||
let heroes = await HeroModel.findByHidRange(hids, playerVestigeData.roleId, 'hid skinId lv star colorStar quality ce');
|
let heroes = await HeroModel.findByHidRange(hids, playerVestigeData.roleId, 'hid skinId lv star colorStar quality ce');
|
||||||
let league = await GVGLeagueModel.findByCode(playerVestigeData.leagueCode);
|
let league = await GVGLeagueModel.findByCode(playerVestigeData.leagueCode);
|
||||||
|
|
||||||
@@ -245,7 +245,7 @@ export async function generateDefenseInfo(roleId: string, vestigeId: number, ran
|
|||||||
}
|
}
|
||||||
|
|
||||||
export async function generateAttackInfo(roleId: string, league: GVGLeagueType, rank: number) {
|
export async function generateAttackInfo(roleId: string, league: GVGLeagueType, rank: number) {
|
||||||
let role = await Role.findByRoleId(roleId, 'roleId roleName heads head frames frame spines spine title lv');
|
let role = await RoleModel.findByRoleId(roleId, 'roleId roleName heads head frames frame spines spine title lv');
|
||||||
let info = new OppPlayerInfo();
|
let info = new OppPlayerInfo();
|
||||||
info.initByPlayer(rank, role, league, false);
|
info.initByPlayer(rank, role, league, false);
|
||||||
return info;
|
return info;
|
||||||
@@ -342,7 +342,7 @@ export async function getMyVestigeRank(configId: number, groupKey: string, vesti
|
|||||||
|
|
||||||
let myVestigeRank = await GVGVestigeRankModel.findByRole(vestigeId, roleId); // 我在这个遗迹的排名
|
let myVestigeRank = await GVGVestigeRankModel.findByRole(vestigeId, roleId); // 我在这个遗迹的排名
|
||||||
if(!myVestigeRank) {
|
if(!myVestigeRank) {
|
||||||
let role = await Role.findByRoleId(roleId, 'roleId guildCode');
|
let role = await RoleModel.findByRoleId(roleId, 'roleId guildCode');
|
||||||
let oppRanks = refreshVestigeOppRanks(-1);
|
let oppRanks = refreshVestigeOppRanks(-1);
|
||||||
if(!myLeague) {
|
if(!myLeague) {
|
||||||
myLeague = await GVGLeagueModel.findLeagueByGuild(role.guildCode);
|
myLeague = await GVGLeagueModel.findLeagueByGuild(role.guildCode);
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { ArtifactModel } from "../db/Artifact";
|
|||||||
import { HeroType } from "../db/Hero";
|
import { HeroType } from "../db/Hero";
|
||||||
import { LadderMatchModel, LadderMatchType, LadderUpdateInter } from "../db/LadderMatch";
|
import { LadderMatchModel, LadderMatchType, LadderUpdateInter } from "../db/LadderMatch";
|
||||||
import { LadderMatchRecModel, LadderMatchRecType } from "../db/LadderMatchRec";
|
import { LadderMatchRecModel, LadderMatchRecType } from "../db/LadderMatchRec";
|
||||||
import Role, { RoleType } from "../db/Role";
|
import { RoleModel, RoleType } from "../db/Role";
|
||||||
import { LadderDataReturn, LadderDefense, LadderOppDetailReturn, LadderOppPlayerHeroInfo, LadderOppPlayerInDB, LadderOppPlayerInfo, LadderOppPlayerReturn } from "../domain/battleField/ladder";
|
import { LadderDataReturn, LadderDefense, LadderOppDetailReturn, LadderOppPlayerHeroInfo, LadderOppPlayerInDB, LadderOppPlayerInfo, LadderOppPlayerReturn } from "../domain/battleField/ladder";
|
||||||
import { RoleAndGuildRankInfo, RoleRankInfo } from "../domain/rank";
|
import { RoleAndGuildRankInfo, RoleRankInfo } from "../domain/rank";
|
||||||
import { gameData, getDicLadderMatchByMyRank, getLadderRankReward } from "../pubUtils/data";
|
import { gameData, getDicLadderMatchByMyRank, getLadderRankReward } from "../pubUtils/data";
|
||||||
@@ -56,7 +56,7 @@ function getSingleBuyCost(buyCnt: number) {
|
|||||||
export async function getLadderData(roleId: string, needOppPlayer: boolean) {
|
export async function getLadderData(roleId: string, needOppPlayer: boolean) {
|
||||||
let ladderData = await LadderMatchModel.findByRoleId(roleId);
|
let ladderData = await LadderMatchModel.findByRoleId(roleId);
|
||||||
if(!ladderData) {
|
if(!ladderData) {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
ladderData = await LadderMatchModel.createLadder({ serverId: role.serverId, roleId: role.roleId, role: role._id });
|
ladderData = await LadderMatchModel.createLadder({ serverId: role.serverId, roleId: role.roleId, role: role._id });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
import { HeroModel, HeroType } from '../db/Hero';
|
import { HeroModel, HeroType } from '../db/Hero';
|
||||||
import Role, { RoleType, WarCount } from '../db/Role'
|
import Role, { RoleModel, RoleType, WarCount } from '../db/Role'
|
||||||
import { getLvByExp, getExpByLv, gameData, getDicApByLv } from '../pubUtils/data';
|
import { getLvByExp, getExpByLv, gameData, getDicApByLv } from '../pubUtils/data';
|
||||||
import { updateRoleOnlineInfo, updateUserInfo } from './redisService';
|
import { updateRoleOnlineInfo, updateUserInfo } from './redisService';
|
||||||
// import { switchOnFunc } from './funcSwitchService';
|
// import { switchOnFunc } from './funcSwitchService';
|
||||||
@@ -27,14 +27,14 @@ export async function roleLevelup(type: KING_EXP_RATIO_TYPE, roleId: string, kin
|
|||||||
const sid = session.get('sid');
|
const sid = session.get('sid');
|
||||||
const ip = session.get('ip');
|
const ip = session.get('ip');
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let { lv = 1, exp = 0 } = role;
|
let { lv = 1, exp = 0 } = role;
|
||||||
let canGetExp = lv < gameData.maxPlayerLv.max; // 当主公超过最大级后,挑战结算不再获得经验值
|
let canGetExp = lv < gameData.maxPlayerLv.max; // 当主公超过最大级后,挑战结算不再获得经验值
|
||||||
let ratio = gameData.kingExpRaio.get(lv)?.get(type)||0;
|
let ratio = gameData.kingExpRaio.get(lv)?.get(type)||0;
|
||||||
let newExp = canGetExp ? exp + Math.floor(kingExp * ratio) : exp;
|
let newExp = canGetExp ? exp + Math.floor(kingExp * ratio) : exp;
|
||||||
let newLv = getLvByExp(newExp);
|
let newLv = getLvByExp(newExp);
|
||||||
|
|
||||||
role = await Role.levelup(roleId, newLv, newExp);
|
role = await RoleModel.levelup(roleId, newLv, newExp);
|
||||||
if (newLv > lv) { // 升级
|
if (newLv > lv) { // 升级
|
||||||
// await switchOnFunc(roleId, FUNC_OPT_TYPE.LEVEL_UP, newLv, session);
|
// await switchOnFunc(roleId, FUNC_OPT_TYPE.LEVEL_UP, newLv, session);
|
||||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'lv', value: newLv }]);
|
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'lv', value: newLv }]);
|
||||||
@@ -211,7 +211,7 @@ export async function checkWarCountAndInc(warId: number, inc: number, role: Role
|
|||||||
let dicWar = gameData.war.get(warId);
|
let dicWar = gameData.war.get(warId);
|
||||||
let max = dicWar.warType == WAR_TYPE.NORMAL? GK_MAIN.GK_MAIN_SWEEP_TIMES: GK_MAINELITE.GK_MAINELITE_SWEEP_TIMES;
|
let max = dicWar.warType == WAR_TYPE.NORMAL? GK_MAIN.GK_MAIN_SWEEP_TIMES: GK_MAINELITE.GK_MAINELITE_SWEEP_TIMES;
|
||||||
if(needRefresh && shouldRefresh(refWarCount, new Date())) {
|
if(needRefresh && shouldRefresh(refWarCount, new Date())) {
|
||||||
let role = await Role.updateRoleInfo(roleId, { refWarCount: new Date(), warCount: [] });
|
let role = await RoleModel.updateRoleInfo(roleId, { refWarCount: new Date(), warCount: [] });
|
||||||
warCount = role.warCount;
|
warCount = role.warCount;
|
||||||
}
|
}
|
||||||
let curWarCount = warCount.find(cur => cur.warId == warId);
|
let curWarCount = warCount.find(cur => cur.warId == warId);
|
||||||
@@ -227,7 +227,7 @@ export async function checkWarCountAndInc(warId: number, inc: number, role: Role
|
|||||||
} else {
|
} else {
|
||||||
warCount.push({ warId, count: inc });
|
warCount.push({ warId, count: inc });
|
||||||
}
|
}
|
||||||
await Role.updateRoleInfo(roleId, { warCount });
|
await RoleModel.updateRoleInfo(roleId, { warCount });
|
||||||
}
|
}
|
||||||
return resResult(STATUS.SUCCESS);
|
return resResult(STATUS.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { UserOrderModel, UserOrderModelType } from '../db/UserOrder';
|
|||||||
import { ACTIVITY_TYPE, DEBUG_PRICE, MAIL_TYPE, ORDER_STATE, PAY_TYPE, PUSH_ROUTE, REFUND_PRICE_TO_GOLD, STATUS, TASK_TYPE, TA_EVENT, TA_USERSET_TYPE } from '../consts';
|
import { ACTIVITY_TYPE, DEBUG_PRICE, MAIL_TYPE, ORDER_STATE, PAY_TYPE, PUSH_ROUTE, REFUND_PRICE_TO_GOLD, STATUS, TASK_TYPE, TA_EVENT, TA_USERSET_TYPE } from '../consts';
|
||||||
import { dicRMB } from '../pubUtils/dictionary/DicRMB';
|
import { dicRMB } from '../pubUtils/dictionary/DicRMB';
|
||||||
import { makeYuanbaoShopReward } from './activity/yuanbaoService';
|
import { makeYuanbaoShopReward } from './activity/yuanbaoService';
|
||||||
import Role from '../db/Role';
|
import { RoleModel } from '../db/Role';
|
||||||
import { checkMonthlyTicket, makeMonthlyTicketReward } from './activity/monthlyTicketService';
|
import { checkMonthlyTicket, makeMonthlyTicketReward } from './activity/monthlyTicketService';
|
||||||
import { checkSignInCanBuy, makeSignInVIP } from './activity/signInService';
|
import { checkSignInCanBuy, makeSignInVIP } from './activity/signInService';
|
||||||
import { checkDailyRMBGifts, makeDailyRMBGiftsReward } from './activity/dailyRMBGiftsService';
|
import { checkDailyRMBGifts, makeDailyRMBGiftsReward } from './activity/dailyRMBGiftsService';
|
||||||
@@ -127,7 +127,7 @@ export async function makeOrder(orderInfo: UserOrderModelType, sid: string) {
|
|||||||
let payType = orderInfo.payType;//支付类型
|
let payType = orderInfo.payType;//支付类型
|
||||||
let roleId = orderInfo.roleId;//角色
|
let roleId = orderInfo.roleId;//角色
|
||||||
|
|
||||||
const roleInfo = await Role.increaseTotalPay(roleId, price);
|
const roleInfo = await RoleModel.increaseTotalPay(roleId, price);
|
||||||
|
|
||||||
let rewardResult: any = { code: 0, data: null };
|
let rewardResult: any = { code: 0, data: null };
|
||||||
|
|
||||||
@@ -423,7 +423,7 @@ export async function refundOrderFromRedisPub(message: string) {
|
|||||||
|
|
||||||
let price = order.price;
|
let price = order.price;
|
||||||
let refundGold = price * REFUND_PRICE_TO_GOLD;
|
let refundGold = price * REFUND_PRICE_TO_GOLD;
|
||||||
let role = await Role.incRoleInfo(order.roleId, { gold: -refundGold }, {});
|
let role = await RoleModel.incRoleInfo(order.roleId, { gold: -refundGold }, {});
|
||||||
let onlineUser = await getRoleOnlineInfo(order.roleId);
|
let onlineUser = await getRoleOnlineInfo(order.roleId);
|
||||||
let sid = onlineUser.sid;
|
let sid = onlineUser.sid;
|
||||||
sendMessageToUserWithSuc(order.roleId, PUSH_ROUTE.PLAYER_DATA_CHANGE, { gold: role.gold }, sid);
|
sendMessageToUserWithSuc(order.roleId, PUSH_ROUTE.PLAYER_DATA_CHANGE, { gold: role.gold }, sid);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { DEBUG_PRICE, SDK_37_CONST, STATUS } from "../../consts";
|
import { DEBUG_PRICE, SDK_37_CONST, STATUS } from "../../consts";
|
||||||
import Role from "../../db/Role";
|
import { RoleModel } from "../../db/Role";
|
||||||
import { UserModel } from "../../db/User";
|
import { UserModel } from "../../db/User";
|
||||||
import { LoginValidateData37 } from "../../domain/sdk";
|
import { LoginValidateData37 } from "../../domain/sdk";
|
||||||
import { DicRMB } from "../../pubUtils/dictionary/DicRMB";
|
import { DicRMB } from "../../pubUtils/dictionary/DicRMB";
|
||||||
@@ -18,7 +18,7 @@ import { gameData } from "../../pubUtils/data";
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export async function applyOrder37(localOrderID: string, roleId: string, productInfo: DicRMB) {
|
export async function applyOrder37(localOrderID: string, roleId: string, productInfo: DicRMB) {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let user = await UserModel.findUserByUid(role.userInfo.uid);
|
let user = await UserModel.findUserByUid(role.userInfo.uid);
|
||||||
if(!user || !user.channelInfo || !(<LoginValidateData37>user.channelInfo).uid)
|
if(!user || !user.channelInfo || !(<LoginValidateData37>user.channelInfo).uid)
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
import { EPlace, HeroModel, HeroType, HeroUpdate } from '../db/Hero';
|
import { EPlace, HeroModel, HeroType, HeroUpdate } from '../db/Hero';
|
||||||
|
|
||||||
import Role, { RoleUpdate, RoleType } from '../db/Role';
|
import { RoleUpdate, RoleType, RoleModel } from '../db/Role';
|
||||||
import { Rank } from './rankService';
|
import { Rank } from './rankService';
|
||||||
import { HERO_SYSTEM_TYPE, PUSH_ROUTE, REDIS_KEY } from '../consts';
|
import { HERO_SYSTEM_TYPE, PUSH_ROUTE, REDIS_KEY } from '../consts';
|
||||||
import { saveLadderDefCe, saveLadderDefCeByData, updateRoleOnlineInfo, updateUserInfo } from './redisService';
|
import { saveLadderDefCe, saveLadderDefCeByData, updateRoleOnlineInfo, updateUserInfo } from './redisService';
|
||||||
@@ -466,7 +466,7 @@ export async function calculateCes(type: HERO_SYSTEM_TYPE, roleId: string, serve
|
|||||||
}
|
}
|
||||||
|
|
||||||
roleCe = await RoleCeModel.updateRoleCe(roleId, roleCeUpdate);
|
roleCe = await RoleCeModel.updateRoleCe(roleId, roleCeUpdate);
|
||||||
let role = await Role.incRoleInfo(roleId, { ...roleIncUpdate, ce: roleInc }, { ...roleUpdate, topLineup, topLineupCe });
|
let role = await RoleModel.incRoleInfo(roleId, { ...roleIncUpdate, ce: roleInc }, { ...roleUpdate, topLineup, topLineupCe });
|
||||||
let guild = await GuildModel.updateCe(roleId, roleInc); // 公会更新战力
|
let guild = await GuildModel.updateCe(roleId, roleInc); // 公会更新战力
|
||||||
|
|
||||||
saveCeChangeLog(role, roleInc, role.ce, type, ceChangeTxt);
|
saveCeChangeLog(role, roleInc, role.ce, type, ceChangeTxt);
|
||||||
@@ -526,7 +526,7 @@ export async function getSumCe(roleId: string) {
|
|||||||
let roleCe = await RoleCeModel.findByRoleId(roleId);
|
let roleCe = await RoleCeModel.findByRoleId(roleId);
|
||||||
if(roleCe && roleCe.historyLineupCe) return roleCe.historyLineupCe;
|
if(roleCe && roleCe.historyLineupCe) return roleCe.historyLineupCe;
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
return role.topLineupCe||0;
|
return role.topLineupCe||0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import { isSkipEncode, needPushMsg } from "../pubUtils/sdkUtil";
|
|||||||
import { isDevelopEnv } from "./utilService";
|
import { isDevelopEnv } from "./utilService";
|
||||||
import { gameData } from "../pubUtils/data";
|
import { gameData } from "../pubUtils/data";
|
||||||
import { pushMsg37 } from "./sdkService";
|
import { pushMsg37 } from "./sdkService";
|
||||||
import Role, { RoleType } from "../db/Role";
|
import { RoleModel, RoleType } from "../db/Role";
|
||||||
import { nowSeconds } from "../pubUtils/timeUtil";
|
import { nowSeconds } from "../pubUtils/timeUtil";
|
||||||
import { GVGLeagueModel } from "../db/GVGLeague";
|
import { GVGLeagueModel } from "../db/GVGLeague";
|
||||||
import { resolve } from "bluebird";
|
import { resolve } from "bluebird";
|
||||||
@@ -333,7 +333,7 @@ async function getHasGuildPlayers() {
|
|||||||
let uids: number[] = [], players: RoleType[] = [];
|
let uids: number[] = [], players: RoleType[] = [];
|
||||||
let createdAt: Date;
|
let createdAt: Date;
|
||||||
while(!createdAt || players.length > 0) {
|
while(!createdAt || players.length > 0) {
|
||||||
players = await Role.findHasGuildPlayers(createdAt);
|
players = await RoleModel.findHasGuildPlayers(createdAt);
|
||||||
if(players.length == 0) break;
|
if(players.length == 0) break;
|
||||||
createdAt = players[players.length -1].createdAt;
|
createdAt = players[players.length -1].createdAt;
|
||||||
players.forEach(player => {
|
players.forEach(player => {
|
||||||
@@ -351,7 +351,7 @@ async function getHasLeaguePlayers() {
|
|||||||
let len = roleIds.length;
|
let len = roleIds.length;
|
||||||
for(let i = 0; i < Math.ceil(len/1000); i++) {
|
for(let i = 0; i < Math.ceil(len/1000); i++) {
|
||||||
let curRoleIds = roleIds.slice(i * 1000, i * 1000 + 1000);
|
let curRoleIds = roleIds.slice(i * 1000, i * 1000 + 1000);
|
||||||
let players = await Role.findByRoleIds(curRoleIds, 'userInfo.channelInfo isClosePush');
|
let players = await RoleModel.findByRoleIds(curRoleIds, 'userInfo.channelInfo isClosePush');
|
||||||
players.forEach(player => {
|
players.forEach(player => {
|
||||||
if(player.userInfo && player.userInfo.channelInfo && player.quitTime != player.loginTime && !player.isClosePush) uids.push(player.userInfo.channelInfo.uid);
|
if(player.userInfo && player.userInfo.channelInfo && player.quitTime != player.loginTime && !player.isClosePush) uids.push(player.userInfo.channelInfo.uid);
|
||||||
});
|
});
|
||||||
@@ -364,7 +364,7 @@ async function getAfkPlayers() {
|
|||||||
let uids: number[] = [], players: RoleType[] = [];
|
let uids: number[] = [], players: RoleType[] = [];
|
||||||
let createdAt: Date;
|
let createdAt: Date;
|
||||||
while(!createdAt || players.length > 0) {
|
while(!createdAt || players.length > 0) {
|
||||||
players = await Role.findAfkPlayers(createdAt);
|
players = await RoleModel.findAfkPlayers(createdAt);
|
||||||
if(players.length == 0) break;
|
if(players.length == 0) break;
|
||||||
createdAt = players[players.length -1].createdAt;
|
createdAt = players[players.length -1].createdAt;
|
||||||
players.forEach(player => {
|
players.forEach(player => {
|
||||||
@@ -379,7 +379,7 @@ async function getActivePlayers() {
|
|||||||
let uids: number[] = [], players: RoleType[] = [];
|
let uids: number[] = [], players: RoleType[] = [];
|
||||||
let createdAt: Date;
|
let createdAt: Date;
|
||||||
while(!createdAt || players.length > 0) {
|
while(!createdAt || players.length > 0) {
|
||||||
players = await Role.findActivePlayers(createdAt);
|
players = await RoleModel.findActivePlayers(createdAt);
|
||||||
if(players.length == 0) break;
|
if(players.length == 0) break;
|
||||||
createdAt = players[players.length -1].createdAt;
|
createdAt = players[players.length -1].createdAt;
|
||||||
players.forEach(player => {
|
players.forEach(player => {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { KeyName, KeyNameParam, RankParam, GuildRankParam, RoleRankInfo, LineupParam, myIdInter, GeneralRankParam, ValueConfig, GuildRankInfo, RoleAndGuildRankInfo, LeagueRankParam, LeagueRankInfo } from "../domain/rank";
|
import { KeyName, KeyNameParam, RankParam, GuildRankParam, RoleRankInfo, LineupParam, myIdInter, GeneralRankParam, ValueConfig, GuildRankInfo, RoleAndGuildRankInfo, LeagueRankParam, LeagueRankInfo } from "../domain/rank";
|
||||||
import { getInfoKeyByRedisKey, ROLE_SELECT, GUILD_SELECT, REDIS_KEY, HERO_SELECT, COMPOSE_FIELD_TYPE, KEY_TO_COMPOSE_FIELD, getRedisKeyByRankType, COUNTER, RANK_TYPE, PUSH_ROUTE } from "../consts";
|
import { getInfoKeyByRedisKey, ROLE_SELECT, GUILD_SELECT, REDIS_KEY, HERO_SELECT, COMPOSE_FIELD_TYPE, KEY_TO_COMPOSE_FIELD, getRedisKeyByRankType, COUNTER, RANK_TYPE, PUSH_ROUTE } from "../consts";
|
||||||
import { redisClient, delKeys, saveLadderDefCeByData } from "./redisService";
|
import { redisClient, delKeys, saveLadderDefCeByData } from "./redisService";
|
||||||
import Role, { RoleType } from "../db/Role";
|
import { RoleType, RoleModel } from "../db/Role";
|
||||||
import { GuildType, GuildModel } from "../db/Guild";
|
import { GuildType, GuildModel } from "../db/Guild";
|
||||||
import { HeroModel, HeroType, HeroUpdate } from "../db/Hero";
|
import { HeroModel, HeroType, HeroUpdate } from "../db/Hero";
|
||||||
import { PvpDefenseModel } from "../db/PvpDefense";
|
import { PvpDefenseModel } from "../db/PvpDefense";
|
||||||
@@ -285,7 +285,7 @@ export class Rank {
|
|||||||
|
|
||||||
if (infoKey == REDIS_KEY.USER_INFO) {
|
if (infoKey == REDIS_KEY.USER_INFO) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
||||||
if(!role) return;
|
if(!role) return;
|
||||||
}
|
}
|
||||||
let param = new RankParam(role);
|
let param = new RankParam(role);
|
||||||
@@ -306,7 +306,7 @@ export class Rank {
|
|||||||
await this.setUserInfo(infoKey, { leagueCode }, param);
|
await this.setUserInfo(infoKey, { leagueCode }, param);
|
||||||
} else if (infoKey == REDIS_KEY.TOP_LINEUP_INFO) {
|
} else if (infoKey == REDIS_KEY.TOP_LINEUP_INFO) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
||||||
if(!role) return;
|
if(!role) return;
|
||||||
}
|
}
|
||||||
let { topLineup = [] } = role;
|
let { topLineup = [] } = role;
|
||||||
@@ -333,7 +333,7 @@ export class Rank {
|
|||||||
}
|
}
|
||||||
} else if (infoKey == REDIS_KEY.DUNGEON_LINEUP) {
|
} else if (infoKey == REDIS_KEY.DUNGEON_LINEUP) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
||||||
if(!role) return;
|
if(!role) return;
|
||||||
}
|
}
|
||||||
let { dungeonWarId, dungeonHeroes } = role;
|
let { dungeonWarId, dungeonHeroes } = role;
|
||||||
@@ -353,7 +353,7 @@ export class Rank {
|
|||||||
}
|
}
|
||||||
} else if (infoKey == REDIS_KEY.SHOW_LINEUP) {
|
} else if (infoKey == REDIS_KEY.SHOW_LINEUP) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
||||||
if(!role) return;
|
if(!role) return;
|
||||||
}
|
}
|
||||||
let { showLineup, topLineup = [] } = role;
|
let { showLineup, topLineup = [] } = role;
|
||||||
@@ -491,7 +491,7 @@ export class Rank {
|
|||||||
let hasCurUser = await redisClient().hexistsAsync(this.infoKey, roleId);
|
let hasCurUser = await redisClient().hexistsAsync(this.infoKey, roleId);
|
||||||
if (!hasCurUser) {
|
if (!hasCurUser) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
||||||
}
|
}
|
||||||
param = new RoleRankInfo(role);
|
param = new RoleRankInfo(role);
|
||||||
param.setInfo(0, { roleId }, score, time);
|
param.setInfo(0, { roleId }, score, time);
|
||||||
@@ -594,7 +594,7 @@ export class Rank {
|
|||||||
let hasCurUser = await redisClient().hexistsAsync(this.infoKey, roleId);
|
let hasCurUser = await redisClient().hexistsAsync(this.infoKey, roleId);
|
||||||
if (!hasCurUser) {
|
if (!hasCurUser) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
||||||
}
|
}
|
||||||
param = new RoleRankInfo(role);
|
param = new RoleRankInfo(role);
|
||||||
param.setInfo(0, { roleId, hid }, score, time);
|
param.setInfo(0, { roleId, hid }, score, time);
|
||||||
@@ -622,7 +622,7 @@ export class Rank {
|
|||||||
let hasCurUser = await redisClient().hexistsAsync(extraKey, this.composeFields(extraKey, myId));
|
let hasCurUser = await redisClient().hexistsAsync(extraKey, this.composeFields(extraKey, myId));
|
||||||
if (!hasCurUser) {
|
if (!hasCurUser) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(myId.roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(myId.roleId, ROLE_SELECT.RANK, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
let { topLineup } = role;
|
let { topLineup } = role;
|
||||||
@@ -672,7 +672,7 @@ export class Rank {
|
|||||||
let hasCurUser = await redisClient().hexistsAsync(extraKey, this.composeFields(extraKey, myId));
|
let hasCurUser = await redisClient().hexistsAsync(extraKey, this.composeFields(extraKey, myId));
|
||||||
if (!hasCurUser) {
|
if (!hasCurUser) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(myId.roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(myId.roleId, ROLE_SELECT.RANK, true);
|
||||||
}
|
}
|
||||||
let { dungeonWarId, dungeonHeroes } = role;
|
let { dungeonWarId, dungeonHeroes } = role;
|
||||||
let cur = dungeonHeroes.find(cur => cur.battleId == dungeonWarId);
|
let cur = dungeonHeroes.find(cur => cur.battleId == dungeonWarId);
|
||||||
@@ -698,7 +698,7 @@ export class Rank {
|
|||||||
let hasCurUser = await redisClient().hexistsAsync(extraKey, this.composeFields(extraKey, myId));
|
let hasCurUser = await redisClient().hexistsAsync(extraKey, this.composeFields(extraKey, myId));
|
||||||
if (!hasCurUser) {
|
if (!hasCurUser) {
|
||||||
if (!role) {
|
if (!role) {
|
||||||
role = await Role.findByRoleId(myId.roleId, ROLE_SELECT.RANK, true);
|
role = await RoleModel.findByRoleId(myId.roleId, ROLE_SELECT.RANK, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
let { showLineup, topLineup = [] } = role;
|
let { showLineup, topLineup = [] } = role;
|
||||||
@@ -1063,7 +1063,7 @@ async function setRankFirst(rankFirstRec: RankFirstType) {
|
|||||||
export async function setRankRedisFromDb(type: string, args?: { serverId?: number, groupId?: number }) {
|
export async function setRankRedisFromDb(type: string, args?: { serverId?: number, groupId?: number }) {
|
||||||
if (type == REDIS_KEY.TOWER_RANK) {
|
if (type == REDIS_KEY.TOWER_RANK) {
|
||||||
let serverId = args.serverId;
|
let serverId = args.serverId;
|
||||||
let ranks = await Role.getRank('tower', serverId, ROLE_SELECT.RANK);
|
let ranks = await RoleModel.getRank('tower', serverId, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { serverId });
|
let r = new Rank(type, { serverId });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for (let role of ranks) {
|
for (let role of ranks) {
|
||||||
@@ -1112,7 +1112,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
}
|
}
|
||||||
} else if (type == REDIS_KEY.TOP_LINEUP_RANK) {
|
} else if (type == REDIS_KEY.TOP_LINEUP_RANK) {
|
||||||
let serverId = args.serverId;
|
let serverId = args.serverId;
|
||||||
let ranks = await Role.getRank('topLineup', serverId, ROLE_SELECT.RANK);
|
let ranks = await RoleModel.getRank('topLineup', serverId, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { serverId });
|
let r = new Rank(type, { serverId });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for (let role of ranks) {
|
for (let role of ranks) {
|
||||||
@@ -1129,7 +1129,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
// }
|
// }
|
||||||
} else if (type == REDIS_KEY.HERO_NUM_RANK) {
|
} else if (type == REDIS_KEY.HERO_NUM_RANK) {
|
||||||
let serverId = args.serverId;
|
let serverId = args.serverId;
|
||||||
let ranks = await Role.getRank('heroNum', serverId, ROLE_SELECT.RANK);
|
let ranks = await RoleModel.getRank('heroNum', serverId, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { serverId });
|
let r = new Rank(type, { serverId });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for (let role of ranks) {
|
for (let role of ranks) {
|
||||||
@@ -1137,7 +1137,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
}
|
}
|
||||||
} else if (type == REDIS_KEY.USER_LV) {
|
} else if (type == REDIS_KEY.USER_LV) {
|
||||||
let serverId = args.serverId;
|
let serverId = args.serverId;
|
||||||
let ranks = await Role.getRank('lv', serverId, ROLE_SELECT.RANK);
|
let ranks = await RoleModel.getRank('lv', serverId, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { serverId });
|
let r = new Rank(type, { serverId });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for (let role of ranks) {
|
for (let role of ranks) {
|
||||||
@@ -1145,7 +1145,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
}
|
}
|
||||||
} else if (type == REDIS_KEY.SUM_CE_RANK) {
|
} else if (type == REDIS_KEY.SUM_CE_RANK) {
|
||||||
let serverId = args.serverId;
|
let serverId = args.serverId;
|
||||||
let ranks = await Role.getRank('ce', serverId, ROLE_SELECT.RANK);
|
let ranks = await RoleModel.getRank('ce', serverId, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { serverId });
|
let r = new Rank(type, { serverId });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for (let role of ranks) {
|
for (let role of ranks) {
|
||||||
@@ -1153,7 +1153,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
}
|
}
|
||||||
} else if (type == REDIS_KEY.DUNGEON_RANK) {
|
} else if (type == REDIS_KEY.DUNGEON_RANK) {
|
||||||
let serverId = args.serverId;
|
let serverId = args.serverId;
|
||||||
let ranks = await Role.getRank('dungeon', serverId, ROLE_SELECT.RANK);
|
let ranks = await RoleModel.getRank('dungeon', serverId, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { serverId });
|
let r = new Rank(type, { serverId });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for (let role of ranks) {
|
for (let role of ranks) {
|
||||||
@@ -1161,7 +1161,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
}
|
}
|
||||||
} else if (type == REDIS_KEY.MAIN_RANK) {
|
} else if (type == REDIS_KEY.MAIN_RANK) {
|
||||||
let serverId = args.serverId;
|
let serverId = args.serverId;
|
||||||
let ranks = await Role.getRank('main', serverId, ROLE_SELECT.RANK);
|
let ranks = await RoleModel.getRank('main', serverId, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { serverId });
|
let r = new Rank(type, { serverId });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for (let role of ranks) {
|
for (let role of ranks) {
|
||||||
@@ -1169,7 +1169,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
}
|
}
|
||||||
} else if (type == REDIS_KEY.MAIN_ELITE_RANK) {
|
} else if (type == REDIS_KEY.MAIN_ELITE_RANK) {
|
||||||
let serverId = args.serverId;
|
let serverId = args.serverId;
|
||||||
let ranks = await Role.getRank('mainElite', serverId, ROLE_SELECT.RANK);
|
let ranks = await RoleModel.getRank('mainElite', serverId, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { serverId });
|
let r = new Rank(type, { serverId });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for (let role of ranks) {
|
for (let role of ranks) {
|
||||||
@@ -1213,7 +1213,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
} else if (type == REDIS_KEY.GVG_VESTIGE_MEMBER_ALL) {
|
} else if (type == REDIS_KEY.GVG_VESTIGE_MEMBER_ALL) {
|
||||||
let ranks = await GVGVestigeSumRankModel.findRankByGroupId();
|
let ranks = await GVGVestigeSumRankModel.findRankByGroupId();
|
||||||
for(let { _id: groupKey, arr, roleIds } of ranks) {
|
for(let { _id: groupKey, arr, roleIds } of ranks) {
|
||||||
let roles = await Role.findByRoleIds(roleIds, ROLE_SELECT.RANK);
|
let roles = await RoleModel.findByRoleIds(roleIds, ROLE_SELECT.RANK);
|
||||||
let r = new Rank(type, { groupKey, day: getDayKeyInfo() });
|
let r = new Rank(type, { groupKey, day: getDayKeyInfo() });
|
||||||
r.setIsInit(true);
|
r.setIsInit(true);
|
||||||
for(let { roleId, score, updatedAt } of arr) {
|
for(let { roleId, score, updatedAt } of arr) {
|
||||||
@@ -1240,7 +1240,7 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
|||||||
let ranks = await ActivityMiniGameModel.findRank();
|
let ranks = await ActivityMiniGameModel.findRank();
|
||||||
for(let { _id: { activityId, roundIndex }, roleIds, arr } of ranks) {
|
for(let { _id: { activityId, roundIndex }, roleIds, arr } of ranks) {
|
||||||
let r = new Rank(type, { activityId, roundIndex });
|
let r = new Rank(type, { activityId, roundIndex });
|
||||||
let roles = await Role.findByRoleIds(roleIds, ROLE_SELECT.RANK);
|
let roles = await RoleModel.findByRoleIds(roleIds, ROLE_SELECT.RANK);
|
||||||
for(let { roleId, score, updatedAt } of arr) {
|
for(let { roleId, score, updatedAt } of arr) {
|
||||||
let role = roles.find(cur => cur.roleId == roleId);
|
let role = roles.find(cur => cur.roleId == roleId);
|
||||||
if(role) await r.setRankWithRoleInfo(roleId, score, updatedAt.getTime(), role, false);
|
if(role) await r.setRankWithRoleInfo(roleId, score, updatedAt.getTime(), role, false);
|
||||||
@@ -1322,7 +1322,7 @@ export async function getRankInHandler(redisKey: REDIS_KEY, type: RANK_TYPE, key
|
|||||||
|
|
||||||
let { ranks, myRank } = await r.getRankListWithMyRank({ roleId, guildCode }, type != RANK_TYPE.LADDER);
|
let { ranks, myRank } = await r.getRankListWithMyRank({ roleId, guildCode }, type != RANK_TYPE.LADDER);
|
||||||
if (!myRank) {
|
if (!myRank) {
|
||||||
let role = await Role.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
let role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.RANK, true);
|
||||||
if (type == RANK_TYPE.TOP_LINTUP) {
|
if (type == RANK_TYPE.TOP_LINTUP) {
|
||||||
myRank = await r.generMyRankWithRole(roleId, role.topLineupCe, 0, role);
|
myRank = await r.generMyRankWithRole(roleId, role.topLineupCe, 0, role);
|
||||||
} else if (type == RANK_TYPE.TOP_HERO) {
|
} else if (type == RANK_TYPE.TOP_HERO) {
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ import { getRandSingleEelm, parseNumberList } from '../pubUtils/util';
|
|||||||
import { ActivityModel } from '../db/Activity';
|
import { ActivityModel } from '../db/Activity';
|
||||||
import { TimeLimitRankData } from '../domain/activityField/timeLimitRankField';
|
import { TimeLimitRankData } from '../domain/activityField/timeLimitRankField';
|
||||||
import { ActivityTimeLimitRankModel } from '../db/ActivityTimeLimitRank';
|
import { ActivityTimeLimitRankModel } from '../db/ActivityTimeLimitRank';
|
||||||
import Role, { RoleType } from '../db/Role';
|
import { RoleModel, RoleType } from '../db/Role';
|
||||||
import { GuildType } from '../db/Guild';
|
import { GuildType } from '../db/Guild';
|
||||||
import { ActivityGroupModel } from '../db/ActivityGroup';
|
import { ActivityGroupModel } from '../db/ActivityGroup';
|
||||||
import { LadderMatchModel, LadderMatchType } from '../db/LadderMatch';
|
import { LadderMatchModel, LadderMatchType } from '../db/LadderMatch';
|
||||||
@@ -433,7 +433,7 @@ export async function getRoleCreateTime(roleId: string, role?: RoleType) {
|
|||||||
if(onlineInfo.isOnline) {
|
if(onlineInfo.isOnline) {
|
||||||
return onlineInfo.createtime;
|
return onlineInfo.createtime;
|
||||||
} else {
|
} else {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
return role?.createTime||0;
|
return role?.createTime||0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { CURRENCY_TYPE, HANDLE_REWARD_TYPE, CURRENCY_BY_TYPE } from '../../consts';
|
import { CURRENCY_TYPE, HANDLE_REWARD_TYPE, CURRENCY_BY_TYPE } from '../../consts';
|
||||||
import Role, { RoleType } from '../../db/Role';
|
import { RoleModel, RoleType } from '../../db/Role';
|
||||||
import { ItemModel, ItemType } from '../../db/Item';
|
import { ItemModel, ItemType } from '../../db/Item';
|
||||||
import { ItemInter, RewardInter, } from '../../pubUtils/interface';
|
import { ItemInter, RewardInter, } from '../../pubUtils/interface';
|
||||||
import { gameData } from '../../pubUtils/data';
|
import { gameData } from '../../pubUtils/data';
|
||||||
@@ -120,7 +120,7 @@ export class CheckMeterial {
|
|||||||
private async decreaseGold(gold: { count: number }[]) {
|
private async decreaseGold(gold: { count: number }[]) {
|
||||||
|
|
||||||
if(!this.itemsIndb.has(this.goldId)) {
|
if(!this.itemsIndb.has(this.goldId)) {
|
||||||
let role = await Role.findByRoleId(this.roleId, 'gold coin');
|
let role = await RoleModel.findByRoleId(this.roleId, 'gold coin');
|
||||||
this.itemsIndb.set(this.goldId, role.gold);
|
this.itemsIndb.set(this.goldId, role.gold);
|
||||||
this.itemsIndb.set(this.coinId, role.coin);
|
this.itemsIndb.set(this.coinId, role.coin);
|
||||||
}
|
}
|
||||||
@@ -138,7 +138,7 @@ export class CheckMeterial {
|
|||||||
private async decreaseCoin(coin: number[]) {
|
private async decreaseCoin(coin: number[]) {
|
||||||
|
|
||||||
if(!this.itemsIndb.has(this.coinId)) {
|
if(!this.itemsIndb.has(this.coinId)) {
|
||||||
let role = await Role.findByRoleId(this.roleId, 'gold coin');
|
let role = await RoleModel.findByRoleId(this.roleId, 'gold coin');
|
||||||
this.itemsIndb.set(this.goldId, role.gold);
|
this.itemsIndb.set(this.goldId, role.gold);
|
||||||
this.itemsIndb.set(this.coinId, role.coin);
|
this.itemsIndb.set(this.coinId, role.coin);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { ITID, CONSUME_TYPE, ITEM_TABLE, CURRENCY_TYPE, MAIL_TYPE, HANDLE_REWARD_TYPE, HERO_SYSTEM_TYPE, CURRENCY_BY_TYPE, ITEM_CHANGE_REASON, TA_USERSET_TYPE, TA_EVENT, POP_UP_SHOP_CONDITION_TYPE, ROLE_SELECT, FIGURE_UNLOCK_CONDITION, PUSH_ROUTE, ACTIVITY_TYPE } from '../../consts';
|
import { ITID, CONSUME_TYPE, ITEM_TABLE, CURRENCY_TYPE, MAIL_TYPE, HANDLE_REWARD_TYPE, HERO_SYSTEM_TYPE, CURRENCY_BY_TYPE, ITEM_CHANGE_REASON, TA_USERSET_TYPE, TA_EVENT, POP_UP_SHOP_CONDITION_TYPE, ROLE_SELECT, FIGURE_UNLOCK_CONDITION, PUSH_ROUTE, ACTIVITY_TYPE } from '../../consts';
|
||||||
import { getDecimalCnt, getRandEelm, getRandEelmWithWeight, getRandValueByMinMax, } from '../../pubUtils/util';
|
import { getDecimalCnt, getRandEelm, getRandEelmWithWeight, getRandValueByMinMax, } from '../../pubUtils/util';
|
||||||
import Role, { RoleType } from '../../db/Role';
|
import { RoleModel, RoleType } from '../../db/Role';
|
||||||
import { setAp } from '../actionPointService';
|
import { setAp } from '../actionPointService';
|
||||||
import { ItemModel, } from '../../db/Item';
|
import { ItemModel, } from '../../db/Item';
|
||||||
import { ItemInter, } from '../../pubUtils/interface';
|
import { ItemInter, } from '../../pubUtils/interface';
|
||||||
@@ -38,7 +38,7 @@ export async function handleCost(roleId: string, sid: string, goods: Array<ItemI
|
|||||||
let resArtifacts: ArtifactModelType[] = [];
|
let resArtifacts: ArtifactModelType[] = [];
|
||||||
|
|
||||||
// 检查货币是否充足
|
// 检查货币是否充足
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if (gold.length > 0 || coin.length > 0) {
|
if (gold.length > 0 || coin.length > 0) {
|
||||||
let { gold: originGold, coin: originCoin } = role;
|
let { gold: originGold, coin: originCoin } = role;
|
||||||
for(let {count} of gold) { originGold -= count };
|
for(let {count} of gold) { originGold -= count };
|
||||||
@@ -127,7 +127,7 @@ export async function handleCost(roleId: string, sid: string, goods: Array<ItemI
|
|||||||
if (gold.length > 0 || coin.length > 0) {
|
if (gold.length > 0 || coin.length > 0) {
|
||||||
let costGold = gold.reduce((pre, cur) => pre + cur.count, 0);
|
let costGold = gold.reduce((pre, cur) => pre + cur.count, 0);
|
||||||
let costCoin = coin.reduce((pre, cur) => pre + cur, 0);
|
let costCoin = coin.reduce((pre, cur) => pre + cur, 0);
|
||||||
role = await Role.decreaseGoldAndCoin(roleId, gold, costCoin);
|
role = await RoleModel.decreaseGoldAndCoin(roleId, gold, costCoin);
|
||||||
sendMessageToUserWithSuc(roleId, PUSH_ROUTE.PLAYER_DATA_CHANGE, { gold: role.gold, coin: role.coin, totalCost: role.totalCost }, sid);
|
sendMessageToUserWithSuc(roleId, PUSH_ROUTE.PLAYER_DATA_CHANGE, { gold: role.gold, coin: role.coin, totalCost: role.totalCost }, sid);
|
||||||
|
|
||||||
if(costGold > 0) {
|
if(costGold > 0) {
|
||||||
@@ -150,7 +150,7 @@ export async function addItems(roleId: string, roleName: string, sid: string, go
|
|||||||
goods = filterGoods(goods, obj => obj.id, roleId, reason);
|
goods = filterGoods(goods, obj => obj.id, roleId, reason);
|
||||||
let { items, jewels, gold, coin, ap, skins, figures, artifacts, activityItems } = sortItems(goods, HANDLE_REWARD_TYPE.RECEIVE);
|
let { items, jewels, gold, coin, ap, skins, figures, artifacts, activityItems } = sortItems(goods, HANDLE_REWARD_TYPE.RECEIVE);
|
||||||
let showItems: { id: number, seqId?: number|string, count: number, isBag?: boolean, expireTime?: number }[] = [];
|
let showItems: { id: number, seqId?: number|string, count: number, isBag?: boolean, expireTime?: number }[] = [];
|
||||||
let role = await Role.findByRoleId(roleId, '-warCount -topLineup');
|
let role = await RoleModel.findByRoleId(roleId, '-warCount -topLineup');
|
||||||
// 1. 装备处理
|
// 1. 装备处理
|
||||||
if(jewels.length > 0) {
|
if(jewels.length > 0) {
|
||||||
let { jewelCount = 0 } = role;
|
let { jewelCount = 0 } = role;
|
||||||
@@ -202,7 +202,7 @@ export async function addItems(roleId: string, roleName: string, sid: string, go
|
|||||||
await setAp(role.serverId, roleId, null, role.lv, ap, sid, reason);
|
await setAp(role.serverId, roleId, null, role.lv, ap, sid, reason);
|
||||||
let incCoin = coin.reduce((pre, cur) => pre + cur, 0);
|
let incCoin = coin.reduce((pre, cur) => pre + cur, 0);
|
||||||
let incGold = gold.reduce((pre, cur) => pre + cur.count, 0);
|
let incGold = gold.reduce((pre, cur) => pre + cur.count, 0);
|
||||||
role = await Role.increaseGoldAndCoin(roleId, gold, incCoin);
|
role = await RoleModel.increaseGoldAndCoin(roleId, gold, incCoin);
|
||||||
sendMessageToUserWithSuc(roleId, PUSH_ROUTE.PLAYER_DATA_CHANGE, { gold: role.gold, coin: role.coin }, sid);
|
sendMessageToUserWithSuc(roleId, PUSH_ROUTE.PLAYER_DATA_CHANGE, { gold: role.gold, coin: role.coin }, sid);
|
||||||
|
|
||||||
if(gold.length > 0) {
|
if(gold.length > 0) {
|
||||||
@@ -368,10 +368,10 @@ export async function checkHeroEquips(roleId: string, quality: number) {
|
|||||||
*/
|
*/
|
||||||
export async function unlockFigure(sid: string, roleId: string, conditions: { type: number, paramHid?: number, paramFavourLv?: number, paramSkinId?: number, paramWinStreakNum?: number }[], role?: RoleType) {
|
export async function unlockFigure(sid: string, roleId: string, conditions: { type: number, paramHid?: number, paramFavourLv?: number, paramSkinId?: number, paramWinStreakNum?: number }[], role?: RoleType) {
|
||||||
if (!role || !role.heads || !role.frames) {
|
if (!role || !role.heads || !role.frames) {
|
||||||
role = await Role.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
||||||
}
|
}
|
||||||
let { figureInfo, heads, frames, spines } = unlockFigureWithoutSave(conditions, role);
|
let { figureInfo, heads, frames, spines } = unlockFigureWithoutSave(conditions, role);
|
||||||
role = await Role.updateRoleInfo(roleId, { heads, frames, spines });
|
role = await RoleModel.updateRoleInfo(roleId, { heads, frames, spines });
|
||||||
if (!!figureInfo && (figureInfo.heads.length > 0 || figureInfo.frames.length > 0 || figureInfo.spines.length > 0)) {
|
if (!!figureInfo && (figureInfo.heads.length > 0 || figureInfo.frames.length > 0 || figureInfo.spines.length > 0)) {
|
||||||
sendMessageToUserWithSuc(roleId, PUSH_ROUTE.HEAD_CHANGE, { ...figureInfo }, sid);
|
sendMessageToUserWithSuc(roleId, PUSH_ROUTE.HEAD_CHANGE, { ...figureInfo }, sid);
|
||||||
}
|
}
|
||||||
@@ -686,7 +686,7 @@ export function checkVoucherId(id: number) {
|
|||||||
|
|
||||||
// 直接获得形象/相框
|
// 直接获得形象/相框
|
||||||
export async function addFigure(roleId: string, ids: number[], reason: number) {
|
export async function addFigure(roleId: string, ids: number[], reason: number) {
|
||||||
let role = await Role.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
let role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.GET_HEADS);
|
||||||
|
|
||||||
if (!role) return false;
|
if (!role) return false;
|
||||||
let { heads, frames, spines } = role;
|
let { heads, frames, spines } = role;
|
||||||
@@ -712,7 +712,7 @@ export async function addFigure(roleId: string, ids: number[], reason: number) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
role = await Role.updateRoleInfo(roleId, { heads, frames, spines });
|
role = await RoleModel.updateRoleInfo(roleId, { heads, frames, spines });
|
||||||
return figureInfo;
|
return figureInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { Channel, pinus } from 'pinus';
|
|||||||
import { getRandValueByMinMax, getRandEelm, decodeIdCntArrayStr, compareVersion } from '../pubUtils/util';
|
import { getRandValueByMinMax, getRandEelm, decodeIdCntArrayStr, compareVersion } from '../pubUtils/util';
|
||||||
import { DEFAULT_HEROES, LINEUP_NUM, ROLE_SELECT, TALENT_RELATION_TYPE, TERAPH_RANDOM, SYSTEM_OPEN_ID, GuideUnloadNum, CHECK_HERO_CONSUME, ABI_STAGE } from "../consts";
|
import { DEFAULT_HEROES, LINEUP_NUM, ROLE_SELECT, TALENT_RELATION_TYPE, TERAPH_RANDOM, SYSTEM_OPEN_ID, GuideUnloadNum, CHECK_HERO_CONSUME, ABI_STAGE } from "../consts";
|
||||||
import { DicTeraph } from '../pubUtils/dictionary/DicTeraph';
|
import { DicTeraph } from '../pubUtils/dictionary/DicTeraph';
|
||||||
import Role, { Teraph, RoleType, RoleUpdate } from '../db/Role';
|
import { Teraph, RoleModel, RoleType, RoleUpdate } from '../db/Role';
|
||||||
import { SCHOOL } from '../pubUtils/dicParam';
|
import { SCHOOL } from '../pubUtils/dicParam';
|
||||||
import { gameData, getHeroInitTalent, getHeroStarByQuality } from '../pubUtils/data';
|
import { gameData, getHeroInitTalent, getHeroStarByQuality } from '../pubUtils/data';
|
||||||
import { SchoolModel } from '../db/School';
|
import { SchoolModel } from '../db/School';
|
||||||
@@ -73,13 +73,13 @@ export async function getTeraphStrengthenResult(role: RoleType, count: number, d
|
|||||||
|
|
||||||
export async function getSimpleRoleInfo(roleId: string) {
|
export async function getSimpleRoleInfo(roleId: string) {
|
||||||
if (!roleId) return null;
|
if (!roleId) return null;
|
||||||
let role = await Role.findByRoleId(roleId, ROLE_SELECT.SHOW_SIMPLE, true);
|
let role = await RoleModel.findByRoleId(roleId, ROLE_SELECT.SHOW_SIMPLE, true);
|
||||||
return pick(role, ['roleId', 'roleName', 'head', 'frame', 'spine', 'lv', 'title', 'job', 'quitTime', 'loginTime', 'vLv', 'guildName', 'serverId', 'userInfo']);
|
return pick(role, ['roleId', 'roleName', 'head', 'frame', 'spine', 'lv', 'title', 'job', 'quitTime', 'loginTime', 'vLv', 'guildName', 'serverId', 'userInfo']);
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function getSimpleRoleInfos(roleIds: string[]) {
|
export async function getSimpleRoleInfos(roleIds: string[]) {
|
||||||
if (!roleIds || !roleIds.length) return null;
|
if (!roleIds || !roleIds.length) return null;
|
||||||
let roles = await Role.findByRoleIds(roleIds, ROLE_SELECT.SHOW_SIMPLE, true);
|
let roles = await RoleModel.findByRoleIds(roleIds, ROLE_SELECT.SHOW_SIMPLE, true);
|
||||||
return roles.map(role => pick(role, ['roleId', 'roleName', 'head', 'frame', 'spine', 'lv', 'title', 'job', 'quitTime', 'loginTime', 'vLv', 'guildName', 'serverId', 'userInfo']));
|
return roles.map(role => pick(role, ['roleId', 'roleName', 'head', 'frame', 'spine', 'lv', 'title', 'job', 'quitTime', 'loginTime', 'vLv', 'guildName', 'serverId', 'userInfo']));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -310,7 +310,7 @@ export async function getIpLocation(ip: string) {
|
|||||||
export async function checkIsNewUser(version: string, minVersion: string, uid: number, latestServerUniqId: number) {
|
export async function checkIsNewUser(version: string, minVersion: string, uid: number, latestServerUniqId: number) {
|
||||||
let versionFlag = compareVersion(version||'0.0.0.0', minVersion||'0.0.0.1');
|
let versionFlag = compareVersion(version||'0.0.0.0', minVersion||'0.0.0.1');
|
||||||
if(versionFlag >= 0) {
|
if(versionFlag >= 0) {
|
||||||
let hasRole = await Role.checkHasRole(uid, latestServerUniqId);
|
let hasRole = await RoleModel.checkHasRole(uid, latestServerUniqId);
|
||||||
return !hasRole
|
return !hasRole
|
||||||
} else {
|
} else {
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/********** 37sdk **********/
|
/********** 37sdk **********/
|
||||||
|
|
||||||
import Role, { RoleType } from "../db/Role";
|
import { RoleModel, RoleType } from "../db/Role";
|
||||||
import { Chat37Params, CheckGuild37Params, CheckName37Params, GetWordParam, PostGuild37Params, PostName37Params, PushMsg37Param } from "../domain/sdk";
|
import { Chat37Params, CheckGuild37Params, CheckName37Params, GetWordParam, PostGuild37Params, PostName37Params, PushMsg37Param } from "../domain/sdk";
|
||||||
import { sendMailByContent, sendMailToGuildByContent } from './mailService';
|
import { sendMailByContent, sendMailToGuildByContent } from './mailService';
|
||||||
import { NAMEPLATE } from '../pubUtils/dicParam';
|
import { NAMEPLATE } from '../pubUtils/dicParam';
|
||||||
@@ -29,11 +29,11 @@ import { GiftCodeDetailModel } from "../db/GiftCodeDetail";
|
|||||||
|
|
||||||
export async function checkPrivateChat(roleId: string, targetRoleId: string, message: string) {
|
export async function checkPrivateChat(roleId: string, targetRoleId: string, message: string) {
|
||||||
let body = new Chat37Params(message, getSdkChannelId('private'));
|
let body = new Chat37Params(message, getSdkChannelId('private'));
|
||||||
let myRole = await Role.findByRoleId(roleId);
|
let myRole = await RoleModel.findByRoleId(roleId);
|
||||||
let myUser = await UserModel.findUserByUid(myRole.userInfo.uid);
|
let myUser = await UserModel.findUserByUid(myRole.userInfo.uid);
|
||||||
if(myUser.channelInfo) {
|
if(myUser.channelInfo) {
|
||||||
body.setByMyRole(myRole, myUser);
|
body.setByMyRole(myRole, myUser);
|
||||||
let targetRole = await Role.findByRoleId(targetRoleId);
|
let targetRole = await RoleModel.findByRoleId(targetRoleId);
|
||||||
let targetUser = await UserModel.findUserByUid(targetRole.userInfo.uid);
|
let targetUser = await UserModel.findUserByUid(targetRole.userInfo.uid);
|
||||||
body.setByTargetRole(targetRole, targetUser);
|
body.setByTargetRole(targetRole, targetUser);
|
||||||
return await request37CheckChat(SDK_37_ADDR.CHECK_CHAT, body, SDK_37_CONST.CHAT_KEY);
|
return await request37CheckChat(SDK_37_ADDR.CHECK_CHAT, body, SDK_37_CONST.CHAT_KEY);
|
||||||
@@ -43,7 +43,7 @@ export async function checkPrivateChat(roleId: string, targetRoleId: string, mes
|
|||||||
|
|
||||||
export async function checkGuildChat(roleId: string, guildCode: string, message: string) {
|
export async function checkGuildChat(roleId: string, guildCode: string, message: string) {
|
||||||
let body = new Chat37Params(message, getSdkChannelId(CHANNEL_PREFIX.GUILD));
|
let body = new Chat37Params(message, getSdkChannelId(CHANNEL_PREFIX.GUILD));
|
||||||
let myRole = await Role.findByRoleId(roleId);
|
let myRole = await RoleModel.findByRoleId(roleId);
|
||||||
let myUser = await UserModel.findUserByUid(myRole.userInfo.uid);
|
let myUser = await UserModel.findUserByUid(myRole.userInfo.uid);
|
||||||
if(myUser.channelInfo) {
|
if(myUser.channelInfo) {
|
||||||
body.setByMyRole(myRole, myUser);
|
body.setByMyRole(myRole, myUser);
|
||||||
@@ -55,7 +55,7 @@ export async function checkGuildChat(roleId: string, guildCode: string, message:
|
|||||||
|
|
||||||
export async function checkOtherChat(roleId: string, channelPrefix: string, message: string) {
|
export async function checkOtherChat(roleId: string, channelPrefix: string, message: string) {
|
||||||
let body = new Chat37Params(message, getSdkChannelId(channelPrefix));
|
let body = new Chat37Params(message, getSdkChannelId(channelPrefix));
|
||||||
let myRole = await Role.findByRoleId(roleId);
|
let myRole = await RoleModel.findByRoleId(roleId);
|
||||||
let myUser = await UserModel.findUserByUid(myRole.userInfo.uid);
|
let myUser = await UserModel.findUserByUid(myRole.userInfo.uid);
|
||||||
if(!!myUser.channelInfo) {
|
if(!!myUser.channelInfo) {
|
||||||
body.setByMyRole(myRole, myUser);
|
body.setByMyRole(myRole, myUser);
|
||||||
@@ -66,7 +66,7 @@ export async function checkOtherChat(roleId: string, channelPrefix: string, mess
|
|||||||
|
|
||||||
export async function checkRoleName(roleId: string, roleName: string, myRole?: RoleType) {
|
export async function checkRoleName(roleId: string, roleName: string, myRole?: RoleType) {
|
||||||
if(!myRole) {
|
if(!myRole) {
|
||||||
myRole = await Role.findByRoleId(roleId);
|
myRole = await RoleModel.findByRoleId(roleId);
|
||||||
}
|
}
|
||||||
let myUser = await UserModel.findUserByUid(myRole.userInfo.uid);
|
let myUser = await UserModel.findUserByUid(myRole.userInfo.uid);
|
||||||
if(!!myUser.channelInfo) {
|
if(!!myUser.channelInfo) {
|
||||||
@@ -111,13 +111,13 @@ export async function checkGuildName(guildCode: string, serverId: number, name:
|
|||||||
|
|
||||||
// 根据37sdk处理违规玩家名
|
// 根据37sdk处理违规玩家名
|
||||||
export async function treatRoleName(roleId: string, isDebug?: boolean) {
|
export async function treatRoleName(roleId: string, isDebug?: boolean) {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if((role && role.sdkMark) || isDebug) { // 有设置标记的情况下
|
if((role && role.sdkMark) || isDebug) { // 有设置标记的情况下
|
||||||
let newName = "默认玩家名";
|
let newName = "默认玩家名";
|
||||||
// 新名字上传
|
// 新名字上传
|
||||||
await checkRoleName(roleId, newName, role);
|
await checkRoleName(roleId, newName, role);
|
||||||
// 改名字
|
// 改名字
|
||||||
await Role.updateRoleInfo(roleId, { roleName: newName, sdkMark: false });
|
await RoleModel.updateRoleInfo(roleId, { roleName: newName, sdkMark: false });
|
||||||
// 通知处理
|
// 通知处理
|
||||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'roleName', value: newName }]); // redis缓存
|
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'roleName', value: newName }]); // redis缓存
|
||||||
if(role.isGuildLeader) {
|
if(role.isGuildLeader) {
|
||||||
@@ -157,7 +157,7 @@ export async function treatGuildName(content: string) {
|
|||||||
for(let roleId of guild.members) {
|
for(let roleId of guild.members) {
|
||||||
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'guildName', value: newName }]);
|
await updateUserInfo(REDIS_KEY.USER_INFO, roleId, [{ field: 'guildName', value: newName }]);
|
||||||
}
|
}
|
||||||
await Role.updateGuildName(params.code, newName);
|
await RoleModel.updateGuildName(params.code, newName);
|
||||||
|
|
||||||
} else if (params.type == 2) { // 公会公告
|
} else if (params.type == 2) { // 公会公告
|
||||||
await checkGuildName(params.code, params.serverId, undefined, ' ');
|
await checkGuildName(params.code, params.serverId, undefined, ' ');
|
||||||
@@ -249,7 +249,7 @@ export function reportTAUserSet(type: TA_USERSET_TYPE, roleId: string, propertie
|
|||||||
export async function reportCreateRoleEventToTa(role: RoleType, ip: string) {
|
export async function reportCreateRoleEventToTa(role: RoleType, ip: string) {
|
||||||
if(role.shushuMark) {
|
if(role.shushuMark) {
|
||||||
reportTAEvent(role.roleId, TA_EVENT.CREATE_ROLE, null, ip, role.shushuMark);
|
reportTAEvent(role.roleId, TA_EVENT.CREATE_ROLE, null, ip, role.shushuMark);
|
||||||
await Role.updateRoleInfo(role.roleId, { shushuMark: '' });
|
await RoleModel.updateRoleInfo(role.roleId, { shushuMark: '' });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import { getRoleCreateTime, getServerCreateTime } from "./redisService";
|
|||||||
import { decodeArrayListStr } from "../pubUtils/util";
|
import { decodeArrayListStr } from "../pubUtils/util";
|
||||||
import { UserShopTypeModel, UserShopTypeType } from "../db/UserShopType";
|
import { UserShopTypeModel, UserShopTypeType } from "../db/UserShopType";
|
||||||
import { GuildModel } from "../db/Guild";
|
import { GuildModel } from "../db/Guild";
|
||||||
import Role from "../db/Role";
|
import { RoleModel } from "../db/Role";
|
||||||
import { DicShop } from "../pubUtils/dictionary/DicShop";
|
import { DicShop } from "../pubUtils/dictionary/DicShop";
|
||||||
import { BackendSession, pinus } from "pinus";
|
import { BackendSession, pinus } from "pinus";
|
||||||
import { ActivityModelType } from "../db/Activity";
|
import { ActivityModelType } from "../db/Activity";
|
||||||
@@ -132,7 +132,7 @@ export async function checkShopInPurchase(session: BackendSession, activityId: n
|
|||||||
|
|
||||||
export async function checkShopCanBuyInOrder(roleId: string, serverId: number, activity: ActivityModelType, productID: string) {
|
export async function checkShopCanBuyInOrder(roleId: string, serverId: number, activity: ActivityModelType, productID: string) {
|
||||||
let seasonNum = pinus.app.get('pvpSeasonNum');
|
let seasonNum = pinus.app.get('pvpSeasonNum');
|
||||||
let role = await Role.findByRoleId(roleId, 'guildCode createTime vipStartTime');
|
let role = await RoleModel.findByRoleId(roleId, 'guildCode createTime vipStartTime');
|
||||||
let { createTime, guildCode, vipStartTime } = role;
|
let { createTime, guildCode, vipStartTime } = role;
|
||||||
let serverTime = await getServerCreateTime(serverId);
|
let serverTime = await getServerCreateTime(serverId);
|
||||||
let shopData = new ShopData(activity, createTime, serverTime);
|
let shopData = new ShopData(activity, createTime, serverTime);
|
||||||
@@ -157,7 +157,7 @@ export async function checkShopItemCanBuy(activityId: number, shopItemId: number
|
|||||||
if(!myGuild || myGuild.lv < dicShopItem.guildLvLimit) return STATUS.GUILD_LV_LIMIT;
|
if(!myGuild || myGuild.lv < dicShopItem.guildLvLimit) return STATUS.GUILD_LV_LIMIT;
|
||||||
}
|
}
|
||||||
if(dicShopItem.lvLimit) {
|
if(dicShopItem.lvLimit) {
|
||||||
let role = await Role.findByRoleId(roleId, 'lv');
|
let role = await RoleModel.findByRoleId(roleId, 'lv');
|
||||||
if(role.lv < dicShopItem.lvLimit) {
|
if(role.lv < dicShopItem.lvLimit) {
|
||||||
return STATUS.LV_LIMIT;
|
return STATUS.LV_LIMIT;
|
||||||
}
|
}
|
||||||
@@ -203,7 +203,7 @@ export async function checkShopItemCanBuy(activityId: number, shopItemId: number
|
|||||||
if (activityData.type !== ACTIVITY_TYPE.SHOP) {
|
if (activityData.type !== ACTIVITY_TYPE.SHOP) {
|
||||||
return STATUS.ACTIVITY_TYPE_ERROR;
|
return STATUS.ACTIVITY_TYPE_ERROR;
|
||||||
}
|
}
|
||||||
let role = await Role.findByRoleId(roleId, 'guildCode createTime vipStartTime');
|
let role = await RoleModel.findByRoleId(roleId, 'guildCode createTime vipStartTime');
|
||||||
let { createTime, guildCode, vipStartTime } = role;
|
let { createTime, guildCode, vipStartTime } = role;
|
||||||
let serverTime = await getServerCreateTime(serverId);
|
let serverTime = await getServerCreateTime(serverId);
|
||||||
let shopData = new ShopData(activityData, createTime, serverTime);
|
let shopData = new ShopData(activityData, createTime, serverTime);
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import { ActivityGrowthFundModel } from "../../db/ActivityGrowthFund";
|
|||||||
import { ActivityRefreshTaskModel } from "../../db/ActivityRefreshTask";
|
import { ActivityRefreshTaskModel } from "../../db/ActivityRefreshTask";
|
||||||
import { ActivityThirtyDaysModel } from "../../db/ActivityThirtyDays";
|
import { ActivityThirtyDaysModel } from "../../db/ActivityThirtyDays";
|
||||||
import { ActivityTreasureHuntTaskModel } from "../../db/ActivityTreasureHuntTask";
|
import { ActivityTreasureHuntTaskModel } from "../../db/ActivityTreasureHuntTask";
|
||||||
import Role, { RoleType } from "../../db/Role";
|
import { RoleModel, RoleType } from "../../db/Role";
|
||||||
import { UserTaskRecModel } from "../../db/UserTaskRec";
|
import { UserTaskRecModel } from "../../db/UserTaskRec";
|
||||||
import { GrowthFundData } from "../../domain/activityField/growthFundField";
|
import { GrowthFundData } from "../../domain/activityField/growthFundField";
|
||||||
import { RefreshTaskData } from "../../domain/activityField/refreshTaskField";
|
import { RefreshTaskData } from "../../domain/activityField/refreshTaskField";
|
||||||
@@ -84,7 +84,7 @@ export class CheckTask {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!this.roleCreateTime) {
|
if(!this.roleCreateTime) {
|
||||||
let role = await Role.findByRoleId(this.roleId);
|
let role = await RoleModel.findByRoleId(this.roleId);
|
||||||
this.role = role;
|
this.role = role;
|
||||||
this.roleCreateTime = role.createTime;
|
this.roleCreateTime = role.createTime;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import Role, { RoleType } from '../../db/Role';
|
import { RoleModel, RoleType } from '../../db/Role';
|
||||||
import { pinus, FrontendOrBackendSession } from 'pinus';
|
import { pinus, FrontendOrBackendSession } from 'pinus';
|
||||||
import { resResult, shouldRefresh } from '../../pubUtils/util';
|
import { resResult, shouldRefresh } from '../../pubUtils/util';
|
||||||
import { STATUS, TASK_TYPE, TASK_FUN_TYPE, SHOP_REFRESH_TYPE, WAR_TYPE, PUSH_ROUTE, POP_UP_SHOP_CONDITION_TYPE } from '../../consts';
|
import { STATUS, TASK_TYPE, TASK_FUN_TYPE, SHOP_REFRESH_TYPE, WAR_TYPE, PUSH_ROUTE, POP_UP_SHOP_CONDITION_TYPE } from '../../consts';
|
||||||
@@ -195,7 +195,7 @@ export async function checkTaskInComBattleStart(roleStatus: RoleStatus[], capId:
|
|||||||
console.log('********', JSON.stringify(roleStatus), capId, blueprtId)
|
console.log('********', JSON.stringify(roleStatus), capId, blueprtId)
|
||||||
for (let { roleId, isRobot } of roleStatus) {
|
for (let { roleId, isRobot } of roleStatus) {
|
||||||
if (!isRobot) {
|
if (!isRobot) {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let task = new CheckTask(role.serverId, roleId);
|
let task = new CheckTask(role.serverId, roleId);
|
||||||
task.setRole(role);
|
task.setRole(role);
|
||||||
if (roleId == capId && roleStatus.length > 1) { // 招募队友
|
if (roleId == capId && roleStatus.length > 1) { // 招募队友
|
||||||
@@ -213,7 +213,7 @@ export async function checkTaskInComBattleStart(roleStatus: RoleStatus[], capId:
|
|||||||
export async function checkTaskInComBattleEnd(roleStatus: RoleStatus[], capId: string) {
|
export async function checkTaskInComBattleEnd(roleStatus: RoleStatus[], capId: string) {
|
||||||
for (let { roleId, isRobot } of roleStatus) {
|
for (let { roleId, isRobot } of roleStatus) {
|
||||||
if (!isRobot) {
|
if (!isRobot) {
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
let task = new CheckTask(role.serverId, roleId);
|
let task = new CheckTask(role.serverId, roleId);
|
||||||
task.setRole(role);
|
task.setRole(role);
|
||||||
if (roleId == capId && roleStatus.length > 1) { // 招募队友
|
if (roleId == capId && roleStatus.length > 1) { // 招募队友
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import { GMMailModel, } from '@db/GMMail';
|
|||||||
import { STATUS } from '@consts';
|
import { STATUS } from '@consts';
|
||||||
import { SearchMailParam } from '@domain/backEndField/search';
|
import { SearchMailParam } from '@domain/backEndField/search';
|
||||||
import { UpdateMailParams } from '@domain/backEndField/params';
|
import { UpdateMailParams } from '@domain/backEndField/params';
|
||||||
import Role, { RoleType } from '@db/Role';
|
import { RoleModel, RoleType } from '@db/Role';
|
||||||
|
|
||||||
export default class Mail extends Service {
|
export default class Mail extends Service {
|
||||||
|
|
||||||
@@ -20,10 +20,10 @@ export default class Mail extends Service {
|
|||||||
public async findRoleByIdOrName(serverId: number, roleId: string, roleName: string) {
|
public async findRoleByIdOrName(serverId: number, roleId: string, roleName: string) {
|
||||||
let role: RoleType;
|
let role: RoleType;
|
||||||
if(roleId) {
|
if(roleId) {
|
||||||
role = await Role.findByRoleId(roleId);
|
role = await RoleModel.findByRoleId(roleId);
|
||||||
}
|
}
|
||||||
if(roleName) {
|
if(roleName) {
|
||||||
role = await Role.findByRoleName(roleName);
|
role = await RoleModel.findByRoleName(roleName);
|
||||||
}
|
}
|
||||||
if(!role || role.serverId != serverId) return this.ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
if(!role || role.serverId != serverId) return this.ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
return this.ctx.service.utils.resResult(STATUS.SUCCESS, { env: this.ctx.app.config.realEnv, serverId, roleId: role.roleId, roleName: role.roleName })
|
return this.ctx.service.utils.resResult(STATUS.SUCCESS, { env: this.ctx.app.config.realEnv, serverId, roleId: role.roleId, roleName: role.roleName })
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { UserModel } from '@db/User';
|
import { UserModel } from '@db/User';
|
||||||
import Role from '@db/Role';
|
import { RoleModel } from '@db/Role';
|
||||||
import { HeroModel } from '@db/Hero';
|
import { HeroModel } from '@db/Hero';
|
||||||
|
|
||||||
import { Service } from 'egg';
|
import { Service } from 'egg';
|
||||||
@@ -46,7 +46,7 @@ export default class GMUsers extends Service {
|
|||||||
|
|
||||||
let list = [];
|
let list = [];
|
||||||
for (let user of users) {
|
for (let user of users) {
|
||||||
let role = await Role.findAllByUid(user.uid);
|
let role = await RoleModel.findAllByUid(user.uid);
|
||||||
let sms = await smsModel.findByTel(user.tel);
|
let sms = await smsModel.findByTel(user.tel);
|
||||||
|
|
||||||
list.push({ ...user, role, isFixed: sms ? sms.isFixed : false, code: sms ? sms.code : "", env: ctx.app.config.realEnv });
|
list.push({ ...user, role, isFixed: sms ? sms.isFixed : false, code: sms ? sms.code : "", env: ctx.app.config.realEnv });
|
||||||
@@ -63,7 +63,7 @@ export default class GMUsers extends Service {
|
|||||||
// const roleId = ctx.service.utils.genCode(10);
|
// const roleId = ctx.service.utils.genCode(10);
|
||||||
// const code = ctx.service.utils.genCode(6);
|
// const code = ctx.service.utils.genCode(6);
|
||||||
// const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
// const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
||||||
// const role = await Role.createRole(uid, serverId, { roleId, code, roleName, seqId });
|
// const role = await RoleModel.createRole(uid, serverId, { roleId, code, roleName, seqId });
|
||||||
// if (role) {
|
// if (role) {
|
||||||
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
// return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||||
// } else {
|
// } else {
|
||||||
@@ -133,8 +133,8 @@ export default class GMUsers extends Service {
|
|||||||
form.uid = user.uid;
|
form.uid = user.uid;
|
||||||
}
|
}
|
||||||
|
|
||||||
const roles = await Role.findByCondition(page, pageSize, sortField, sortOrder, form);
|
const roles = await RoleModel.findByCondition(page, pageSize, sortField, sortOrder, form);
|
||||||
const total = await Role.countByCondition( form )
|
const total = await RoleModel.countByCondition( form )
|
||||||
|
|
||||||
let list = [];
|
let list = [];
|
||||||
for (let role of roles) {
|
for (let role of roles) {
|
||||||
@@ -189,7 +189,7 @@ export default class GMUsers extends Service {
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
// for (let roleId of uids) {
|
// for (let roleId of uids) {
|
||||||
// let role = await Role.findByRoleId(roleId);
|
// let role = await RoleModel.findByRoleId(roleId);
|
||||||
// if (role) {
|
// if (role) {
|
||||||
// let heroInfos = new Map();
|
// let heroInfos = new Map();
|
||||||
// for (let hid of hids) {
|
// for (let hid of hids) {
|
||||||
@@ -235,7 +235,7 @@ export default class GMUsers extends Service {
|
|||||||
// }
|
// }
|
||||||
// if(flag == 0) {
|
// if(flag == 0) {
|
||||||
// for (let roleId of uids) {
|
// for (let roleId of uids) {
|
||||||
// let role = await Role.findByRoleId(roleId);
|
// let role = await RoleModel.findByRoleId(roleId);
|
||||||
// if (role) {
|
// if (role) {
|
||||||
// await addBags(roleId, role.roleName, datas, ITEM_CHANGE_REASON.DEBUG);
|
// await addBags(roleId, role.roleName, datas, ITEM_CHANGE_REASON.DEBUG);
|
||||||
// } else {
|
// } else {
|
||||||
@@ -257,7 +257,7 @@ export default class GMUsers extends Service {
|
|||||||
// let count = parseInt(_count);
|
// let count = parseInt(_count);
|
||||||
// if (isNaN(count)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
// if (isNaN(count)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
// for (let roleId of uids) {
|
// for (let roleId of uids) {
|
||||||
// await Role.addGoldFree(roleId, count);
|
// await RoleModel.addGoldFree(roleId, count);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
// return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
||||||
@@ -269,7 +269,7 @@ export default class GMUsers extends Service {
|
|||||||
// let count = parseInt(_count);
|
// let count = parseInt(_count);
|
||||||
// if (isNaN(count)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
// if (isNaN(count)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
// for (let roleId of uids) {
|
// for (let roleId of uids) {
|
||||||
// await Role.addCoin(roleId, count);
|
// await RoleModel.addCoin(roleId, count);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
// return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
||||||
@@ -280,7 +280,7 @@ export default class GMUsers extends Service {
|
|||||||
// let id = parseInt(_id);
|
// let id = parseInt(_id);
|
||||||
// if (isNaN(id)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
// if (isNaN(id)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
// for (let roleId of uids) {
|
// for (let roleId of uids) {
|
||||||
// let role = await Role.findByRoleId(roleId);
|
// let role = await RoleModel.findByRoleId(roleId);
|
||||||
// await addSkin(roleId, role.roleName, id, false);
|
// await addSkin(roleId, role.roleName, id, false);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
@@ -294,7 +294,7 @@ export default class GMUsers extends Service {
|
|||||||
// if (isNaN(lv)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
// if (isNaN(lv)) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
// for (let roleId of uids) {
|
// for (let roleId of uids) {
|
||||||
// let exp = getExpByLv(lv - 1);
|
// let exp = getExpByLv(lv - 1);
|
||||||
// await Role.levelup(roleId, lv, exp ? exp.sum : 0);
|
// await RoleModel.levelup(roleId, lv, exp ? exp.sum : 0);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
// return ctx.service.utils.resResult(STATUS.SUCCESS, { uids });
|
||||||
@@ -634,7 +634,7 @@ export default class GMUsers extends Service {
|
|||||||
towerLv = lv; break;
|
towerLv = lv; break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
let role = await Role.updateRoleInfo(roleId, { towerLv });
|
let role = await RoleModel.updateRoleInfo(roleId, { towerLv });
|
||||||
await TowerRecordModel.deleteAccount(roleId);
|
await TowerRecordModel.deleteAccount(roleId);
|
||||||
await TowerRecordModel.insertTowerRec(roleId, towerLv);
|
await TowerRecordModel.insertTowerRec(roleId, towerLv);
|
||||||
await HangUpRecordModel.deleteAccount(roleId);
|
await HangUpRecordModel.deleteAccount(roleId);
|
||||||
@@ -647,14 +647,14 @@ export default class GMUsers extends Service {
|
|||||||
|
|
||||||
let createTime = nowSeconds() - (day - 1) * 86400;
|
let createTime = nowSeconds() - (day - 1) * 86400;
|
||||||
|
|
||||||
let role = await Role.updateRoleInfo(roleId, { createTime });
|
let role = await RoleModel.updateRoleInfo(roleId, { createTime });
|
||||||
if(!role) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
if(!role) return ctx.service.utils.resResult(STATUS.WRONG_PARMS);
|
||||||
|
|
||||||
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
return ctx.service.utils.resResult(STATUS.SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
private async setWarStarAndScript(roleId: string, dicWar: DicWar) {
|
private async setWarStarAndScript(roleId: string, dicWar: DicWar) {
|
||||||
let { warStar } = await Role.findByRoleId(roleId);
|
let { warStar } = await RoleModel.findByRoleId(roleId);
|
||||||
let deleteIds: number[] = [], myMaxWarId = 0;
|
let deleteIds: number[] = [], myMaxWarId = 0;
|
||||||
for(let i = 0; i < warStar.length; i++) {
|
for(let i = 0; i < warStar.length; i++) {
|
||||||
let { id, warType } = warStar[i];
|
let { id, warType } = warStar[i];
|
||||||
@@ -697,7 +697,7 @@ export default class GMUsers extends Service {
|
|||||||
if(insertParams.length > 0) {
|
if(insertParams.length > 0) {
|
||||||
await RScriptRecordModel.insertScripts(roleId, insertParams);
|
await RScriptRecordModel.insertScripts(roleId, insertParams);
|
||||||
}
|
}
|
||||||
let role = await Role.updateRoleInfo(roleId, { warStar: newWarStar });
|
let role = await RoleModel.updateRoleInfo(roleId, { warStar: newWarStar });
|
||||||
return role;
|
return role;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { ActivityModelType } from '../../db/Activity';
|
|||||||
import { ActivityGrowthModelType } from '../../db/ActivityGrowth';
|
import { ActivityGrowthModelType } from '../../db/ActivityGrowth';
|
||||||
import { ActivityGrowthPointModelType } from '../../db/ActivityGrowthPoint';
|
import { ActivityGrowthPointModelType } from '../../db/ActivityGrowthPoint';
|
||||||
import { HeroType } from '../../db/Hero';
|
import { HeroType } from '../../db/Hero';
|
||||||
import Role from '../../db/Role';
|
import { RoleModel } from '../../db/Role';
|
||||||
import { splitString } from '../../pubUtils/util';
|
import { splitString } from '../../pubUtils/util';
|
||||||
import { ActivityBase } from './activityField';
|
import { ActivityBase } from './activityField';
|
||||||
|
|
||||||
@@ -117,7 +117,7 @@ export class GrowthData extends ActivityBase {
|
|||||||
|
|
||||||
//解析玩家领取记录
|
//解析玩家领取记录
|
||||||
public async setPlayerRecords(data: ActivityGrowthModelType[], roleId: string, userHeroes: HeroType[]) {
|
public async setPlayerRecords(data: ActivityGrowthModelType[], roleId: string, userHeroes: HeroType[]) {
|
||||||
let { heroNum, towerLv } = await Role.findByRoleId(roleId);
|
let { heroNum, towerLv } = await RoleModel.findByRoleId(roleId);
|
||||||
for (let obj of this.list) {
|
for (let obj of this.list) {
|
||||||
let index = data.findIndex(record => { return obj.dayIndex == record.dayIndex && obj.cellIndex == record.cellIndex })
|
let index = data.findIndex(record => { return obj.dayIndex == record.dayIndex && obj.cellIndex == record.cellIndex })
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { ACTIVITY_TYPE, CURRENCY_BY_TYPE, CURRENCY_TYPE, HERO_SYSTEM_TYPE, LOG_TYPE } from "../consts";
|
import { ACTIVITY_TYPE, CURRENCY_BY_TYPE, CURRENCY_TYPE, HERO_SYSTEM_TYPE, LOG_TYPE } from "../consts";
|
||||||
import { HeroType } from "../db/Hero";
|
import { HeroType } from "../db/Hero";
|
||||||
import Role, { RoleType, RoleUpdate } from "../db/Role";
|
import { RoleModel, RoleType, RoleUpdate } from "../db/Role";
|
||||||
import { UserLogModel, GateHpLog, BossHpLog } from "../db/UserLog";
|
import { UserLogModel, GateHpLog, BossHpLog } from "../db/UserLog";
|
||||||
import { UserOrderModelType } from "../db/UserOrder";
|
import { UserOrderModelType } from "../db/UserOrder";
|
||||||
import { Figure } from "../domain/dbGeneral";
|
import { Figure } from "../domain/dbGeneral";
|
||||||
@@ -56,7 +56,7 @@ export function getReCalRoleAttrIds(type: number, update: RoleUpdate, args: numb
|
|||||||
|
|
||||||
export async function savePayLog(order: UserOrderModelType) {
|
export async function savePayLog(order: UserOrderModelType) {
|
||||||
try {
|
try {
|
||||||
let role = await Role.findByRoleId(order.roleId, 'userInfo roleId roleName serverId');
|
let role = await RoleModel.findByRoleId(order.roleId, 'userInfo roleId roleName serverId');
|
||||||
let params = getParamByRole(role);
|
let params = getParamByRole(role);
|
||||||
let { productID, message: productName, price, localOrderID, orderID, state, useVoucher } = order;
|
let { productID, message: productName, price, localOrderID, orderID, state, useVoucher } = order;
|
||||||
let dicRmb = gameData.rmb.get(productID);
|
let dicRmb = gameData.rmb.get(productID);
|
||||||
@@ -69,7 +69,7 @@ export async function savePayLog(order: UserOrderModelType) {
|
|||||||
|
|
||||||
export async function saveItemChangeLog(roleId: string, goods: { id: number, count: number, inc: number }[], reason: number) {
|
export async function saveItemChangeLog(roleId: string, goods: { id: number, count: number, inc: number }[], reason: number) {
|
||||||
try {
|
try {
|
||||||
let role = await Role.findByRoleId(roleId, 'userInfo roleId roleName serverId');
|
let role = await RoleModel.findByRoleId(roleId, 'userInfo roleId roleName serverId');
|
||||||
let params = getParamByRole(role);
|
let params = getParamByRole(role);
|
||||||
for (let { id, count, inc } of goods) {
|
for (let { id, count, inc } of goods) {
|
||||||
if(inc == 0) continue;
|
if(inc == 0) continue;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { SkinModel } from "../db/Skin";
|
import { SkinModel } from "../db/Skin";
|
||||||
import { HeroModel } from "../db/Hero";
|
import { HeroModel } from "../db/Hero";
|
||||||
import Role, { RoleModel } from "../db/Role";
|
import { RoleModel } from "../db/Role";
|
||||||
import { GuildModel } from "../db/Guild";
|
import { GuildModel } from "../db/Guild";
|
||||||
import { PvpDefenseModel } from "../db/PvpDefense";
|
import { PvpDefenseModel } from "../db/PvpDefense";
|
||||||
import { ActionPointModel } from '../db/ActionPoint';
|
import { ActionPointModel } from '../db/ActionPoint';
|
||||||
@@ -93,7 +93,7 @@ import { ActivityTaskPassModel } from "../db/ActivityTaskPass";
|
|||||||
import { LadderMatchModel } from "../db/LadderMatch";
|
import { LadderMatchModel } from "../db/LadderMatch";
|
||||||
|
|
||||||
export async function deletRole(roleId: string) {
|
export async function deletRole(roleId: string) {
|
||||||
let role = await Role.findByRoleId(roleId, null, true, true);
|
let role = await RoleModel.findByRoleId(roleId, null, true, true);
|
||||||
if(!role ) return false;
|
if(!role ) return false;
|
||||||
if(role.hasInit) {
|
if(role.hasInit) {
|
||||||
|
|
||||||
@@ -166,7 +166,7 @@ export async function deletRole(roleId: string) {
|
|||||||
const guild = await GuildModel.dismiss(userGuild.guildCode, role.serverId);
|
const guild = await GuildModel.dismiss(userGuild.guildCode, role.serverId);
|
||||||
await UserGuildModel.dismiss(userGuild.guildCode);
|
await UserGuildModel.dismiss(userGuild.guildCode);
|
||||||
const { members } = guild;
|
const { members } = guild;
|
||||||
await Role.dissmissGuild(members);
|
await RoleModel.dissmissGuild(members);
|
||||||
await UserGuildApplyModel.deleteApplyByGuild(userGuild.guildCode);
|
await UserGuildApplyModel.deleteApplyByGuild(userGuild.guildCode);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { BattleRecordModel } from '@db/BattleRecord';
|
|||||||
import { STATUS, WAR_TYPE } from '@consts';
|
import { STATUS, WAR_TYPE } from '@consts';
|
||||||
import { Controller } from 'egg';
|
import { Controller } from 'egg';
|
||||||
import * as fs from 'fs';
|
import * as fs from 'fs';
|
||||||
import Role from '@db/Role';
|
import { RoleModel } from '@db/Role';
|
||||||
import { NoticeModel } from '@db/Notice';
|
import { NoticeModel } from '@db/Notice';
|
||||||
import { ServerParamWithRole, GroupParam } from '../domain/gameField/serverlist';
|
import { ServerParamWithRole, GroupParam } from '../domain/gameField/serverlist';
|
||||||
import { reloadResources } from 'app/pubUtils/data';
|
import { reloadResources } from 'app/pubUtils/data';
|
||||||
@@ -104,7 +104,7 @@ export default class GameController extends Controller {
|
|||||||
// let env = isReview? curRegion.reviewEnv: ctx.app.config.realEnv;
|
// let env = isReview? curRegion.reviewEnv: ctx.app.config.realEnv;
|
||||||
|
|
||||||
let allServers = await ServerlistModel.findByEnv(ctx.app.config.realEnv, false);
|
let allServers = await ServerlistModel.findByEnv(ctx.app.config.realEnv, false);
|
||||||
let hasRole = await Role.checkHasRole(uid, curRegion.latestServerUniqId);
|
let hasRole = await RoleModel.checkHasRole(uid, curRegion.latestServerUniqId);
|
||||||
|
|
||||||
if(pid && gid) {
|
if(pid && gid) {
|
||||||
const pkg = await PackageModel.getPackageByGidPid(gid, pid);
|
const pkg = await PackageModel.getPackageByGidPid(gid, pid);
|
||||||
@@ -113,7 +113,7 @@ export default class GameController extends Controller {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let roles = await Role.findAllByUid(uid, true, true);
|
let roles = await RoleModel.findAllByUid(uid, true, true);
|
||||||
for (let server of allServers) {
|
for (let server of allServers) {
|
||||||
let status = ctx.service.utils.getServerStatus(server, version, hasRole)
|
let status = ctx.service.utils.getServerStatus(server, version, hasRole)
|
||||||
let curGroup = serverList.find(cur => cur.groupId == server.groupId);
|
let curGroup = serverList.find(cur => cur.groupId == server.groupId);
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { STATUS } from '@consts';
|
|||||||
import { ServerlistModel } from '@db/Serverlist';
|
import { ServerlistModel } from '@db/Serverlist';
|
||||||
import { nowSeconds } from 'app/pubUtils/timeUtil';
|
import { nowSeconds } from 'app/pubUtils/timeUtil';
|
||||||
import { checkWhiteList } from 'app/pubUtils/sysUtil';
|
import { checkWhiteList } from 'app/pubUtils/sysUtil';
|
||||||
import Role from '@db/Role';
|
import { RoleModel } from '@db/Role';
|
||||||
|
|
||||||
module.exports = () => {
|
module.exports = () => {
|
||||||
return async function checkMainten(ctx, next) {
|
return async function checkMainten(ctx, next) {
|
||||||
@@ -16,7 +16,7 @@ module.exports = () => {
|
|||||||
} else {
|
} else {
|
||||||
const versionFlag = ctx.service.utils.compareVersion(version||'0.0.0.0', server.maintenance.version||'0.0.0.1');
|
const versionFlag = ctx.service.utils.compareVersion(version||'0.0.0.0', server.maintenance.version||'0.0.0.1');
|
||||||
if(versionFlag >= 0) { // 新版本号
|
if(versionFlag >= 0) { // 新版本号
|
||||||
let hasRole = await Role.checkHasRole(ctx.uid, server.latestServerUniqId); // 是否是老玩家
|
let hasRole = await RoleModel.checkHasRole(ctx.uid, server.latestServerUniqId); // 是否是老玩家
|
||||||
if(!hasRole) {
|
if(!hasRole) {
|
||||||
return await next();
|
return await next();
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
import { COUNTER, DEFAULT_LV, ADULT_AGE, GUEST_MAX_TIME, BLOCK_TYPE, DEBUG_MAGIC_WORD } from '@consts';
|
import { COUNTER, DEFAULT_LV, ADULT_AGE, GUEST_MAX_TIME, BLOCK_TYPE, DEBUG_MAGIC_WORD } from '@consts';
|
||||||
import Role, { RoleModel, WarStar } from '@db/Role';
|
import { RoleModel, WarStar } from '@db/Role';
|
||||||
import { UserModel, UserType } from '@db/User';
|
import { UserModel, UserType } from '@db/User';
|
||||||
import { STATUS, GET_SMS_TYPE, ADDICTION_PREVENTION_CODE } from '@consts';
|
import { STATUS, GET_SMS_TYPE, ADDICTION_PREVENTION_CODE } from '@consts';
|
||||||
import { smsModel } from '@db/Sms';
|
import { smsModel } from '@db/Sms';
|
||||||
@@ -307,7 +307,7 @@ export default class Auth extends Service {
|
|||||||
let canLogin = await this.ctx.service.utils.validateCanLogin();
|
let canLogin = await this.ctx.service.utils.validateCanLogin();
|
||||||
if(!canLogin) return this.ctx.service.utils.resResult(STATUS.ONLINE_USER_MAX);
|
if(!canLogin) return this.ctx.service.utils.resResult(STATUS.ONLINE_USER_MAX);
|
||||||
|
|
||||||
const role = await Role.findByUid(uid, serverId, 'roleId blockType +closeTime');
|
const role = await RoleModel.findByUid(uid, serverId, 'roleId blockType +closeTime');
|
||||||
if (role) {
|
if (role) {
|
||||||
if(role.blockType == BLOCK_TYPE.BLOCK) {
|
if(role.blockType == BLOCK_TYPE.BLOCK) {
|
||||||
return ctx.service.utils.resResult(STATUS.BLOCKED);
|
return ctx.service.utils.resResult(STATUS.BLOCKED);
|
||||||
@@ -336,7 +336,7 @@ export default class Auth extends Service {
|
|||||||
const code = ctx.service.utils.genCode(6);
|
const code = ctx.service.utils.genCode(6);
|
||||||
const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
||||||
|
|
||||||
const role = await Role.createRole(uid, serverId, { roleId, code, roleName: "默认玩家名", seqId, lv: DEFAULT_LV, exp: (getExpByLv(DEFAULT_LV - 1) || { sum: 0 }).sum || 0 }, distinctId);
|
const role = await RoleModel.createRole(uid, serverId, { roleId, code, roleName: "默认玩家名", seqId, lv: DEFAULT_LV, exp: (getExpByLv(DEFAULT_LV - 1) || { sum: 0 }).sum || 0 }, distinctId);
|
||||||
if (role) {
|
if (role) {
|
||||||
if(server.isReview) { // 审核服跳关卡
|
if(server.isReview) { // 审核服跳关卡
|
||||||
await this.skipPrologueWhenReview(roleId);
|
await this.skipPrologueWhenReview(roleId);
|
||||||
@@ -356,7 +356,7 @@ export default class Auth extends Service {
|
|||||||
if(i < toWarId) warStars.push({ id: dicWar.war_id, warType: dicWar.warType, star: 0, stars: [] });
|
if(i < toWarId) warStars.push({ id: dicWar.war_id, warType: dicWar.warType, star: 0, stars: [] });
|
||||||
}
|
}
|
||||||
await RScriptRecordModel.insertScripts(roleId, insertParams, [toWarId]);
|
await RScriptRecordModel.insertScripts(roleId, insertParams, [toWarId]);
|
||||||
await Role.updateRoleInfo(roleId, { warStar: warStars, mainWarId: toWarId - 1 })
|
await RoleModel.updateRoleInfo(roleId, { warStar: warStars, mainWarId: toWarId - 1 })
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -485,12 +485,12 @@ export default class Auth extends Service {
|
|||||||
|
|
||||||
public async closeAccount(roleId: string) {
|
public async closeAccount(roleId: string) {
|
||||||
const ctx = this.ctx;
|
const ctx = this.ctx;
|
||||||
let role = await Role.findByRoleId(roleId, '+closeTime +cancelCloseTime userInfo');
|
let role = await RoleModel.findByRoleId(roleId, '+closeTime +cancelCloseTime userInfo');
|
||||||
if(!role || role.userInfo.uid != ctx.uid ) return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role || role.userInfo.uid != ctx.uid ) return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
if(role.cancelCloseTime > 0 && role.cancelCloseTime + 24 * 60 * 60 > nowSeconds() )
|
if(role.cancelCloseTime > 0 && role.cancelCloseTime + 24 * 60 * 60 > nowSeconds() )
|
||||||
return ctx.service.utils.resResult(STATUS.ROLE_CLOSE_COOL_DOWN, `注销冷却中,请${this.getCdTimeStr(role.cancelCloseTime)}后再试`);
|
return ctx.service.utils.resResult(STATUS.ROLE_CLOSE_COOL_DOWN, `注销冷却中,请${this.getCdTimeStr(role.cancelCloseTime)}后再试`);
|
||||||
if(role.closeTime > 0) return ctx.service.utils.resResult(STATUS.ROLE_CLOSED);
|
if(role.closeTime > 0) return ctx.service.utils.resResult(STATUS.ROLE_CLOSED);
|
||||||
role = await Role.closeAccount(roleId, nowSeconds() + 15 * 24 * 60 * 60);
|
role = await RoleModel.closeAccount(roleId, nowSeconds() + 15 * 24 * 60 * 60);
|
||||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { closeTime: role.closeTime });
|
return ctx.service.utils.resResult(STATUS.SUCCESS, { closeTime: role.closeTime });
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -504,10 +504,10 @@ export default class Auth extends Service {
|
|||||||
|
|
||||||
public async cancelCloseAccount(roleId: string) {
|
public async cancelCloseAccount(roleId: string) {
|
||||||
const ctx = this.ctx;
|
const ctx = this.ctx;
|
||||||
let role = await Role.findByRoleId(roleId, '+cancelCloseTime userInfo');
|
let role = await RoleModel.findByRoleId(roleId, '+cancelCloseTime userInfo');
|
||||||
if(!role || role.userInfo.uid != ctx.uid ) return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
|
if(!role || role.userInfo.uid != ctx.uid ) return ctx.service.utils.resResult(STATUS.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
role = await Role.cancelCloseAccount(roleId, nowSeconds());
|
role = await RoleModel.cancelCloseAccount(roleId, nowSeconds());
|
||||||
if(!role) return ctx.service.utils.resResult(STATUS.ROLE_CLOSE_TIME_OVER);
|
if(!role) return ctx.service.utils.resResult(STATUS.ROLE_CLOSE_TIME_OVER);
|
||||||
return ctx.service.utils.resResult(STATUS.SUCCESS, { closeTime: role.closeTime });
|
return ctx.service.utils.resResult(STATUS.SUCCESS, { closeTime: role.closeTime });
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import { RedisClient } from 'redis';
|
|||||||
import { checkParamPrice, get37GetServerMd5Sign, get37Md5SignA, get37Md5SignB, getChannelId, getRedisSubChannel, md5 } from '../pubUtils/sdkUtil';
|
import { checkParamPrice, get37GetServerMd5Sign, get37Md5SignA, get37Md5SignB, getChannelId, getRedisSubChannel, md5 } from '../pubUtils/sdkUtil';
|
||||||
import { UserOrderModel } from '@db/UserOrder';
|
import { UserOrderModel } from '@db/UserOrder';
|
||||||
import { nowSeconds } from 'app/pubUtils/timeUtil';
|
import { nowSeconds } from 'app/pubUtils/timeUtil';
|
||||||
import Role from '@db/Role';
|
import { RoleModel } from '@db/Role';
|
||||||
import { gameData } from 'app/pubUtils/data';
|
import { gameData } from 'app/pubUtils/data';
|
||||||
import { resResult } from 'app/pubUtils/util';
|
import { resResult } from 'app/pubUtils/util';
|
||||||
import { UserModel } from '@db/User';
|
import { UserModel } from '@db/User';
|
||||||
@@ -62,7 +62,7 @@ export default class Sdk extends Service {
|
|||||||
}
|
}
|
||||||
ctx.service.utils.log('DEBUG', `[${ctx.request.url}] [${ctx.logcode}] pay37Callback check money ok ${order.price} ${params.money}`);
|
ctx.service.utils.log('DEBUG', `[${ctx.request.url}] [${ctx.logcode}] pay37Callback check money ok ${order.price} ${params.money}`);
|
||||||
|
|
||||||
let role = await Role.findByRoleId(order.roleId);
|
let role = await RoleModel.findByRoleId(order.roleId);
|
||||||
if(!role) {
|
if(!role) {
|
||||||
return ctx.service.utils.resResult(PAY_37_CALLBACK_CODE.ROLE_NOT_FOUND, '');
|
return ctx.service.utils.resResult(PAY_37_CALLBACK_CODE.ROLE_NOT_FOUND, '');
|
||||||
}
|
}
|
||||||
@@ -121,7 +121,7 @@ export default class Sdk extends Service {
|
|||||||
// }
|
// }
|
||||||
// console.log('*****pay37Callback check money ok', order.price, params.money)
|
// console.log('*****pay37Callback check money ok', order.price, params.money)
|
||||||
|
|
||||||
// let role = await Role.findByRoleId(order.roleId);
|
// let role = await RoleModel.findByRoleId(order.roleId);
|
||||||
// if(!role) {
|
// if(!role) {
|
||||||
// return ctx.service.utils.resResult(PAY_IOS_37_CALLBACK_CODE.ROLE_NOT_FOUND, '');
|
// return ctx.service.utils.resResult(PAY_IOS_37_CALLBACK_CODE.ROLE_NOT_FOUND, '');
|
||||||
// }
|
// }
|
||||||
@@ -176,7 +176,7 @@ export default class Sdk extends Service {
|
|||||||
}
|
}
|
||||||
console.log('*****refundIOSCallback check order status ok', params.money, typeof params.money)
|
console.log('*****refundIOSCallback check order status ok', params.money, typeof params.money)
|
||||||
|
|
||||||
let role = await Role.findByRoleId(order.roleId);
|
let role = await RoleModel.findByRoleId(order.roleId);
|
||||||
if(!role) {
|
if(!role) {
|
||||||
return ctx.service.utils.resResult(SDK_37_REFUND_CODE.ROLE_NOT_FOUND, '');
|
return ctx.service.utils.resResult(SDK_37_REFUND_CODE.ROLE_NOT_FOUND, '');
|
||||||
}
|
}
|
||||||
@@ -249,7 +249,7 @@ export default class Sdk extends Service {
|
|||||||
return SDK_37_TREAT_CODE.SUCCESS.code;
|
return SDK_37_TREAT_CODE.SUCCESS.code;
|
||||||
}
|
}
|
||||||
|
|
||||||
let role = await Role.findByUidAndSetMark(user.uid, params.sid);
|
let role = await RoleModel.findByUidAndSetMark(user.uid, params.sid);
|
||||||
if(!role) {
|
if(!role) {
|
||||||
console.error('用户名违规处理, 未找到玩家角色', user.uid, params.sid);
|
console.error('用户名违规处理, 未找到玩家角色', user.uid, params.sid);
|
||||||
return SDK_37_TREAT_CODE.SUCCESS.code;
|
return SDK_37_TREAT_CODE.SUCCESS.code;
|
||||||
@@ -307,7 +307,7 @@ export default class Sdk extends Service {
|
|||||||
let user = await UserModel.findUserByChannel(channelId);
|
let user = await UserModel.findUserByChannel(channelId);
|
||||||
if(!user) return resResult(SDK_37_TREAT_CODE.USER_NOT_FOUND);
|
if(!user) return resResult(SDK_37_TREAT_CODE.USER_NOT_FOUND);
|
||||||
|
|
||||||
let role = await Role.findByUid(user.uid, params.sid);
|
let role = await RoleModel.findByUid(user.uid, params.sid);
|
||||||
if(!role) return resResult(SDK_37_TREAT_CODE.ROLE_NOT_FOUND);
|
if(!role) return resResult(SDK_37_TREAT_CODE.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
let userGuild = await UserGuildModel.getMyGuild(role.roleId);
|
let userGuild = await UserGuildModel.getMyGuild(role.roleId);
|
||||||
@@ -465,7 +465,7 @@ export default class Sdk extends Service {
|
|||||||
return resResult(SDK_37_ACTIVITY_CODE.GIFT_CHANNEL_ERR);
|
return resResult(SDK_37_ACTIVITY_CODE.GIFT_CHANNEL_ERR);
|
||||||
}
|
}
|
||||||
|
|
||||||
let role = await Role.findByUid(user.uid, params.server_id);
|
let role = await RoleModel.findByUid(user.uid, params.server_id);
|
||||||
if(!role) return resResult(SDK_37_ACTIVITY_CODE.ROLE_NOT_FOUND);
|
if(!role) return resResult(SDK_37_ACTIVITY_CODE.ROLE_NOT_FOUND);
|
||||||
if(params.role_id && role.roleId != params.role_id) return resResult(SDK_37_ACTIVITY_CODE.ROLE_NOT_FOUND);
|
if(params.role_id && role.roleId != params.role_id) return resResult(SDK_37_ACTIVITY_CODE.ROLE_NOT_FOUND);
|
||||||
|
|
||||||
@@ -514,7 +514,7 @@ export default class Sdk extends Service {
|
|||||||
|
|
||||||
let server = await ServerlistModel.findByServerId(params.server_id);
|
let server = await ServerlistModel.findByServerId(params.server_id);
|
||||||
if(!server) return resResult(SDK_37_ACTIVITY_CODE.SERVER_NOT_FOUND);
|
if(!server) return resResult(SDK_37_ACTIVITY_CODE.SERVER_NOT_FOUND);
|
||||||
let role = await Role.findByUid(user.uid, params.server_id, 'roleId roleName lv createTime serverId');
|
let role = await RoleModel.findByUid(user.uid, params.server_id, 'roleId roleName lv createTime serverId');
|
||||||
if(!role) return resResult(SDK_37_ACTIVITY_CODE.ROLE_NOT_FOUND);
|
if(!role) return resResult(SDK_37_ACTIVITY_CODE.ROLE_NOT_FOUND);
|
||||||
return resResult(SDK_37_ACTIVITY_CODE.SUCCESS, [{
|
return resResult(SDK_37_ACTIVITY_CODE.SUCCESS, [{
|
||||||
id: role.roleId,
|
id: role.roleId,
|
||||||
@@ -559,7 +559,7 @@ export default class Sdk extends Service {
|
|||||||
|
|
||||||
let redisClient: RedisClient = this.ctx.app.context.redisClient;
|
let redisClient: RedisClient = this.ctx.app.context.redisClient;
|
||||||
let servers = await redisClient.hgetallAsync(REDIS_KEY.SERVER);
|
let servers = await redisClient.hgetallAsync(REDIS_KEY.SERVER);
|
||||||
let roles = await Role.findAllByUid(user.uid);
|
let roles = await RoleModel.findAllByUid(user.uid);
|
||||||
let result = roles
|
let result = roles
|
||||||
.filter(role => !role.closeTime || role.closeTime > nowSeconds())
|
.filter(role => !role.closeTime || role.closeTime > nowSeconds())
|
||||||
.map(role => ({
|
.map(role => ({
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { checkWjxSign, getRedisSubChannel } from 'app/pubUtils/sdkUtil';
|
|||||||
import { Service } from 'egg';
|
import { Service } from 'egg';
|
||||||
import { RedisClient } from 'redis';
|
import { RedisClient } from 'redis';
|
||||||
import { REDIS_KEY } from '@consts';
|
import { REDIS_KEY } from '@consts';
|
||||||
import Role from '@db/Role';
|
import { RoleModel } from '@db/Role';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test Service
|
* Test Service
|
||||||
@@ -24,7 +24,7 @@ export default class Sdk extends Service {
|
|||||||
let roleId = params[`q${curConfig.roleIndex}`];
|
let roleId = params[`q${curConfig.roleIndex}`];
|
||||||
if(!roleId) return 0;
|
if(!roleId) return 0;
|
||||||
|
|
||||||
let role = await Role.findByRoleId(roleId);
|
let role = await RoleModel.findByRoleId(roleId);
|
||||||
if(!role) return 0;
|
if(!role) return 0;
|
||||||
|
|
||||||
let rec = await SurveyRecModel.findByRoleIdAndId(roleId, params.activity);
|
let rec = await SurveyRecModel.findByRoleIdAndId(roleId, params.activity);
|
||||||
|
|||||||
Reference in New Issue
Block a user