From 5a5f6106a34425cea7efb8fa739d0a2775c5864f Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Mon, 30 Jun 2025 17:55:06 -0700 Subject: [PATCH] chore: save inventory and account in parallel when claiming login reward (#2371) Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2371 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com> --- src/controllers/api/loginRewardsController.ts | 4 +--- src/controllers/api/loginRewardsSelectionController.ts | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/controllers/api/loginRewardsController.ts b/src/controllers/api/loginRewardsController.ts index 19940d08..7678722f 100644 --- a/src/controllers/api/loginRewardsController.ts +++ b/src/controllers/api/loginRewardsController.ts @@ -48,10 +48,8 @@ export const loginRewardsController: RequestHandler = async (req, res) => { response.DailyTributeInfo.HasChosenReward = true; response.DailyTributeInfo.ChosenReward = randomRewards[0]; response.DailyTributeInfo.NewInventory = await claimLoginReward(inventory, randomRewards[0]); - await inventory.save(); - setAccountGotLoginRewardToday(account); - await account.save(); + await Promise.all([inventory.save(), account.save()]); sendWsBroadcastTo(account._id.toString(), { update_inventory: true }); } diff --git a/src/controllers/api/loginRewardsSelectionController.ts b/src/controllers/api/loginRewardsSelectionController.ts index e3a699ec..63e160f6 100644 --- a/src/controllers/api/loginRewardsSelectionController.ts +++ b/src/controllers/api/loginRewardsSelectionController.ts @@ -35,10 +35,8 @@ export const loginRewardsSelectionController: RequestHandler = async (req, res) chosenReward = randomRewards.find(x => x.StoreItemType == body.ChosenReward)!; inventoryChanges = await claimLoginReward(inventory, chosenReward); } - await inventory.save(); - setAccountGotLoginRewardToday(account); - await account.save(); + await Promise.all([inventory.save(), account.save()]); sendWsBroadcastTo(account._id.toString(), { update_inventory: true }); res.json({