forked from OpenWF/SpaceNinjaServer
		
	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