diff --git a/src/client/components/modals/StockModal.tsx b/src/client/components/modals/StockModal.tsx index e019e83..388f53e 100644 --- a/src/client/components/modals/StockModal.tsx +++ b/src/client/components/modals/StockModal.tsx @@ -48,7 +48,10 @@ export const StockModal: React.FC = ({ isOpen, onClose, onSucce if (isOpen) { fetchDataSheets(); if (initialData) { - setDataSheetId(typeof initialData.dataSheetId === 'object' ? initialData.dataSheetId._id : initialData.dataSheetId); + const dsId = (typeof initialData.dataSheetId === 'object') + ? (initialData.dataSheetId.id || initialData.dataSheetId._id) + : initialData.dataSheetId; + setDataSheetId(dsId || ''); setRrNumber(initialData.rrNumber); setBatchNumber(initialData.batchNumber); setColor(initialData.color || ''); @@ -108,7 +111,8 @@ export const StockModal: React.FC = ({ isOpen, onClose, onSucce try { if (initialData) { - await stockService.update(initialData._id!, payload); + const itemId = initialData.id || initialData._id; + await stockService.update(itemId!, payload); } else { await stockService.create(payload); } @@ -147,12 +151,12 @@ export const StockModal: React.FC = ({ isOpen, onClose, onSucce const val = e.target.value; setDataSheetId(val); // Auto-fill minStock from DataSheet if set and current is empty/0 - const ds = dataSheets.find(d => d._id === val); + const ds = dataSheets.find(d => (d.id || d._id) === val); if (ds && ds.minStock && (!minStock || minStock === '0')) { setMinStock(String(ds.minStock)); } }} - options={filteredDataSheets.map(ds => ({ label: `${ds.name} - ${ds.manufacturer}`, value: ds._id }))} + options={filteredDataSheets.map(ds => ({ label: `${ds.name} - ${ds.manufacturer}`, value: ds.id || ds._id }))} disabled={!!initialData} // Lock product on edit />