Files
HiveGrid-Wireframes/hivegrid-cloud/apps/web/app/modules/usage/services/Credits.server.ts
T

24 lines
751 B
TypeScript

import { createCredit } from "../db/credits.db.server";
import { CreditType, CreditTypes } from "../dtos/CreditType";
import { createScopedLogger } from "~/utils/logger.server";
const creditsLogger = createScopedLogger("usage.credits");
async function create(data: { tenantId: string; userId: string | null; type: CreditType; objectId: string | null }) {
const creditType = CreditTypes.find((t) => t.value === data.type);
if (!creditType) {
creditsLogger.error({ type: data.type }, `Credit type not found: ${data.type}`);
return;
}
return await createCredit({
tenantId: data.tenantId,
userId: data.userId,
type: data.type,
objectId: data.objectId,
amount: creditType.amount,
});
}
export default {
create,
};