v1.0.178: addZipFile — дубликаты из ZIP теперь перезаписываются (как addRegularFile). Унифицировано поведение: файл из архива заменяет существующий с тем же именем.
This commit is contained in:
+15
-2
@@ -346,14 +346,27 @@ async function addZipFile(file) {
|
||||
doc_id: zf.doc_id, uploaded: true,
|
||||
status: { kind: 'parsing' }
|
||||
};
|
||||
|
||||
// Проверить дубликат по имени
|
||||
var dup = -1;
|
||||
for (var dj = 0; dj < state.files.length; dj++) {
|
||||
if (state.files[dj].name === zf.filename) { dup = dj; break; }
|
||||
}
|
||||
|
||||
if (dup >= 0) {
|
||||
// Заменить существующий (как addRegularFile — перезапись)
|
||||
state.files[dup] = zEntry;
|
||||
} else {
|
||||
state.files.push(zEntry);
|
||||
var zIdx = state.files.length - 1;
|
||||
dup = state.files.length - 1;
|
||||
}
|
||||
|
||||
// Если это первый файл — запомнить contract_id
|
||||
if (!state.contractId && zf.contract_id) state.contractId = zf.contract_id;
|
||||
render(state);
|
||||
|
||||
// Применить результат парсинга от бэкенда (clean function)
|
||||
applyParseResult(state.files[zIdx], zf.parsed);
|
||||
applyParseResult(state.files[dup], zf.parsed);
|
||||
render(state);
|
||||
}
|
||||
} catch(ze) {
|
||||
|
||||
Reference in New Issue
Block a user