jskim-node #396

Merged
kjs merged 44 commits from jskim-node into main 2026-02-28 14:37:11 +09:00
1 changed files with 50 additions and 0 deletions
Showing only changes of commit 52d95b4798 - Show all commits

View File

@ -0,0 +1,50 @@
"use client";
import { useEffect } from "react";
import { useParams, useRouter } from "next/navigation";
import { Loader2 } from "lucide-react";
import { apiClient } from "@/lib/api/client";
/**
* /screen/COMPANY_7_167 /screens/4153
* URL이 screenCode , screenId로
*/
export default function ScreenCodeRedirectPage() {
const params = useParams();
const router = useRouter();
const screenCode = params.screenCode as string;
useEffect(() => {
if (!screenCode) return;
const numericId = parseInt(screenCode);
if (!isNaN(numericId)) {
router.replace(`/screens/${numericId}`);
return;
}
const resolve = async () => {
try {
const res = await apiClient.get("/screen-management/screens", {
params: { screenCode },
});
const screens = res.data?.data || [];
if (screens.length > 0) {
const id = screens[0].screenId || screens[0].screen_id;
router.replace(`/screens/${id}`);
} else {
router.replace("/");
}
} catch {
router.replace("/");
}
};
resolve();
}, [screenCode, router]);
return (
<div className="flex h-full items-center justify-center">
<Loader2 className="text-muted-foreground h-6 w-6 animate-spin" />
</div>
);
}