[Library|Trunk]

New Search pages: apply fixes for advanced search query



git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-library/trunk/ng-openaire-library/src/app@58504 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
argiro.kokogiannaki 2020-04-16 09:30:31 +00:00
parent 5bdb42f471
commit 8eb43945ce
1 changed files with 6 additions and 5 deletions

View File

@ -680,7 +680,7 @@ export class NewSearchPageComponent {
} else {
params += this.createQuotedKeywordQuery(this.selectedFields[i].value, this.selectedFields[i].id, this.selectedFields[i].operatorId,countParams,true);
}*/
params += NewSearchPageComponent.createKeywordQuery(this.entityType,this.selectedFields[i].value, this.selectedFields[i].id, this.selectedFields[i].operatorId, countParams);
params +=(countParams == 0 ? "" : " " + this.selectedFields[i].operatorId + " ") + NewSearchPageComponent.createKeywordQuery(this.entityType,this.selectedFields[i].value, this.selectedFields[i].id, this.selectedFields[i].operatorId, countParams);
//TODO deposit case
// console.log(this.usedBy)
// console.log(this.keywordFields)
@ -709,7 +709,7 @@ export class NewSearchPageComponent {
} else if(this.fieldIdsMap[this.selectedFields[i].id].equalityOperator == "=") {
params+=NewSearchPageComponent.createQuotedKeywordQuery(this.selectedFields[i].value, this.selectedFields[i].id, this.selectedFields[i].operatorId, countParams, false);
}else{
params += (countParams == 0 ? "" : this.selectedFields[i].operatorId + " ") + this.selectedFields[i].id + this.fieldIdsMap[this.selectedFields[i].id].equalityOperator + '"' + encodeURIComponent(this.selectedFields[i].value) + '"' + " ";
params += (countParams == 0 ? "" : " " + this.selectedFields[i].operatorId + " ") + this.selectedFields[i].id + this.fieldIdsMap[this.selectedFields[i].id].equalityOperator + '"' + encodeURIComponent(this.selectedFields[i].value) + '"' + " ";
}
}
@ -741,7 +741,7 @@ export class NewSearchPageComponent {
}
}
if (doisParams.length > 0) {
params += this.createQuotedKeywordQuery(value, id, operatorId ,countParams,true, true) + " or " + doisParams;
params += "(" + this.createQuotedKeywordQuery(value, id, operatorId ,countParams,true, true) + " or " + doisParams+")";
} else {
params += this.createQuotedKeywordQuery(value, id, operatorId,countParams,true);
}
@ -751,7 +751,8 @@ export class NewSearchPageComponent {
private static createQuotedKeywordQuery(fieldValue, fieldId, fieldOperator, countParams:number, isSearchAll:boolean, forceQuotted:boolean=false){
let params = "";
let quotedParts = (fieldValue)?fieldValue.match(/(["'])(.*?)*?\1/g):[];
params+= (countParams == 0 ? "" : fieldOperator) + " (";
// params+= (countParams == 0 ? "" : fieldOperator) +
params+= " (";
if(forceQuotted){
return this.getQuotedQueryPart(fieldId, '"'+ fieldValue+'"',isSearchAll);
}
@ -788,7 +789,7 @@ export class NewSearchPageComponent {
}else{
params+=this.getNoQuotedQueryPart(fieldId, fieldValue,isSearchAll);
}
params += " )";
params += ")";
return params;
}