88 lines
2.4 KiB
TypeScript
88 lines
2.4 KiB
TypeScript
import { config } from "dotenv";
|
|
|
|
config({ path: ".env.local" });
|
|
|
|
async function main() {
|
|
const { db } = await import("@/lib/db");
|
|
const { getAccountTypeLabel, getActivateStatusLabel, getRequestStatusLabel } =
|
|
await import("@/lib/utils");
|
|
|
|
const [maestroCount, extensionCount, upgradeCount] = await Promise.all([
|
|
db.maestro.count(),
|
|
db.maestro_extension.count(),
|
|
db.maestro_upgrade.count(),
|
|
]);
|
|
|
|
const [maestros, extensionRequests, upgradeRequests] = await Promise.all([
|
|
db.maestro.findMany({
|
|
orderBy: { MaestroID: "desc" },
|
|
select: {
|
|
MaestroID: true,
|
|
Name: true,
|
|
AccountType: true,
|
|
ActivateStatus: true,
|
|
PlayerCount: true,
|
|
},
|
|
take: 3,
|
|
}),
|
|
db.maestro_extension.findMany({
|
|
orderBy: { MaestroExtensionID: "desc" },
|
|
select: {
|
|
MaestroExtensionID: true,
|
|
MaestroID: true,
|
|
AccountType: true,
|
|
Status: true,
|
|
},
|
|
take: 3,
|
|
}),
|
|
db.maestro_upgrade.findMany({
|
|
orderBy: { MaestroUpgradeID: "desc" },
|
|
select: {
|
|
MaestroUpgradeID: true,
|
|
MaestroID: true,
|
|
RegisteredAccountType: true,
|
|
RequestedAccountType: true,
|
|
Status: true,
|
|
},
|
|
take: 3,
|
|
}),
|
|
]);
|
|
|
|
console.log("DB connection OK");
|
|
console.log({
|
|
counts: {
|
|
maestro: maestroCount,
|
|
maestro_extension: extensionCount,
|
|
maestro_upgrade: upgradeCount,
|
|
},
|
|
maestros: maestros.map((maestro) => ({
|
|
id: maestro.MaestroID,
|
|
name: maestro.Name,
|
|
accountType: getAccountTypeLabel(maestro.AccountType),
|
|
activateStatus: getActivateStatusLabel(maestro.ActivateStatus),
|
|
playerCount: maestro.PlayerCount,
|
|
})),
|
|
extensionRequests: extensionRequests.map((request) => ({
|
|
id: request.MaestroExtensionID,
|
|
maestroId: request.MaestroID,
|
|
accountType: getAccountTypeLabel(request.AccountType),
|
|
status: getRequestStatusLabel(request.Status),
|
|
})),
|
|
upgradeRequests: upgradeRequests.map((request) => ({
|
|
id: request.MaestroUpgradeID,
|
|
maestroId: request.MaestroID,
|
|
from: getAccountTypeLabel(request.RegisteredAccountType),
|
|
to: getAccountTypeLabel(request.RequestedAccountType),
|
|
status: getRequestStatusLabel(request.Status),
|
|
})),
|
|
});
|
|
|
|
await db.$disconnect();
|
|
}
|
|
|
|
main().catch((error) => {
|
|
console.error("DB connection check failed");
|
|
console.error(error);
|
|
process.exitCode = 1;
|
|
});
|