This commit is contained in:
Jānis 2024-09-06 02:16:27 +03:00
parent 0af98bc6c2
commit fd2027b071
8 changed files with 15 additions and 35 deletions

View File

@ -4,7 +4,6 @@ import { toInventoryResponse } from "@/src/helpers/inventoryHelpers";
import { Inventory } from "@/src/models/inventoryModels/inventoryModel"; import { Inventory } from "@/src/models/inventoryModels/inventoryModel";
import { config } from "@/src/services/configService"; import { config } from "@/src/services/configService";
import { IInventoryDatabase } from "@/src/types/inventoryTypes/inventoryTypes"; import { IInventoryDatabase } from "@/src/types/inventoryTypes/inventoryTypes";
import { ExportCustoms, ExportFlavour } from "warframe-public-export-plus";
// eslint-disable-next-line @typescript-eslint/no-misused-promises // eslint-disable-next-line @typescript-eslint/no-misused-promises
const inventoryController: RequestHandler = async (request, response) => { const inventoryController: RequestHandler = async (request, response) => {

View File

@ -57,8 +57,10 @@ const missionInventoryUpdateController: RequestHandler = async (req, res): Promi
const { InventoryChanges, MissionRewards } = getRewards(lootInventory); const { InventoryChanges, MissionRewards } = getRewards(lootInventory);
const { combinedInventoryChanges, TotalCredits, CreditsBonus, MissionCredits } = const { combinedInventoryChanges, TotalCredits, CreditsBonus, MissionCredits } = combineRewardAndLootInventory(
combineRewardAndLootInventory(InventoryChanges, lootInventory); InventoryChanges,
lootInventory
);
// eslint-disable-next-line @typescript-eslint/no-unused-vars // eslint-disable-next-line @typescript-eslint/no-unused-vars
const InventoryJson = JSON.stringify(await missionInventoryUpdate(combinedInventoryChanges, accountId)); const InventoryJson = JSON.stringify(await missionInventoryUpdate(combinedInventoryChanges, accountId));

View File

@ -1,14 +1,9 @@
import { getAccountIdForRequest } from "@/src/services/loginService"; import { getAccountIdForRequest } from "@/src/services/loginService";
import { getJSONfromString } from "@/src/helpers/stringHelpers";
import { getInventory } from "@/src/services/inventoryService"; import { getInventory } from "@/src/services/inventoryService";
import { IMongoDate } from "@/src/types/commonTypes"; import { IMongoDate } from "@/src/types/commonTypes";
import { RequestHandler } from "express"; import { RequestHandler } from "express";
import { unixTimesInMs } from "@/src/constants/timeConstants"; import { unixTimesInMs } from "@/src/constants/timeConstants";
interface ITrainingResultsRequest {
numLevelsGained: number;
}
interface ITrainingResultsResponse { interface ITrainingResultsResponse {
NewTrainingDate: IMongoDate; NewTrainingDate: IMongoDate;
NewLevel: number; NewLevel: number;

View File

@ -1,6 +1,6 @@
import { getAccountIdForRequest } from "@/src/services/loginService"; import { getAccountIdForRequest } from "@/src/services/loginService";
import { RequestHandler } from "express"; import { RequestHandler } from "express";
import { getInventory, missionInventoryUpdate } from "@/src/services/inventoryService"; import { missionInventoryUpdate } from "@/src/services/inventoryService";
import { combineRewardAndLootInventory } from "@/src/services/missionInventoryUpdateService"; import { combineRewardAndLootInventory } from "@/src/services/missionInventoryUpdateService";
import { getJSONfromString } from "@/src/helpers/stringHelpers"; import { getJSONfromString } from "@/src/helpers/stringHelpers";
import { IMissionInventoryUpdateRequest } from "@/src/types/requestTypes"; import { IMissionInventoryUpdateRequest } from "@/src/types/requestTypes";
@ -8,9 +8,11 @@ import { IMissionInventoryUpdateRequest } from "@/src/types/requestTypes";
// eslint-disable-next-line @typescript-eslint/no-misused-promises // eslint-disable-next-line @typescript-eslint/no-misused-promises
export const updateInventoryController: RequestHandler = async (req, res) => { export const updateInventoryController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req); const accountId = await getAccountIdForRequest(req);
const lootInventory = getJSONfromString(req.body.toString()) as IMissionInventoryUpdateRequest; const lootInventory = getJSONfromString(req.body as string) as IMissionInventoryUpdateRequest;
const { combinedInventoryChanges, TotalCredits, CreditsBonus, MissionCredits } = const { combinedInventoryChanges, TotalCredits, CreditsBonus, MissionCredits } = combineRewardAndLootInventory(
combineRewardAndLootInventory(lootInventory, lootInventory); lootInventory,
lootInventory
);
await missionInventoryUpdate(combinedInventoryChanges, accountId); await missionInventoryUpdate(combinedInventoryChanges, accountId);

View File

@ -694,17 +694,7 @@ const addMissionComplete = (inventory: IInventoryDatabaseDocument, { Tag, Comple
}; };
export const missionInventoryUpdate = async (data: IMissionInventoryUpdateRequest, accountId: string) => { export const missionInventoryUpdate = async (data: IMissionInventoryUpdateRequest, accountId: string) => {
const { const { RawUpgrades, MiscItems, RegularCredits, ChallengeProgress, Consumables, Recipes, Missions } = data;
RawUpgrades,
MiscItems,
RegularCredits,
ChallengeProgress,
FusionPoints,
Consumables,
Recipes,
Missions,
FusionTreasures
} = data;
const inventory = await getInventory(accountId); const inventory = await getInventory(accountId);
// credits // credits

View File

@ -86,7 +86,7 @@ const combineRewardAndLootInventory = (
combinedInventoryChanges: lootInventory, combinedInventoryChanges: lootInventory,
TotalCredits: [totalCredits, totalCredits], TotalCredits: [totalCredits, totalCredits],
CreditsBonus: [creditsBonus, creditsBonus], CreditsBonus: [creditsBonus, creditsBonus],
MissionCredits: [missionCredits, missionCredits], MissionCredits: [missionCredits, missionCredits]
}; };
}; };

View File

@ -23,17 +23,9 @@ export type IBinChanges = {
Extra?: number; Extra?: number;
}; };
export type SlotPurchaseName = export type SlotPurchaseName = "SuitSlotItem" | "TwoSentinelSlotItem" | "TwoWeaponSlotItem";
| "SuitSlotItem"
| "TwoSentinelSlotItem"
| "TwoWeaponSlotItem";
export type SlotNames = export type SlotNames = "SuitBin" | "WeaponBin" | "MechBin" | "PveBonusLoadoutBin" | "SentinelBin";
| "SuitBin"
| "WeaponBin"
| "MechBin"
| "PveBonusLoadoutBin"
| "SentinelBin";
export type SlotPurchase = { export type SlotPurchase = {
[P in SlotPurchaseName]: { name: SlotNames; slotsPerPurchase: number }; [P in SlotPurchaseName]: { name: SlotNames; slotsPerPurchase: number };