feat: handle updateChallengeProgress #235
@ -1,7 +1,20 @@
|
||||
import { RequestHandler } from "express";
|
||||
import { IChallengeProgress } from "@/src/types/inventoryTypes/inventoryTypes";
|
||||
import { getJSONfromString } from "@/src/helpers/stringHelpers";
|
||||
import { getAccountIdForRequest } from "@/src/services/loginService";
|
||||
import { getInventory, addChallenges } from "@/src/services/inventoryService";
|
||||
|
||||
const updateChallengeProgressController: RequestHandler = (_request, response) => {
|
||||
response.sendStatus(200);
|
||||
interface IUpdateChallengeProgessRequest {
|
||||
ChallengeProgress: IChallengeProgress[];
|
||||
}
|
||||
|
||||
const updateChallengeProgressController: RequestHandler = async (req, res) => {
|
||||
const payload: IUpdateChallengeProgessRequest = getJSONfromString(req.body.toString());
|
||||
const accountId = await getAccountIdForRequest(req);
|
||||
const inventory = await getInventory(accountId);
|
||||
addChallenges(inventory, payload.ChallengeProgress);
|
||||
inventory.save();
|
||||
res.status(200).end();
|
||||
};
|
||||
|
||||
export { updateChallengeProgressController };
|
||||
|
@ -290,7 +290,7 @@ const addMods = (inventory: IInventoryDatabaseDocument, itemsArray: IRawUpgrade[
|
||||
});
|
||||
};
|
||||
|
||||
const addChallenges = (inventory: IInventoryDatabaseDocument, itemsArray: IChallengeProgress[] | undefined) => {
|
||||
export const addChallenges = (inventory: IInventoryDatabaseDocument, itemsArray: IChallengeProgress[] | undefined) => {
|
||||
const category = inventory.ChallengeProgress;
|
||||
|
||||
itemsArray?.forEach(({ Name, Progress }) => {
|
||||
|
Loading…
x
Reference in New Issue
Block a user