From 7ee9cd6632cde1f4e7987d5ff901085f3f217832 Mon Sep 17 00:00:00 2001 From: micnori Date: Wed, 27 Mar 2024 13:06:59 +0100 Subject: [PATCH 1/3] fix Date type in solr doc --- .../core/components/solr/SolrDocParser.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/application/src/main/java/it/smartcommunitylabdhub/core/components/solr/SolrDocParser.java b/application/src/main/java/it/smartcommunitylabdhub/core/components/solr/SolrDocParser.java index 8b55a4d5..f4caa102 100644 --- a/application/src/main/java/it/smartcommunitylabdhub/core/components/solr/SolrDocParser.java +++ b/application/src/main/java/it/smartcommunitylabdhub/core/components/solr/SolrDocParser.java @@ -1,5 +1,6 @@ package it.smartcommunitylabdhub.core.components.solr; +import java.util.Date; import java.util.List; import org.apache.solr.common.SolrDocument; @@ -17,8 +18,8 @@ public static ItemResult parse(SolrDocument doc) { item.getMetadata().put("description", (String) doc.getFieldValue("metadata.description")); item.getMetadata().put("project", (String) doc.getFieldValue("metadata.project")); item.getMetadata().put("version", (String) doc.getFieldValue("metadata.version")); - item.getMetadata().put("created", (String) doc.getFieldValue("metadata.created")); - item.getMetadata().put("updated", (String) doc.getFieldValue("metadata.updated")); + item.getMetadata().put("created", (Date) doc.getFieldValue("metadata.created")); + item.getMetadata().put("updated", (Date) doc.getFieldValue("metadata.updated")); item.getMetadata().put("labels", (List) doc.getFieldValue("metadata.labels")); return item; } From c574841d3128080d72e0727939b0b3acfa9ba105 Mon Sep 17 00:00:00 2001 From: micnori Date: Wed, 27 Mar 2024 13:07:18 +0100 Subject: [PATCH 2/3] add sort param --- .../core/components/solr/SolrIndexManager.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/application/src/main/java/it/smartcommunitylabdhub/core/components/solr/SolrIndexManager.java b/application/src/main/java/it/smartcommunitylabdhub/core/components/solr/SolrIndexManager.java index 897b46c7..6893bc15 100644 --- a/application/src/main/java/it/smartcommunitylabdhub/core/components/solr/SolrIndexManager.java +++ b/application/src/main/java/it/smartcommunitylabdhub/core/components/solr/SolrIndexManager.java @@ -155,6 +155,12 @@ private QueryResponse prepareQuery( MultiMapSolrParams.addParam("start", String.valueOf(pageRequest.getOffset()), queryParamMap); MultiMapSolrParams.addParam("rows", String.valueOf(pageRequest.getPageSize()), queryParamMap); + if(pageRequest.getSort().isSorted()) { + pageRequest.getSort().forEach(order -> { + MultiMapSolrParams.addParam("sort", + order.getProperty() + " " + order.getDirection().toString(), queryParamMap); + }); + } return solrClient.query(solrCollection, new MultiMapSolrParams(queryParamMap)); } From 567a6b3c5a85a8cf5057eaaad8aec6af7e2892d7 Mon Sep 17 00:00:00 2001 From: micnori Date: Wed, 27 Mar 2024 13:21:08 +0100 Subject: [PATCH 3/3] add log --- .../core/controllers/v1/base/SolrController.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/application/src/main/java/it/smartcommunitylabdhub/core/controllers/v1/base/SolrController.java b/application/src/main/java/it/smartcommunitylabdhub/core/controllers/v1/base/SolrController.java index 4a4f4bc1..003a1f58 100644 --- a/application/src/main/java/it/smartcommunitylabdhub/core/controllers/v1/base/SolrController.java +++ b/application/src/main/java/it/smartcommunitylabdhub/core/controllers/v1/base/SolrController.java @@ -17,6 +17,8 @@ import it.smartcommunitylabdhub.core.repositories.ArtifactRepository; import it.smartcommunitylabdhub.core.repositories.DataItemRepository; import it.smartcommunitylabdhub.core.repositories.FunctionRepository; +import lombok.extern.slf4j.Slf4j; + import java.util.ArrayList; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; @@ -34,6 +36,7 @@ @RestController @RequestMapping("/solr") @ApiVersion("v1") +@Slf4j @PreAuthorize("hasAuthority('ROLE_ADMIN')") public class SolrController { @@ -161,6 +164,7 @@ public ResponseEntity> searchGroup( SolrPage page = solrComponent.groupSearch(q, fq, pageRequest); return ResponseEntity.ok(page); } catch (Exception e) { + SolrController.log.error(String.format("searchGroup:", e.getMessage())); return ResponseEntity.ok(null); } } @@ -176,6 +180,7 @@ public ResponseEntity> search( SolrPage page = solrComponent.itemSearch(q, fq, pageRequest); return ResponseEntity.ok(page); } catch (Exception e) { + SolrController.log.error(String.format("search:", e.getMessage())); return ResponseEntity.ok(null); } }