Улучшение поисковой базы
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
const InpxParser = require('./InpxParser');
|
||||
const utils = require('./utils');
|
||||
|
||||
const emptyFieldValue = '@';
|
||||
|
||||
class DbCreator {
|
||||
constructor(config) {
|
||||
this.config = config;
|
||||
@@ -44,7 +46,7 @@ class DbCreator {
|
||||
|
||||
const splitAuthor = (author) => {
|
||||
if (!author) {
|
||||
author = 'Автор не указан';
|
||||
author = emptyFieldValue;
|
||||
}
|
||||
|
||||
const result = author.split(',');
|
||||
@@ -127,7 +129,9 @@ class DbCreator {
|
||||
|
||||
//теперь можно создавать остальные поисковые таблицы
|
||||
const parseField = (fieldValue, fieldMap, fieldArr, authorIds) => {
|
||||
if (fieldValue) {
|
||||
if (!fieldValue)
|
||||
fieldValue = emptyFieldValue;
|
||||
|
||||
const value = fieldValue.toLowerCase();
|
||||
|
||||
let fieldRec;
|
||||
@@ -143,7 +147,6 @@ class DbCreator {
|
||||
for (const id of authorIds) {
|
||||
fieldRec.authorId.add(id);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const parseBookRec = (rec) => {
|
||||
@@ -165,7 +168,9 @@ class DbCreator {
|
||||
parseField(rec.title, titleMap, titleArr, authorIds);
|
||||
|
||||
//жанры
|
||||
if (rec.genre) {
|
||||
if (!rec.genre)
|
||||
rec.genre = emptyFieldValue;
|
||||
|
||||
const genre = rec.genre.split(',');
|
||||
|
||||
for (const g of genre) {
|
||||
@@ -183,7 +188,6 @@ class DbCreator {
|
||||
genreRec.authorId.add(id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//языки
|
||||
parseField(rec.lang, langMap, langArr, authorIds);
|
||||
|
||||
Reference in New Issue
Block a user