feat: implement stepSequencers.php #327

Merged
Sainan merged 1 commits from step-sequencers into main 2024-06-19 01:33:56 -07:00
3 changed files with 17 additions and 1 deletions

View File

@ -0,0 +1,14 @@
import { RequestHandler } from "express";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { getInventory } from "@/src/services/inventoryService";
import { IStepSequencer } from "@/src/types/inventoryTypes/inventoryTypes";
export const stepSequencersController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const inventory = await getInventory(accountId);
const stepSequencer = JSON.parse(req.body.toString()) as IStepSequencer;
delete stepSequencer.ItemId;
const stepSequencerIndex = inventory.StepSequencers.push(stepSequencer);
const changedInventory = await inventory.save();
res.json(changedInventory.StepSequencers[stepSequencerIndex - 1]); // unsure about the expected response format, but it seems anything works.
};

View File

@ -50,6 +50,7 @@ import { setSupportedSyndicateController } from "@/src/controllers/api/setSuppor
import { shipDecorationsController } from "@/src/controllers/api/shipDecorationsController";
import { startDojoRecipeController } from "@/src/controllers/api/startDojoRecipeController";
import { startRecipeController } from "@/src/controllers/api/startRecipeController";
import { stepSequencersController } from "@/src/controllers/api/stepSequencersController";
import { surveysController } from "@/src/controllers/api/surveysController";
import { syndicateSacrificeController } from "../controllers/api/syndicateSacrificeController";
import { trainingResultController } from "@/src/controllers/api/trainingResultController";
@ -117,6 +118,7 @@ apiRouter.post("/setShipCustomizations.php", setShipCustomizationsController);
apiRouter.post("/shipDecorations.php", shipDecorationsController);
apiRouter.post("/startDojoRecipe.php", startDojoRecipeController);
apiRouter.post("/startRecipe.php", startRecipeController);
apiRouter.post("/stepSequencers.php", stepSequencersController);
apiRouter.post("/syndicateSacrifice.php", syndicateSacrificeController);
apiRouter.post("/trainingResult.php", trainingResultController);
apiRouter.post("/updateChallengeProgress.php", updateChallengeProgressController);

View File

@ -831,7 +831,7 @@ export interface IStepSequencer {
NotePacks: INotePacks;
FingerPrint: string;
Name: string;
ItemId: IOid;
ItemId?: IOid;
}
export interface INotePacks {