🎈 perf(日志): gvg内的道具添加日志记录

This commit is contained in:
luying
2023-05-25 14:16:04 +08:00
parent bac6f31c70
commit e7541c836b
4 changed files with 37 additions and 4 deletions

View File

@@ -1241,6 +1241,7 @@ export enum LOG_TYPE {
BOSS_HP = 'bossHp', // 演武台boss血量
REBIRTH = 'rebirth', // 演武台boss血量
MEMORY = 'memory', // 保存内存
GVG_ITEM = 'gvgItemChange', // gvg道具变动
}
export enum MEMORY_LOG_TYPE {

View File

@@ -181,6 +181,16 @@ export default class UserLog extends BaseModel {
@prop({ required: false })
memoryData: string; // 内存数据
// gvg道具数据
@prop({ required: false })
configId: number; // gvg赛季
@prop({ required: false })
leagueCode: string; // 所在联军
@prop({ required: false })
expireTime: number; // 过期时间
public static async createRecord(params: UserLogModelTypeParam) {
const r = await UserLogModel.insertMany(params);
return r;

View File

@@ -81,6 +81,20 @@ export async function saveItemChangeLog(roleId: string, goods: { id: number, cou
}
}
export async function saveGVGItemChangeLog(roleId: string, leagueCode: string, goods: { id: number, count: number, inc: number, expireTime: number }[], reason: number) {
try {
let role = await RoleModel.findByRoleId(roleId, 'userInfo roleId roleName serverId');
let params = getParamByRole(role);
for (let { id, count, inc, expireTime } of goods) {
let dicGVGItem = gameData.gvgItem.get(id);
if(inc == 0 || !dicGVGItem) continue;
await UserLogModel.createRecord({ type: LOG_TYPE.GVG_ITEM, ...params, leagueCode, itemId: id, itemName: dicGVGItem.name, inc, count, expireTime, itemChangeReason: reason })
}
} catch (e) {
console.error(e);
}
}
export async function saveGoldChangeLog(roleId: string, count: number, inc: number, reason: number) {
let id = CURRENCY_BY_TYPE.get(CURRENCY_TYPE.GOLD);
return await saveItemChangeLog(roleId, [{ id, count, inc }], reason);