update success upload page

This commit is contained in:
DmsAnhr 2026-01-28 12:57:20 +07:00
parent 54aee14256
commit 26b3abeabf

View File

@ -123,7 +123,7 @@ export default function StepSuccess() {
return "⬜"; return "⬜";
}; };
if (!validatedData) return null; // Prevent render if redirecting if (!validatedData){ return null;}else{console.log("val", validatedData);} // Prevent render if redirecting
return ( return (
<div className="max-w-4xl mx-auto text-center py-10"> <div className="max-w-4xl mx-auto text-center py-10">
@ -160,39 +160,39 @@ export default function StepSuccess() {
</div> </div>
<div className="space-y-4 relative z-10"> <div className="space-y-4 relative z-10">
{validatedData.table_name && ( {validatedData.data.table_name && (
<div className="flex justify-between items-center bg-gray-50 px-4 py-3 rounded-lg border border-gray-200 hover:shadow-sm transition"> <div className="flex justify-between items-center bg-gray-50 px-4 py-3 rounded-lg border border-gray-200 hover:shadow-sm transition">
<span className="text-gray-600 font-medium">📁 Nama Tabel</span> <span className="text-gray-600 font-medium">📁 Nama Tabel</span>
<span className="text-gray-900 font-semibold">{validatedData.table_name}</span> <span className="text-gray-900 font-semibold">{validatedData.data.table_name}</span>
</div> </div>
)} )}
{validatedData.total_rows && ( {validatedData.data.total_rows && (
<div className="flex justify-between items-center bg-gray-50 px-4 py-3 rounded-lg border border-gray-200 hover:shadow-sm transition"> <div className="flex justify-between items-center bg-gray-50 px-4 py-3 rounded-lg border border-gray-200 hover:shadow-sm transition">
<span className="text-gray-600 font-medium">📊 Jumlah Baris</span> <span className="text-gray-600 font-medium">📊 Jumlah Baris</span>
<span className="text-gray-900 font-semibold"> <span className="text-gray-900 font-semibold">
{validatedData.total_rows.toLocaleString()} data {validatedData.data.total_rows.toLocaleString()} data
</span> </span>
</div> </div>
)} )}
{validatedData.geometry_type && ( {validatedData.data.geometry_type && (
<div className="flex justify-between items-center bg-gray-50 px-4 py-3 rounded-lg border border-gray-200 hover:shadow-sm transition"> <div className="flex justify-between items-center bg-gray-50 px-4 py-3 rounded-lg border border-gray-200 hover:shadow-sm transition">
<span className="text-gray-600 font-medium">🧭 Jenis Geometry</span> <span className="text-gray-600 font-medium">🧭 Jenis Geometry</span>
<span className="text-gray-900 font-semibold"> <span className="text-gray-900 font-semibold">
{Array.isArray(validatedData.geometry_type) {Array.isArray(validatedData.data.geometry_type)
? validatedData.geometry_type.map((g: string) => `${geomIcons[g] || "❓"} ${g}`).join(", ") ? validatedData.data.geometry_type.map((g: string) => `${geomIcons[g] || "❓"} ${g}`).join(", ")
: validatedData.geometry_type : validatedData.data.geometry_type
} }
</span> </span>
</div> </div>
)} )}
{validatedData.upload_time && ( {validatedData.data.upload_time && (
<div className="flex justify-between items-center bg-gray-50 px-4 py-3 rounded-lg border border-gray-200 hover:shadow-sm transition"> <div className="flex justify-between items-center bg-gray-50 px-4 py-3 rounded-lg border border-gray-200 hover:shadow-sm transition">
<span className="text-gray-600 font-medium">🕒 Waktu Upload</span> <span className="text-gray-600 font-medium">🕒 Waktu Upload</span>
<span className="text-gray-900 font-semibold"> <span className="text-gray-900 font-semibold">
{new Date(validatedData.upload_time).toLocaleString("id-ID", { {new Date(validatedData.data.upload_time).toLocaleString("id-ID", {
dateStyle: "full", dateStyle: "full",
timeStyle: "short", timeStyle: "short",
})} })}
@ -201,7 +201,7 @@ export default function StepSuccess() {
)} )}
{/* PROGRESS STEPS (WS LIVE) */} {/* PROGRESS STEPS (WS LIVE) */}
{(validatedData.message && validatedData.job_status !== "done") && ( {(validatedData.data.message && validatedData.data.job_status !== "done") && (
<div className="border border-gray-200 rounded-lg mt-4 overflow-hidden"> <div className="border border-gray-200 rounded-lg mt-4 overflow-hidden">
{PROCESS_STEPS.map((step) => ( {PROCESS_STEPS.map((step) => (
<div <div
@ -235,7 +235,7 @@ export default function StepSuccess() {
)} )}
</div> </div>
{(validatedData.job_status !== "done") && ( {(validatedData.data.job_status !== "done") && (
<p className="mt-3 text-center text-gray-500 text-sm"> <p className="mt-3 text-center text-gray-500 text-sm">
Sistem sedang melakukan cleansing data dan publikasi ke GeoServer dan GeoNetwork.<br /> Sistem sedang melakukan cleansing data dan publikasi ke GeoServer dan GeoNetwork.<br />
Anda tidak perlu menunggu di halaman ini. Anda tidak perlu menunggu di halaman ini.
@ -243,11 +243,11 @@ export default function StepSuccess() {
)} )}
{/* Metadata Section JSON View */} {/* Metadata Section JSON View */}
{validatedData.metadata && ( {validatedData.data.metadata && (
<div className="mt-8 relative z-10"> <div className="mt-8 relative z-10">
<h3 className="text-sm font-semibold text-gray-600 mb-2">Metadata</h3> <h3 className="text-sm font-semibold text-gray-600 mb-2">Metadata</h3>
<div className="bg-slate-900 text-slate-100 text-xs rounded-lg overflow-auto shadow-inner p-4 max-h-60 font-mono"> <div className="bg-slate-900 text-slate-100 text-xs rounded-lg overflow-auto shadow-inner p-4 max-h-60 font-mono">
<pre>{JSON.stringify(validatedData.metadata, null, 2)}</pre> <pre>{JSON.stringify(validatedData.data.metadata, null, 2)}</pre>
</div> </div>
</div> </div>
)} )}
@ -255,7 +255,7 @@ export default function StepSuccess() {
<div className="flex flex-col w-full items-center gap-3"> <div className="flex flex-col w-full items-center gap-3">
{/* Tombol ke Dashboard (Next.js Link) */} {/* Tombol ke Dashboard (Next.js Link) */}
<Link href="/admin/home"> <Link href="/admin/mapset">
<Button className="w-fit bg-blue-600 hover:bg-blue-700 px-8 py-6 text-lg shadow-lg shadow-blue-200"> <Button className="w-fit bg-blue-600 hover:bg-blue-700 px-8 py-6 text-lg shadow-lg shadow-blue-200">
Kembali ke Dashboard Kembali ke Dashboard
</Button> </Button>