diff --git a/src/services/importService.ts b/src/services/importService.ts index 2afa5313..87ba9231 100644 --- a/src/services/importService.ts +++ b/src/services/importService.ts @@ -1,11 +1,17 @@ -/* eslint-disable @typescript-eslint/no-unused-vars */ - import { Types } from "mongoose"; import { IEquipmentClient, IEquipmentDatabase } from "../types/inventoryTypes/commonInventoryTypes"; import { IMongoDate } from "../types/commonTypes"; -import { IInventoryClient, IWeaponSkinClient, IWeaponSkinDatabase } from "../types/inventoryTypes/inventoryTypes"; +import { + IInventoryClient, + IUpgradeClient, + IUpgradeDatabase, + IWeaponSkinClient, + IWeaponSkinDatabase +} from "../types/inventoryTypes/inventoryTypes"; import { TInventoryDatabaseDocument } from "../models/inventoryModels/inventoryModel"; +/* eslint-disable @typescript-eslint/no-unused-vars */ + const convertDate = (value: IMongoDate): Date => { return new Date(parseInt(value.$date.$numberLong)); }; @@ -33,6 +39,14 @@ const convertWeaponSkin = (client: IWeaponSkinClient): IWeaponSkinDatabase => { }; }; +const convertUpgrade = (client: IUpgradeClient): IUpgradeDatabase => { + const { ItemId, ...rest } = client; + return { + ...rest, + _id: new Types.ObjectId(client.ItemId.$oid) + }; +}; + const replaceArray = (arr: T[], replacement: T[]): void => { arr.splice(0, arr.length); replacement.forEach(x => { @@ -43,4 +57,5 @@ const replaceArray = (arr: T[], replacement: T[]): void => { export const importInventory = (db: TInventoryDatabaseDocument, client: IInventoryClient): void => { replaceArray(db.Suits, client.Suits.map(convertEquipment)); replaceArray(db.WeaponSkins, client.WeaponSkins.map(convertWeaponSkin)); + replaceArray(db.Upgrades, client.Upgrades.map(convertUpgrade)); };