Решение проблемы скачивания файлов в режиме "Удаленная библиотека"

(запрашивался не тот файл из-за несовпадения bookId)
This commit is contained in:
Book Pauk
2022-11-13 01:59:42 +07:00
parent 4d3661b758
commit 2db2b8cff4
8 changed files with 43 additions and 26 deletions

View File

@@ -65,6 +65,8 @@ class DbCreator {
let librateMap = new Map();//оценка
let librateArr = [];
let uidSet = new Set();//уникальные идентификаторы
//stats
let authorCount = 0;
let bookCount = 0;
@@ -221,13 +223,14 @@ class DbCreator {
let filtered = false;
for (const rec of chunk) {
//сначала фильтр
if (!filter(rec)) {
if (!filter(rec) || uidSet.has(rec._uid)) {
rec.id = 0;
filtered = true;
continue;
}
rec.id = ++id;
uidSet.add(rec._uid);
if (!rec.del) {
bookCount++;
@@ -269,6 +272,7 @@ class DbCreator {
delMap = null;
dateMap = null;
librateMap = null;
uidSet = null;
await db.close({table: 'book'});
await db.freeMemory();
@@ -624,6 +628,12 @@ class DbCreator {
stats.filesDelCount = res.filesDelCount;
}
//заодно добавим нужный индекс
await db.create({
in: 'book',
hash: {field: '_uid', type: 'string', depth: 100, unique: true},
});
countDone = true;
}
}