mirror of
https://gitlab.com/mbugroup/lti-web-client.git
synced 2026-05-22 14:25:47 +00:00
refactor(FE-87-106): refactor api integration untuk project flock dan project flock kandang
This commit is contained in:
@@ -170,8 +170,8 @@ const DetailChickin = () => {
|
||||
<div className='font-semibold text-sm'>Flock</div>
|
||||
<div className='text-sm'>
|
||||
{
|
||||
chickin.data.project_flock_kandang?.project_flock.flock
|
||||
.name
|
||||
chickin?.data?.project_flock_kandang?.project_flock?.flock
|
||||
?.name
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
@@ -225,8 +225,8 @@ const DetailChickin = () => {
|
||||
<div className='font-semibold text-sm'>Flock Kandang</div>
|
||||
<div className='text-sm'>
|
||||
{
|
||||
chickin.data.project_flock_kandang?.project_flock.flock
|
||||
.name
|
||||
chickin?.data?.project_flock_kandang?.project_flock?.flock
|
||||
?.name
|
||||
}{' '}
|
||||
- {chickin.data.project_flock_kandang?.kandang.name}
|
||||
</div>
|
||||
@@ -280,7 +280,7 @@ const DetailChickin = () => {
|
||||
<ConfirmationModal
|
||||
ref={deleteModal.ref}
|
||||
type='error'
|
||||
text={`Apakah anda yakin ingin menghapus data Project Flock ini (${chickin?.data.project_flock_kandang?.project_flock.flock.name} - ${chickin?.data.project_flock_kandang?.kandang.name})?`}
|
||||
text={`Apakah anda yakin ingin menghapus data Project Flock ini (${chickin?.data?.project_flock_kandang?.project_flock.flock?.name} - ${chickin?.data.project_flock_kandang?.kandang.name})?`}
|
||||
secondaryButton={{
|
||||
text: 'Tidak',
|
||||
}}
|
||||
@@ -320,7 +320,7 @@ const DetailChickin = () => {
|
||||
text={`Apakah anda yakin ingin ${
|
||||
approvalAction == 'APPROVED' ? 'approve' : 'reject'
|
||||
} chickin berikut? (${
|
||||
chickin?.data.project_flock_kandang?.project_flock.flock.name
|
||||
chickin?.data?.project_flock_kandang?.project_flock?.flock?.name
|
||||
} - ${chickin?.data.project_flock_kandang?.kandang.name})?`}
|
||||
secondaryButton={{
|
||||
text: 'Tidak',
|
||||
|
||||
@@ -2,8 +2,11 @@
|
||||
|
||||
import ProjectFlockForm from '@/components/pages/production/project-flock/form/ProjectFlockForm';
|
||||
import { isResponseError, isResponseSuccess } from '@/lib/api-helper';
|
||||
import { FlockApi } from '@/services/api/master-data';
|
||||
import { ProjectFlockApi } from '@/services/api/production';
|
||||
import { ProjectFlock } from '@/types/api/production/project-flock';
|
||||
import { useRouter, useSearchParams } from 'next/navigation';
|
||||
import { useState } from 'react';
|
||||
import useSWR from 'swr';
|
||||
|
||||
const ProjectFlockDetail = () => {
|
||||
@@ -12,12 +15,21 @@ const ProjectFlockDetail = () => {
|
||||
|
||||
const projectFlockId = searchParams.get('projectFlockId');
|
||||
|
||||
const [projectName, setProjectName] = useState();
|
||||
|
||||
const {
|
||||
data: projectFlock,
|
||||
isLoading: isLoadingProjectFlock,
|
||||
mutate: refreshProjectFlock,
|
||||
} = useSWR(projectFlockId, (id: number) => ProjectFlockApi.getSingle(id));
|
||||
|
||||
const flockUrl = `${FlockApi.basePath}`;
|
||||
const {
|
||||
data: flock,
|
||||
isLoading: isLoadingFlock,
|
||||
mutate: refreshFlock,
|
||||
} = useSWR(flockUrl, FlockApi.getAllFetcher);
|
||||
|
||||
if (!projectFlockId) {
|
||||
router.back();
|
||||
|
||||
@@ -36,15 +48,37 @@ const ProjectFlockDetail = () => {
|
||||
return;
|
||||
}
|
||||
|
||||
// Attach flock id to project flock
|
||||
let projectFlockAttached: ProjectFlock | undefined;
|
||||
|
||||
if (isResponseSuccess(projectFlock) && isResponseSuccess(flock)) {
|
||||
projectFlockAttached = {
|
||||
...projectFlock.data,
|
||||
flock: flock.data.find(
|
||||
(flock) =>
|
||||
flock.name ==
|
||||
projectFlock.data.flock_name
|
||||
.trim()
|
||||
.split(/\s+/)
|
||||
.slice(0, -1)
|
||||
.join(' ')
|
||||
),
|
||||
};
|
||||
console.log('projectFlockAttached');
|
||||
console.log(projectFlockAttached);
|
||||
console.log('flocks');
|
||||
console.log(flock.data);
|
||||
}
|
||||
|
||||
return (
|
||||
<div className='w-full p-4 flex flex-row justify-center'>
|
||||
{isLoadingProjectFlock && (
|
||||
<span className='loading loading-spinner loading-xl' />
|
||||
)}
|
||||
{!isLoadingProjectFlock && isResponseSuccess(projectFlock) && (
|
||||
{projectFlockAttached && (
|
||||
<ProjectFlockForm
|
||||
formType='detail'
|
||||
initialValues={projectFlock.data}
|
||||
initialValues={projectFlockAttached}
|
||||
refreshProjectFlocks={refreshProjectFlock}
|
||||
/>
|
||||
)}
|
||||
|
||||
Reference in New Issue
Block a user