fix: review.tsx
This commit is contained in:
@@ -157,14 +157,17 @@ const Review: React.FC = () => {
|
|||||||
const [reviewNote, setReviewNote] = useState('');
|
const [reviewNote, setReviewNote] = useState('');
|
||||||
const [supplementModal, setSupplementModal] = useState<FraudAssessment | null>(null);
|
const [supplementModal, setSupplementModal] = useState<FraudAssessment | null>(null);
|
||||||
const [supplementNote, setSupplementNote] = useState('');
|
const [supplementNote, setSupplementNote] = useState('');
|
||||||
|
const [autoRefreshUntil, setAutoRefreshUntil] = useState<number>(0);
|
||||||
|
|
||||||
const { data: assessData } = useQuery({
|
const { data: assessData } = useQuery({
|
||||||
queryKey: ['assessments', id],
|
queryKey: ['assessments', id],
|
||||||
queryFn: () => fetchAssessments(id),
|
queryFn: () => fetchAssessments(id),
|
||||||
|
refetchInterval: () => (Date.now() < autoRefreshUntil ? 2000 : false),
|
||||||
});
|
});
|
||||||
const { data: suggestionsData, isLoading: suggestionsLoading, isFetching: suggestionsFetching } = useQuery({
|
const { data: suggestionsData, isLoading: suggestionsLoading, isFetching: suggestionsFetching } = useQuery({
|
||||||
queryKey: ['suggestions', id],
|
queryKey: ['suggestions', id],
|
||||||
queryFn: () => fetchInquirySuggestions(id),
|
queryFn: () => fetchInquirySuggestions(id),
|
||||||
|
refetchInterval: () => (Date.now() < autoRefreshUntil ? 2000 : false),
|
||||||
});
|
});
|
||||||
const { data: evidenceImageDetail, isFetching: evidenceImageFetching } = useQuery({
|
const { data: evidenceImageDetail, isFetching: evidenceImageFetching } = useQuery({
|
||||||
queryKey: ['image-detail', reviewModal?.transaction.evidenceImageId],
|
queryKey: ['image-detail', reviewModal?.transaction.evidenceImageId],
|
||||||
@@ -205,6 +208,9 @@ const Review: React.FC = () => {
|
|||||||
type: 'success',
|
type: 'success',
|
||||||
content: res.message || '分析任务已提交',
|
content: res.message || '分析任务已提交',
|
||||||
});
|
});
|
||||||
|
// Analysis runs asynchronously in backend; keep polling briefly so
|
||||||
|
// review results appear without manual page refresh.
|
||||||
|
setAutoRefreshUntil(Date.now() + 60_000);
|
||||||
qc.invalidateQueries({ queryKey: ['assessments', id] });
|
qc.invalidateQueries({ queryKey: ['assessments', id] });
|
||||||
qc.invalidateQueries({ queryKey: ['suggestions', id] });
|
qc.invalidateQueries({ queryKey: ['suggestions', id] });
|
||||||
qc.invalidateQueries({ queryKey: ['transactions', id] });
|
qc.invalidateQueries({ queryKey: ['transactions', id] });
|
||||||
|
|||||||
Reference in New Issue
Block a user