This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
'use client';
|
||||
|
||||
import { useState, useTransition } from 'react';
|
||||
import { useEffect, useState, useTransition } from 'react';
|
||||
import { useTranslations, useLocale } from 'next-intl';
|
||||
import {
|
||||
setItemFulfillment,
|
||||
@@ -109,6 +109,13 @@ function FulfillmentRow({
|
||||
const [delivered, setDelivered] = useState(item.deliveredQuantity);
|
||||
const [returned, setReturned] = useState(item.returnedQuantity);
|
||||
|
||||
// Sync local state when server data refreshes (e.g. after deliver-all /
|
||||
// return-all bulk actions). Without this, the inputs stay stale until reload.
|
||||
useEffect(() => {
|
||||
setDelivered(item.deliveredQuantity);
|
||||
setReturned(item.returnedQuantity);
|
||||
}, [item.deliveredQuantity, item.returnedQuantity]);
|
||||
|
||||
const outstanding = Math.max(0, delivered - returned);
|
||||
const dirty =
|
||||
delivered !== item.deliveredQuantity || returned !== item.returnedQuantity;
|
||||
|
||||
Reference in New Issue
Block a user