XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

SpaceNinjaServer

A simple server for a small space ninja game

公开
关注 0 Fork 1 Star 0
返回提交历史

XFEstudio/SpaceNinjaServer

chore: convert legacy voidTrader purchase request (#3995)

Closes #3994 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3995 Reviewed-by: Sainan <63328889+sainan@users.noreply.github.com> Co-authored-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Co-committed-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com>

a5743df3
AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com>
提交于

代码差异

3 个文件 +7 -3
Modified src/controllers/api/purchaseController.ts +2 -1
@@ -17,7 +17,8 @@ export const purchasePostController: RequestHandler = async (req, res) => {
17 17 logger.debug("converting legacy purchase request", purchaseRequest);
18 18 purchaseRequest = {
19 19 PurchaseParams: {
20 Source: PurchaseSource.Market,
20 Source: purchaseRequest.voidTraderId ? PurchaseSource.VoidTrader : PurchaseSource.Market,
21 SourceId: purchaseRequest.voidTraderId,
21 22 StoreItem: toStoreItem(purchaseRequest.productName),
22 23 Quantity: purchaseRequest.quantity,
23 24 UsePremium: purchaseRequest.usePremium == "1"
Modified src/services/purchaseService.ts +4 -2
@@ -33,7 +33,7 @@ import {
33 33 import type { TInventoryDatabaseDocument } from "../models/inventoryModels/inventoryModel.ts";
34 34 import { fromStoreItem, getBoosterPack, getBundle, getPrice, toStoreItem } from "./itemDataService.ts";
35 35 import { DailyDeal } from "../models/worldStateModel.ts";
36 import { fromMongoDate, toMongoDate } from "../helpers/inventoryHelpers.ts";
36 import { fromMongoDate, fromOid, toMongoDate } from "../helpers/inventoryHelpers.ts";
37 37 import { Guild } from "../models/guildModel.ts";
38 38 import { handleGuildGoalProgress } from "./guildService.ts";
39 39 import { Types } from "mongoose";
@@ -231,7 +231,9 @@ export const handlePurchase = async (
231 231 break;
232 232 case PurchaseSource.VoidTrader: {
233 233 const worldState = getWorldState(purchaseRequest.buildLabel);
234 const voidTrader = worldState.VoidTraders.find(x => x._id.$oid == purchaseRequest.PurchaseParams.SourceId!);
234 const voidTrader = worldState.VoidTraders.find(
235 x => fromOid(x._id) == purchaseRequest.PurchaseParams.SourceId!
236 );
235 237 if (!voidTrader) {
236 238 throw new Error("invalid request source");
237 239 }
Modified src/types/purchaseTypes.ts +1 -0
@@ -53,6 +53,7 @@ export interface IPurchaseRequestU16 {
53 53 productName: string;
54 54 quantity: number;
55 55 usePremium: "1" | "0";
56 voidTraderId?: string;
56 57 }
57 58
58 59 export interface IPurchaseParams {