mirror of
https://github.com/christianvidalwolf-prog/Craze-Data-check.git
synced 2026-08-03 13:35:25 +02:00
fix: load fresh Excel values, only preserve pending edits
This commit is contained in:
+14
-3
@@ -160,11 +160,22 @@ export default function App() {
|
|||||||
|
|
||||||
const articleNoIdx = resolvedCols.ARTICLE_NO;
|
const articleNoIdx = resolvedCols.ARTICLE_NO;
|
||||||
const processedRows = rows.map(row => {
|
const processedRows = rows.map(row => {
|
||||||
// Simply use Dropbox values - no merge logic
|
const articleNo = String(row[articleNoIdx]);
|
||||||
// Manual edits are preserved in Supabase and shown in Change History
|
const synced = syncedData[articleNo];
|
||||||
// but fresh Excel data takes precedence on reload
|
|
||||||
|
// Start with fresh Dropbox values
|
||||||
let finalRow = [...row];
|
let finalRow = [...row];
|
||||||
|
|
||||||
|
// Only use Supabase value if status is 'pending' (active edit session)
|
||||||
|
if (synced && synced.status === 'pending') {
|
||||||
|
editableColumns.forEach(idx => {
|
||||||
|
if (synced.data[idx] !== undefined && synced.data[idx] !== null) {
|
||||||
|
finalRow[idx] = synced.data[idx];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
setRowStatuses(prev => ({ ...prev, [articleNo]: 'pending' }));
|
||||||
|
}
|
||||||
|
|
||||||
return finalRow.map((val: any, idx: number) => {
|
return finalRow.map((val: any, idx: number) => {
|
||||||
if (val === undefined || val === null || val === '') return val;
|
if (val === undefined || val === null || val === '') return val;
|
||||||
const header = (headers[idx] || '').toLowerCase();
|
const header = (headers[idx] || '').toLowerCase();
|
||||||
|
|||||||
Reference in New Issue
Block a user