Browse Source

update

master
CANCERYS\kw093 3 weeks ago
parent
commit
4560b5ade2
1 changed files with 5 additions and 4 deletions
  1. +5
    -4
      src/components/PoDetail/PoDetail.tsx

+ 5
- 4
src/components/PoDetail/PoDetail.tsx View File

@@ -100,6 +100,7 @@ const PoSearchList: React.FC<{
poList: PoResult[]; poList: PoResult[];
selectedPoId: number; selectedPoId: number;
onSelect: (po: PoResult) => void; onSelect: (po: PoResult) => void;
}> = ({ poList, selectedPoId, onSelect }) => { }> = ({ poList, selectedPoId, onSelect }) => {
const { t } = useTranslation(["purchaseOrder", "dashboard"]); const { t } = useTranslation(["purchaseOrder", "dashboard"]);
const [searchTerm, setSearchTerm] = useState(''); const [searchTerm, setSearchTerm] = useState('');
@@ -267,7 +268,7 @@ const PoDetail: React.FC<Props> = ({ po, warehouse, printerCombo }) => {
setPurchaseOrder(result); setPurchaseOrder(result);
setRows(result.pol || []); setRows(result.pol || []);
if (result.pol && result.pol.length > 0) { if (result.pol && result.pol.length > 0) {
if (result.id === selectedPoId) {
if (result.id === selectedPoId && selectedRow?.id) {
const polIndex = result.pol.findIndex((p) => p.id === selectedRow?.id) const polIndex = result.pol.findIndex((p) => p.id === selectedRow?.id)
// setSelectedRow(result.pol[polIndex]); // setSelectedRow(result.pol[polIndex]);
setStockInLine(result.pol[polIndex].stockInLine); setStockInLine(result.pol[polIndex].stockInLine);
@@ -283,7 +284,7 @@ const PoDetail: React.FC<Props> = ({ po, warehouse, printerCombo }) => {
} catch (error) { } catch (error) {
console.error("Failed to fetch PO detail:", error); console.error("Failed to fetch PO detail:", error);
} }
}, [selectedRow]);
}, [selectedRow, selectedPoId]);
const handlePoSelect = useCallback( const handlePoSelect = useCallback(
async (selectedPo: PoResult) => { async (selectedPo: PoResult) => {
@@ -291,13 +292,12 @@ const PoDetail: React.FC<Props> = ({ po, warehouse, printerCombo }) => {
setSelectedPoId(selectedPo.id); setSelectedPoId(selectedPo.id);
await fetchPoDetail(selectedPo.id.toString()); await fetchPoDetail(selectedPo.id.toString());
const newSelectedIds = selectedIdsParam || selectedPo.id.toString(); const newSelectedIds = selectedIdsParam || selectedPo.id.toString();
// router.push(`/po/edit?id=${selectedPo.id}&start=true&selectedIds=${newSelectedIds}`, { scroll: false });
const newUrl = `/po/edit?id=${selectedPo.id}&start=true&selectedIds=${newSelectedIds}`; const newUrl = `/po/edit?id=${selectedPo.id}&start=true&selectedIds=${newSelectedIds}`;
if (pathname + searchParams.toString() !== newUrl) { if (pathname + searchParams.toString() !== newUrl) {
router.replace(newUrl, { scroll: false }); router.replace(newUrl, { scroll: false });
} }
}, },
[router, selectedIdsParam, fetchPoDetail]
[selectedPoId, fetchPoDetail, selectedIdsParam, pathname, searchParams, router]
); );
useEffect(() => { useEffect(() => {
@@ -726,6 +726,7 @@ const PoDetail: React.FC<Props> = ({ po, warehouse, printerCombo }) => {
poList={poList} poList={poList}
selectedPoId={selectedPoId} selectedPoId={selectedPoId}
onSelect={handlePoSelect} onSelect={handlePoSelect}
/> />
</Grid> </Grid>




Loading…
Cancel
Save