feat(FE-438): Add Uniformity detail view and navigation

This commit is contained in:
rstubryan
2025-12-28 20:58:59 +07:00
parent 9f0dc8c644
commit 8ec76af012
6 changed files with 366 additions and 4 deletions
-2
View File
@@ -1,5 +1,3 @@
'use client';
import UniformityForm from '@/components/pages/uniformity/form/UniformityForm';
const AddUniformity = () => {
+47
View File
@@ -0,0 +1,47 @@
'use client';
import UniformityDetail from '@/components/pages/uniformity/detail/UniformityDetail';
import { isResponseError, isResponseSuccess } from '@/lib/api-helper';
import { UniformityApi } from '@/services/api/uniformity';
import { useRouter, useSearchParams } from 'next/navigation';
import useSWR from 'swr';
const UniformityDetailPage = () => {
const router = useRouter();
const searchParams = useSearchParams();
const uniformityId = searchParams.get('uniformityId');
const { data: uniformity, isLoading: isLoadingUniformity } = useSWR(
uniformityId,
(id: string) => UniformityApi.getUniformityDetail(parseInt(id))
);
if (!uniformityId) {
router.back();
return (
<div className='w-full flex flex-row justify-center items-center p-4'>
<span className='loading loading-spinner loading-xl' />
</div>
);
}
if (!isLoadingUniformity && (!uniformity || isResponseError(uniformity))) {
router.replace('/404');
return;
}
return (
<div className='w-full h-full flex flex-col justify-center'>
{isLoadingUniformity && (
<span className='loading loading-spinner loading-xl' />
)}
{isResponseSuccess(uniformity) && (
<UniformityDetail initialValues={uniformity.data} />
)}
</div>
);
};
export default UniformityDetailPage;
+3 -1
View File
@@ -1,5 +1,7 @@
import UniformityTable from '@/components/pages/uniformity/UniformityTable';
const Uniformity = () => {
return <></>;
return <UniformityTable />;
};
export default Uniformity;