From 50aeb2e00327ae146cd829961033ccda9e1d21b4 Mon Sep 17 00:00:00 2001 From: luying Date: Thu, 11 May 2023 17:51:51 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9E=20fix(=E7=99=BB=E5=BD=95):=20?= =?UTF-8?q?=E5=88=9B=E5=BB=BA=E8=A7=92=E8=89=B2=E8=B4=A6=E5=8F=B7=E5=B9=B6?= =?UTF-8?q?=E5=8F=91=E6=97=B6=E5=8F=AF=E8=83=BD=E4=BC=9A=E6=8A=A5=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=BA=93=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- shared/db/User.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/shared/db/User.ts b/shared/db/User.ts index 607236d8d..8d6e5b2a5 100644 --- a/shared/db/User.ts +++ b/shared/db/User.ts @@ -133,8 +133,9 @@ export default class User extends BaseModel { update = Object.assign(update, doc.toJSON(), { platform, pkgName, serverType, createTime: curTime, uid, userCode, username: `用户${uid}`, isGuest, token, lastLoginTime: curTime, guestTime, ip, deviceId }); if (isGuest) update["guestId"] = _tel; delete update["device"]; + delete update["_id"]; - const user: UserType = await UserModel.findOneAndUpdate({ tel }, { $set: update, $addToSet: { device: deviceId } }, { upsert: true, new: true }).lean({ getters: true }); + const user: UserType = await UserModel.findOneAndUpdate({ tel }, { $setOnInsert: update, $addToSet: { device: deviceId } }, { upsert: true, new: true }).lean({ getters: true }); return user; } @@ -147,8 +148,9 @@ export default class User extends BaseModel { let update = {}; update = Object.assign(update, doc.toJSON(), { platform, pkgName, serverType, createTime: curTime, uid, userCode, username: `用户${uid}`, token, lastLoginTime: curTime, ip, channelInfo, channelType, deviceId }); delete update["device"]; + delete update["_id"]; - const user: UserType = await UserModel.findOneAndUpdate({ channelId }, { $set: update, $addToSet: { device: deviceId } }, { upsert: true, new: true }).lean({ getters: true }); + const user: UserType = await UserModel.findOneAndUpdate({ channelId }, { $setOnInsert: update, $addToSet: { device: deviceId } }, { upsert: true, new: true }).lean({ getters: true }); return user; }