From 6e6e6be87c35044d1f15dfa21587cc648aa8274e Mon Sep 17 00:00:00 2001 From: khushal Date: Thu, 5 Dec 2024 12:36:34 +0530 Subject: [PATCH] (20241205) Trying aggregation pipeline in set_token (mail oauth). --- models/behaviour/mail/oauth_v2.py | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/models/behaviour/mail/oauth_v2.py b/models/behaviour/mail/oauth_v2.py index c4b5240..3840bb5 100644 --- a/models/behaviour/mail/oauth_v2.py +++ b/models/behaviour/mail/oauth_v2.py @@ -222,25 +222,25 @@ class MailOAuthModel(BaseModel): "_id": ObjectId(token_id), "clientUserId": client_user_id }), - update = { + update = [{ "$set": { "token": token, "status": "active", "lastRefreshTs": request_ts, - # "firstRefreshTs": { - # "$cond": { - # "if": { - # "$or": [ - # {"$eq": ["$firstRefreshTs", None]}, - # {"$eq": [{"$type": "$firstRefreshTs"}, "missing"]} - # ] - # }, - # "then": request_ts, - # "else": "$firstRefreshTs" - # } - # } + "firstRefreshTs": { + "$cond": { + "if": { + "$or": [ + {"$eq": ["$firstRefreshTs", None]}, + {"$eq": [{"$type": "$firstRefreshTs"}, "missing"]} + ] + }, + "then": request_ts, + "else": "$firstRefreshTs" + } + } } - }, + }], projection = {"token": False}, return_updated = True, upsert = False