setAccountCheatController type check (2)

This commit is contained in:
AlexisinGit 2025-09-23 04:45:37 +08:00
parent 7ec4cd9299
commit 491af09c30

View File

@ -3,11 +3,18 @@ import { getAccountIdForRequest } from "../../services/loginService.ts";
import { sendWsBroadcastTo } from "../../services/wsService.ts"; import { sendWsBroadcastTo } from "../../services/wsService.ts";
import type { IAccountCheats } from "../../types/inventoryTypes/inventoryTypes.ts"; import type { IAccountCheats } from "../../types/inventoryTypes/inventoryTypes.ts";
import type { RequestHandler } from "express"; import type { RequestHandler } from "express";
import { logger } from "../../utils/logger.ts";
export const setAccountCheatController: RequestHandler = async (req, res) => { export const setAccountCheatController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req); const accountId = await getAccountIdForRequest(req);
const payload = req.body as ISetAccountCheatRequest; const payload = req.body as ISetAccountCheatRequest;
const inventory = await getInventory(accountId, payload.key); const inventory = await getInventory(accountId, payload.key);
if (payload.value == undefined) {
logger.warn(`[setAccountCheatController] set ${payload.key} to ${payload.value}`);
return
}
inventory[payload.key] = payload.value as never; inventory[payload.key] = payload.value as never;
await inventory.save(); await inventory.save();
res.end(); res.end();
@ -18,5 +25,5 @@ export const setAccountCheatController: RequestHandler = async (req, res) => {
interface ISetAccountCheatRequest { interface ISetAccountCheatRequest {
key: keyof IAccountCheats; key: keyof IAccountCheats;
value: boolean | number; value: IAccountCheats[keyof IAccountCheats];
} }