refactor(FE): Refactor fetchChecklistDetail with useCallback

This commit is contained in:
rstubryan
2026-03-06 15:00:33 +07:00
parent 978ef764ea
commit 784d9f26ab
@@ -1,6 +1,6 @@
'use client';
import { useState, useEffect } from 'react';
import { useState, useEffect, useCallback } from 'react';
import * as React from 'react';
import { ArrowLeft, CheckCircle, XCircle, AlertCircle } from 'lucide-react';
import { Card, CardContent } from '@/figma-make/components/base/card';
@@ -137,15 +137,7 @@ export function DetailDailyChecklistContent() {
const [rejectReason, setRejectReason] = useState('');
const [actionLoading, setActionLoading] = useState(false);
useEffect(() => {
if (checklistId) {
fetchChecklistDetail();
} else {
router.push('/404');
}
}, [checklistId]);
const fetchChecklistDetail = async () => {
const fetchChecklistDetail = useCallback(async () => {
if (!checklistId) {
console.warn('checklistId missing');
setLoading(false);
@@ -320,7 +312,15 @@ export function DetailDailyChecklistContent() {
} finally {
setLoading(false);
}
};
}, [checklistId, router]);
useEffect(() => {
if (checklistId) {
fetchChecklistDetail();
} else {
router.push('/404');
}
}, [checklistId, fetchChecklistDetail, router]);
const groupDetailData = (rows: ChecklistDetailRow[]) => {
// Group by phase_id