feat: handle updateChallengeProgress (#235)
This commit is contained in:
parent
6294a315a8
commit
03704d0f96
@ -1,7 +1,20 @@
|
|||||||
import { RequestHandler } from "express";
|
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) => {
|
interface IUpdateChallengeProgessRequest {
|
||||||
response.sendStatus(200);
|
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 };
|
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;
|
const category = inventory.ChallengeProgress;
|
||||||
|
|
||||||
itemsArray?.forEach(({ Name, Progress }) => {
|
itemsArray?.forEach(({ Name, Progress }) => {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user