feat
This commit is contained in:
@@ -7,6 +7,7 @@ import { notifyPaidTicketDiscord } from "@/lib/commission/discord";
|
||||
import { verifyCommissionSlip } from "@/lib/commission/payment";
|
||||
import { notifyCommission } from "@/lib/commission/server";
|
||||
import { checkoutExpired } from "@/lib/commission/checkout-expiration";
|
||||
import { commissionSlipLockKey } from "@/lib/commission/slip-lock";
|
||||
import { getMediaStorage } from "@/lib/media/storage";
|
||||
import { inspectImage } from "@/lib/media/inspect";
|
||||
import { getRedisClient } from "@/lib/redis/client";
|
||||
@@ -21,7 +22,7 @@ export async function verifyAndCreateTicket(checkout: Checkout, file: FormDataEn
|
||||
throw new HttpError(415, "invalid-slip-image");
|
||||
|
||||
const redis = await getRedisClient();
|
||||
const lockKey = `${process.env.REDIS_SECURITY_PREFIX || "buzz:security"}:commission-slip-lock:${checkout.id}`;
|
||||
const lockKey = commissionSlipLockKey(checkout.id);
|
||||
const lockId = crypto.randomUUID();
|
||||
if (await redis.set(lockKey, lockId, "EX", 60, "NX") !== "OK")
|
||||
throw new HttpError(409, "slip-verification-in-progress");
|
||||
|
||||
Reference in New Issue
Block a user