feat:初始化业务目录

This commit is contained in:
2026-05-09 10:36:20 +08:00
parent 881506655d
commit 56951c0383
60 changed files with 6955 additions and 184 deletions

View File

@@ -0,0 +1,54 @@
import { ModuleScaffold } from "@/components/admin/module-scaffold";
import { getAdminPing } from "@/lib/admin-http";
import { dashboardModuleMeta } from "@/modules/dashboard/meta";
import type { Metadata } from "next";
export const metadata: Metadata = {
title: "总览",
};
export default async function AdminDashboardPage() {
const ping = await getAdminPing();
const apiReady = process.env.NEXT_PUBLIC_LOTTERY_API_BASE_URL?.trim() !== "";
return (
<ModuleScaffold
title={dashboardModuleMeta.title}
description={dashboardModuleMeta.description}
>
<div className="grid gap-4 sm:grid-cols-2">
<div className="rounded-xl border border-black/10 bg-white p-5 shadow-sm dark:border-white/10 dark:bg-zinc-900">
<h2 className="text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:text-zinc-400">
API
</h2>
<p className="mt-2 text-sm text-foreground">
{apiReady ? (
<span className="font-medium text-emerald-600 dark:text-emerald-400">
NEXT_PUBLIC_LOTTERY_API_BASE_URL
</span>
) : (
<span className="font-medium text-amber-600 dark:text-amber-400">
Laravel
</span>
)}
</p>
<p className="mt-3 text-xs leading-relaxed text-zinc-500 dark:text-zinc-400">
Laravel {" "}
<code className="rounded bg-zinc-100 px-1 py-0.5 dark:bg-zinc-800">
/api/v1/admin/ping
</code>
</p>
</div>
<div className="rounded-xl border border-black/10 bg-white p-5 shadow-sm dark:border-white/10 dark:bg-zinc-900">
<h2 className="text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:text-zinc-400">
Admin Ping
</h2>
<p className="mt-2 font-mono text-sm text-foreground">
{!apiReady ? "—" : ping ? JSON.stringify(ping) : "请求失败或未返回信封"}
</p>
</div>
</div>
</ModuleScaffold>
);
}