好友:寻宝关系加成及黑名单屏蔽

This commit is contained in:
luying
2021-02-05 11:29:38 +08:00
parent f48be637af
commit 871e71ab54
8 changed files with 113 additions and 10 deletions
+11 -4
View File
@@ -4,7 +4,7 @@ import { getFriendLvByExp } from '../pubUtils/data';
import * as util from '../pubUtils/friendUtil';
import { nowSeconds } from '../pubUtils/timeUtil';
import { FRIEND } from '../pubUtils/dicParam';
import { FRIEND_SELECT } from '../consts';
import { FRIEND_SELECT, FRIEND_SHIP_SELECT } from '../consts';
/**
* 好友直接的亲密值
@@ -59,7 +59,7 @@ export default class FriendShip extends BaseModel {
const doc = new FriendShipModel();
const update = Object.assign(doc.toJSON(), { roleIdA, roleIdB, roleIds });
const result: FriendShipType = await FriendShipModel.findOneAndUpdate({ roleIds }, { $setOnInsert: update }, { upsert: true, new: true }).lean();
const result: FriendShipType = await FriendShipModel.findOneAndUpdate({ roleIds }, { $setOnInsert: update }, { upsert: true, new: true }).lean({ virtuals: true });
return result;
}
@@ -69,7 +69,7 @@ export default class FriendShip extends BaseModel {
if (roleIdList.length != 2) return false;
let { roleIds } = util.getRoleIds(roleIdList);
const result: FriendShipType = await FriendShipModel.findOneAndUpdate({ roleIds }, { $set: { friendValue: 0 } }, { new: true }).lean();
const result: FriendShipType = await FriendShipModel.findOneAndUpdate({ roleIds }, { $set: { friendValue: 0 } }, { new: true }).lean({ virtuals: true });
return result;
}
@@ -84,7 +84,7 @@ export default class FriendShip extends BaseModel {
let obj = this.getRefData();
const result: FriendShipType = await FriendShipModel.findOneAndUpdate({ roleIds }, {
$set: { ...obj }
}, { new: true }).lean();
}, { new: true }).lean({ virtuals: true });
return result;
}
@@ -155,6 +155,13 @@ export default class FriendShip extends BaseModel {
.lean({ virtuals: true });
return result;
}
public static async getFriendLv(roleId: string, hisRoleId: string) {
let { roleIds } = util.getRoleIds([roleId, hisRoleId]);
let result: FriendShipType = await FriendShipModel.findOne({ roleIds }).select(FRIEND_SHIP_SELECT.GET_FRIEND_VALUE).lean({ virtuals: true });
return result;
}
}
export const FriendShipModel = getModelForClass(FriendShip);