diff --git a/pom.xml b/pom.xml index d4d0fcd7a1..3210bf844b 100644 --- a/pom.xml +++ b/pom.xml @@ -86,7 +86,7 @@ 2.2.8.RELEASE - 0.152-SNAPSHOT + 0.153-SNAPSHOT 0.50 1.1 1.15 diff --git a/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/collections/service/suggestions/BaseChangeSuggestionServiceIT.java b/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/collections/service/suggestions/BaseChangeSuggestionServiceIT.java index 1679534d7e..61ccbf0d77 100644 --- a/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/collections/service/suggestions/BaseChangeSuggestionServiceIT.java +++ b/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/collections/service/suggestions/BaseChangeSuggestionServiceIT.java @@ -17,9 +17,9 @@ import org.gbif.api.model.collections.Address; import org.gbif.api.model.collections.Collection; -import org.gbif.api.model.collections.CollectionEntity; import org.gbif.api.model.collections.Contactable; import org.gbif.api.model.collections.Institution; +import org.gbif.api.model.collections.PrimaryCollectionEntity; import org.gbif.api.model.collections.suggestions.ChangeSuggestion; import org.gbif.api.model.collections.suggestions.ChangeSuggestionService; import org.gbif.api.model.collections.suggestions.Status; @@ -51,7 +51,8 @@ /** Tests the {@link ChangeSuggestionService}. */ public abstract class BaseChangeSuggestionServiceIT< - T extends CollectionEntity & Contactable & LenientEquals, R extends ChangeSuggestion> + T extends PrimaryCollectionEntity & Contactable & LenientEquals, + R extends ChangeSuggestion> extends BaseServiceIT { protected static final String PROPOSER = "proposer@test.com"; @@ -94,7 +95,8 @@ public void newEntitySuggestionTest() { suggestion = changeSuggestionService.getChangeSuggestion(suggKey); assertCreatedSuggestion(suggestion); assertEquals(Type.CREATE, suggestion.getType()); - assertEquals(Country.DENMARK, suggestion.getCountry()); + assertNull(suggestion.getEntityCountry()); + assertNull(suggestion.getEntityName()); assertTrue(suggestion.getChanges().isEmpty()); // When - update the suggestion (e.g.: the reviewer does some changes) @@ -155,7 +157,8 @@ public void updateEntityChangeSuggestionTest() { suggestion = changeSuggestionService.getChangeSuggestion(suggKey); assertCreatedSuggestion(suggestion); assertEquals(Type.UPDATE, suggestion.getType()); - assertEquals(Country.DENMARK, suggestion.getCountry()); + assertEquals(Country.DENMARK, suggestion.getEntityCountry()); + assertEquals(entity.getName(), suggestion.getEntityName()); assertEquals(address.getCity(), suggestion.getSuggestedEntity().getAddress().getCity()); assertTrue(entity.lenientEquals(suggestion.getSuggestedEntity())); assertEquals(numberChanges, suggestion.getChanges().size()); @@ -186,6 +189,11 @@ public void updateEntityChangeSuggestionTest() { public void deleteInstitutionSuggestionTest() { // State T entity = createEntity(); + + Address address = new Address(); + address.setCountry(Country.DENMARK); + entity.setAddress(address); + UUID entityKey = crudService.create(entity); R suggestion = createEmptyChangeSuggestion(); @@ -201,6 +209,8 @@ public void deleteInstitutionSuggestionTest() { // Then suggestion = changeSuggestionService.getChangeSuggestion(suggKey); assertCreatedSuggestion(suggestion); + assertEquals(Country.DENMARK, suggestion.getEntityCountry()); + assertEquals(entity.getName(), suggestion.getEntityName()); assertEquals(Type.DELETE, suggestion.getType()); // When @@ -219,6 +229,11 @@ public void deleteInstitutionSuggestionTest() { public void mergeInstitutionSuggestionTest() { // State T entity = createEntity(); + + Address address = new Address(); + address.setCountry(Country.DENMARK); + entity.setAddress(address); + UUID entityKey = crudService.create(entity); T entity2 = createEntity(); @@ -238,6 +253,8 @@ public void mergeInstitutionSuggestionTest() { // Then suggestion = changeSuggestionService.getChangeSuggestion(suggKey); assertCreatedSuggestion(suggestion); + assertEquals(Country.DENMARK, suggestion.getEntityCountry()); + assertEquals(entity.getName(), suggestion.getEntityName()); assertEquals(Type.MERGE, suggestion.getType()); // When diff --git a/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/collections/service/suggestions/InstitutionChangeSuggestionServiceIT.java b/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/collections/service/suggestions/InstitutionChangeSuggestionServiceIT.java index b3b691f23c..69769e10e5 100644 --- a/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/collections/service/suggestions/InstitutionChangeSuggestionServiceIT.java +++ b/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/collections/service/suggestions/InstitutionChangeSuggestionServiceIT.java @@ -15,6 +15,7 @@ */ package org.gbif.registry.ws.it.collections.service.suggestions; +import org.gbif.api.model.collections.Address; import org.gbif.api.model.collections.AlternativeCode; import org.gbif.api.model.collections.Collection; import org.gbif.api.model.collections.Institution; @@ -23,6 +24,7 @@ import org.gbif.api.model.registry.Identifier; import org.gbif.api.service.collections.CollectionService; import org.gbif.api.service.collections.InstitutionService; +import org.gbif.api.vocabulary.Country; import org.gbif.api.vocabulary.IdentifierType; import org.gbif.registry.service.collections.suggestions.InstitutionChangeSuggestionService; import org.gbif.ws.client.filter.SimplePrincipalProvider; @@ -62,6 +64,11 @@ public void convertInstitutionToCollectionSuggestionTest() { Institution i1 = new Institution(); i1.setCode("i1"); i1.setName("institution 1"); + + Address address = new Address(); + address.setCountry(Country.DENMARK); + i1.setAddress(address); + UUID i1Key = institutionService.create(i1); InstitutionChangeSuggestion suggestion = new InstitutionChangeSuggestion(); @@ -78,6 +85,8 @@ public void convertInstitutionToCollectionSuggestionTest() { // Then suggestion = institutionChangeSuggestionService.getChangeSuggestion(suggKey); assertCreatedSuggestion(suggestion); + assertEquals(Country.DENMARK, suggestion.getEntityCountry()); + assertEquals(i1.getName(), suggestion.getEntityName()); assertEquals(Type.CONVERSION_TO_COLLECTION, suggestion.getType()); // When diff --git a/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/collections/ChangeSuggestionMapper.java b/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/collections/ChangeSuggestionMapper.java index 2f74060846..398af3c80b 100644 --- a/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/collections/ChangeSuggestionMapper.java +++ b/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/collections/ChangeSuggestionMapper.java @@ -26,7 +26,7 @@ List list( @Param("status") Status status, @Param("type") Type type, @Param("entityType") CollectionEntityType entityType, - @Param("country") Country country, + @Param("entityCountry") Country entityCountry, @Param("proposerEmail") String proposerEmail, @Param("entityKey") UUID entityKey, @Nullable @Param("page") Pageable page); @@ -35,7 +35,7 @@ long count( @Param("status") Status status, @Param("type") Type type, @Param("entityType") CollectionEntityType entityType, - @Param("country") Country country, + @Param("entityCountry") Country entityCountry, @Param("proposerEmail") String proposerEmail, @Param("entityKey") UUID entityKey); diff --git a/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/collections/dto/ChangeSuggestionDto.java b/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/collections/dto/ChangeSuggestionDto.java index 8e5ea0e22b..3615bff8c8 100644 --- a/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/collections/dto/ChangeSuggestionDto.java +++ b/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/collections/dto/ChangeSuggestionDto.java @@ -20,6 +20,8 @@ public class ChangeSuggestionDto { private Integer key; private CollectionEntityType entityType; private UUID entityKey; + private String entityName; + private Country entityCountry; private Type type; private Status status; private String proposedBy; @@ -29,7 +31,6 @@ public class ChangeSuggestionDto { private Date applied; private String discardedBy; private Date discarded; - private Country country; private String suggestedEntity; private Set changes = new HashSet<>(); private List comments = new ArrayList<>(); diff --git a/registry-persistence/src/main/resources/liquibase/094-grscicoll-change-suggestions.xml b/registry-persistence/src/main/resources/liquibase/094-grscicoll-change-suggestions.xml index 6c383824a3..ede2404a8b 100644 --- a/registry-persistence/src/main/resources/liquibase/094-grscicoll-change-suggestions.xml +++ b/registry-persistence/src/main/resources/liquibase/094-grscicoll-change-suggestions.xml @@ -23,7 +23,8 @@ applied_by varchar CHECK (assert_min_length(applied_by, 3)), discarded timestamptz, discarded_by varchar CHECK (assert_min_length(discarded_by, 3)), - country varchar(2) CHECK (length(country) = 2), + entity_country varchar(2) CHECK (length(entity_country) = 2), + entity_name varchar, suggested_entity jsonb, comments text[], merge_target_key uuid, diff --git a/registry-persistence/src/main/resources/org/gbif/registry/persistence/mapper/collections/ChangeSuggestionMapper.xml b/registry-persistence/src/main/resources/org/gbif/registry/persistence/mapper/collections/ChangeSuggestionMapper.xml index a4a4f49ef6..e60e7da707 100644 --- a/registry-persistence/src/main/resources/org/gbif/registry/persistence/mapper/collections/ChangeSuggestionMapper.xml +++ b/registry-persistence/src/main/resources/org/gbif/registry/persistence/mapper/collections/ChangeSuggestionMapper.xml @@ -10,15 +10,16 @@ - entity_type, entity_key, type, status, proposed, proposed_by, proposer_email, country, changes, comments, suggested_entity, - merge_target_key, institution_converted_collection, name_new_institution_converted_collection, modified, modified_by + entity_type, entity_key, type, status, proposed, proposed_by, proposer_email, entity_country, changes, comments, + suggested_entity, merge_target_key, institution_converted_collection, name_new_institution_converted_collection, + modified, modified_by, entity_name cs.key, cs.entity_type, cs.entity_key, cs.type, cs.status, cs.proposed, cs.proposed_by, cs.proposer_email, cs. applied, - cs.applied_by, cs.discarded_by, cs.discarded, cs.country, cs.suggested_entity, cs.comments, + cs.applied_by, cs.discarded_by, cs.discarded, cs.entity_country, cs.suggested_entity, cs.comments, cs.merge_target_key, cs.changes, cs.institution_converted_collection, cs.name_new_institution_converted_collection, - cs.modified, cs.modified_by + cs.modified, cs.modified_by, cs.entity_name @@ -29,7 +30,7 @@ now(), #{proposedBy,jdbcType=VARCHAR}, #{proposerEmail,jdbcType=VARCHAR}, - #{country,jdbcType=VARCHAR}, + #{entityCountry,jdbcType=VARCHAR}, #{changes,jdbcType=OTHER,typeHandler=SuggestedChangesTypeHandler}::jsonb, #{comments,jdbcType=OTHER,typeHandler=StringArrayTypeHandler}, #{suggestedEntity,jdbcType=OTHER}::jsonb, @@ -37,7 +38,8 @@ #{institutionConvertedCollection,jdbcType=OTHER}, #{nameNewInstitutionConvertedCollection,jdbcType=VARCHAR}, now(), - #{modifiedBy,jdbcType=VARCHAR} + #{modifiedBy,jdbcType=VARCHAR}, + #{entityName,jdbcType=VARCHAR} @@ -81,8 +83,8 @@ AND cs.entity_type = #{entityType,jdbcType=OTHER} - - AND cs.country = #{country,jdbcType=VARCHAR} + + AND cs.entity_country = #{entityCountry,jdbcType=VARCHAR} AND cs.proposer_email = #{proposerEmail,jdbcType=OTHER} @@ -110,8 +112,8 @@ AND cs.entity_type = #{entityType,jdbcType=OTHER} - - AND cs.country = #{country,jdbcType=VARCHAR} + + AND cs.entity_country = #{entityCountry,jdbcType=VARCHAR} AND cs.proposer_email = #{proposerEmail,jdbcType=OTHER} diff --git a/registry-service/src/main/java/org/gbif/registry/service/collections/merge/BaseMergeService.java b/registry-service/src/main/java/org/gbif/registry/service/collections/merge/BaseMergeService.java index 63a1b9e950..ce6553b8d1 100644 --- a/registry-service/src/main/java/org/gbif/registry/service/collections/merge/BaseMergeService.java +++ b/registry-service/src/main/java/org/gbif/registry/service/collections/merge/BaseMergeService.java @@ -185,7 +185,10 @@ protected boolean containsOccurrenceMapping(T entity, OccurrenceMapping occurren .anyMatch(om -> om.lenientEquals(occurrenceMapping)); } - protected void setNullFields(T target, T source) { + /** + * Sets the fields that are null in target with the value of the source. + */ + protected void setNullFieldsInTarget(T target, T source) { Class clazz = (Class) target.getClass(); Arrays.stream(clazz.getDeclaredFields()) .filter(f -> !f.getType().isAssignableFrom(List.class)) diff --git a/registry-service/src/main/java/org/gbif/registry/service/collections/merge/CollectionMergeService.java b/registry-service/src/main/java/org/gbif/registry/service/collections/merge/CollectionMergeService.java index 759e4654da..077b41c20a 100644 --- a/registry-service/src/main/java/org/gbif/registry/service/collections/merge/CollectionMergeService.java +++ b/registry-service/src/main/java/org/gbif/registry/service/collections/merge/CollectionMergeService.java @@ -55,7 +55,7 @@ void checkMergeExtraPreconditions(Collection entityToReplace, Collection replace @Override Collection mergeEntityFields(Collection entityToReplace, Collection replacement) { - setNullFields(replacement, entityToReplace); + setNullFieldsInTarget(replacement, entityToReplace); replacement.setEmail(mergeLists(entityToReplace.getEmail(), replacement.getEmail())); replacement.setPhone(mergeLists(entityToReplace.getPhone(), replacement.getPhone())); replacement.setContentTypes( diff --git a/registry-service/src/main/java/org/gbif/registry/service/collections/merge/InstitutionMergeService.java b/registry-service/src/main/java/org/gbif/registry/service/collections/merge/InstitutionMergeService.java index 4c9db44d98..2d6c0a2977 100644 --- a/registry-service/src/main/java/org/gbif/registry/service/collections/merge/InstitutionMergeService.java +++ b/registry-service/src/main/java/org/gbif/registry/service/collections/merge/InstitutionMergeService.java @@ -15,6 +15,7 @@ */ package org.gbif.registry.service.collections.merge; +import org.gbif.api.model.collections.Address; import org.gbif.api.model.collections.AlternativeCode; import org.gbif.api.model.collections.Collection; import org.gbif.api.model.collections.Institution; @@ -106,8 +107,17 @@ && isIDigBioRecord(institutionToConvert)) { newCollection.setHomepage(institutionToConvert.getHomepage()); newCollection.setCatalogUrl(institutionToConvert.getCatalogUrl()); newCollection.setApiUrl(institutionToConvert.getApiUrl()); - newCollection.setAddress(institutionToConvert.getAddress()); - newCollection.setMailingAddress(institutionToConvert.getMailingAddress()); + + if (institutionToConvert.getAddress() != null) { + Address address = institutionToConvert.getAddress(); + address.setKey(null); + newCollection.setAddress(address); + } + if (institutionToConvert.getMailingAddress() != null) { + Address address = institutionToConvert.getMailingAddress(); + address.setKey(null); + newCollection.setMailingAddress(address); + } // if there is no institution passed we need to create a new institution if (institutionKeyForNewCollection == null) { @@ -190,7 +200,7 @@ Institution mergeEntityFields(Institution entityToReplace, Institution replaceme replacement.getAlternativeCodes().addAll(entityToReplace.getAlternativeCodes()); // Copy over information that would be lost when removing these duplicates - setNullFields(replacement, entityToReplace); + setNullFieldsInTarget(replacement, entityToReplace); replacement.setEmail(mergeLists(entityToReplace.getEmail(), replacement.getEmail())); replacement.setPhone(mergeLists(entityToReplace.getPhone(), replacement.getPhone())); replacement.setDisciplines( diff --git a/registry-service/src/main/java/org/gbif/registry/service/collections/suggestions/BaseChangeSuggestionService.java b/registry-service/src/main/java/org/gbif/registry/service/collections/suggestions/BaseChangeSuggestionService.java index f0e6c764ff..b1814e86bc 100644 --- a/registry-service/src/main/java/org/gbif/registry/service/collections/suggestions/BaseChangeSuggestionService.java +++ b/registry-service/src/main/java/org/gbif/registry/service/collections/suggestions/BaseChangeSuggestionService.java @@ -2,11 +2,11 @@ import org.gbif.api.model.collections.Address; import org.gbif.api.model.collections.Collection; -import org.gbif.api.model.collections.CollectionEntity; import org.gbif.api.model.collections.CollectionEntityType; import org.gbif.api.model.collections.Contactable; import org.gbif.api.model.collections.Institution; import org.gbif.api.model.collections.OccurrenceMappeable; +import org.gbif.api.model.collections.PrimaryCollectionEntity; import org.gbif.api.model.collections.suggestions.Change; import org.gbif.api.model.collections.suggestions.ChangeSuggestion; import org.gbif.api.model.collections.suggestions.ChangeSuggestionService; @@ -62,8 +62,8 @@ public abstract class BaseChangeSuggestionService< T extends - CollectionEntity & Taggable & Identifiable & MachineTaggable & Commentable & Contactable - & OccurrenceMappeable, + PrimaryCollectionEntity & Taggable & Identifiable & MachineTaggable & Commentable + & Contactable & OccurrenceMappeable, R extends ChangeSuggestion> implements ChangeSuggestionService { @@ -167,7 +167,6 @@ protected ChangeSuggestionDto createUpdateSuggestionDto(R changeSuggestion) { checkArgument(changeSuggestion.getSuggestedEntity() != null); ChangeSuggestionDto dto = createBaseChangeSuggestionDto(changeSuggestion); - dto.setCountry(getCountry(changeSuggestion.getSuggestedEntity())); dto.setSuggestedEntity(toJson(changeSuggestion.getSuggestedEntity())); T currentEntity = crudService.get(changeSuggestion.getEntityKey()); @@ -180,7 +179,6 @@ protected ChangeSuggestionDto createNewEntitySuggestionDto(R changeSuggestion) { checkArgument(changeSuggestion.getSuggestedEntity() != null); ChangeSuggestionDto dto = createBaseChangeSuggestionDto(changeSuggestion); - dto.setCountry(getCountry(changeSuggestion.getSuggestedEntity())); dto.setSuggestedEntity(toJson(changeSuggestion.getSuggestedEntity())); return dto; @@ -188,13 +186,7 @@ protected ChangeSuggestionDto createNewEntitySuggestionDto(R changeSuggestion) { protected ChangeSuggestionDto createDeleteSuggestionDto(R changeSuggestion) { checkArgument(changeSuggestion.getEntityKey() != null); - - ChangeSuggestionDto dto = createBaseChangeSuggestionDto(changeSuggestion); - - T currentEntity = crudService.get(changeSuggestion.getEntityKey()); - dto.setCountry(getCountry(currentEntity)); - - return dto; + return createBaseChangeSuggestionDto(changeSuggestion); } protected ChangeSuggestionDto createMergeSuggestionDto(R changeSuggestion) { @@ -204,9 +196,6 @@ protected ChangeSuggestionDto createMergeSuggestionDto(R changeSuggestion) { ChangeSuggestionDto dto = createBaseChangeSuggestionDto(changeSuggestion); dto.setMergeTargetKey(changeSuggestion.getMergeTargetKey()); - T currentEntity = crudService.get(changeSuggestion.getEntityKey()); - dto.setCountry(getCountry(currentEntity)); - return dto; } @@ -319,7 +308,7 @@ public UUID applyChangeSuggestion(int suggestionKey) { public PagingResponse list( @Nullable Status status, @Nullable Type type, - @Nullable Country country, + @Nullable Country entityCountry, @Nullable String proposerEmail, @Nullable UUID entityKey, @Nullable Pageable pageable) { @@ -327,11 +316,11 @@ public PagingResponse list( List dtos = changeSuggestionMapper.list( - status, type, collectionEntityType, country, proposerEmail, entityKey, page); + status, type, collectionEntityType, entityCountry, proposerEmail, entityKey, page); long count = changeSuggestionMapper.count( - status, type, collectionEntityType, country, proposerEmail, entityKey); + status, type, collectionEntityType, entityCountry, proposerEmail, entityKey); List changeSuggestions = dtos.stream().map(this::dtoToChangeSuggestion).collect(Collectors.toList()); @@ -397,6 +386,13 @@ protected ChangeSuggestionDto createBaseChangeSuggestionDto(R changeSuggestion) dto.setProposerEmail(changeSuggestion.getProposerEmail()); dto.setProposedBy(getUsername()); dto.setModifiedBy(getUsername()); + + if (changeSuggestion.getEntityKey() != null) { + T currentEntity = crudService.get(changeSuggestion.getEntityKey()); + dto.setEntityCountry(getCountry(currentEntity)); + dto.setEntityName(currentEntity.getName()); + } + return dto; } @@ -427,7 +423,8 @@ protected R dtoToChangeSuggestion(ChangeSuggestionDto dto) { suggestion.setKey(dto.getKey()); suggestion.setStatus(dto.getStatus()); suggestion.setType(dto.getType()); - suggestion.setCountry(dto.getCountry()); + suggestion.setEntityCountry(dto.getEntityCountry()); + suggestion.setEntityName(dto.getEntityName()); suggestion.setAppliedBy(dto.getAppliedBy()); suggestion.setApplied(dto.getApplied()); suggestion.setDiscarded(dto.getDiscarded()); diff --git a/registry-service/src/main/java/org/gbif/registry/service/collections/suggestions/InstitutionChangeSuggestionService.java b/registry-service/src/main/java/org/gbif/registry/service/collections/suggestions/InstitutionChangeSuggestionService.java index 04f9753b1e..246a9864e0 100644 --- a/registry-service/src/main/java/org/gbif/registry/service/collections/suggestions/InstitutionChangeSuggestionService.java +++ b/registry-service/src/main/java/org/gbif/registry/service/collections/suggestions/InstitutionChangeSuggestionService.java @@ -3,7 +3,6 @@ import org.gbif.api.model.collections.CollectionEntityType; import org.gbif.api.model.collections.Institution; import org.gbif.api.model.collections.suggestions.InstitutionChangeSuggestion; -import org.gbif.api.model.collections.suggestions.Type; import org.gbif.api.service.collections.InstitutionService; import org.gbif.registry.events.EventManager; import org.gbif.registry.mail.EmailSender; @@ -68,15 +67,11 @@ protected ChangeSuggestionDto createConvertToCollectionSuggestionDto( checkArgument(institutionChangeSuggestion.getEntityKey() != null); ChangeSuggestionDto dto = createBaseChangeSuggestionDto(institutionChangeSuggestion); - dto.setType(Type.CONVERSION_TO_COLLECTION); dto.setInstitutionConvertedCollection( institutionChangeSuggestion.getInstitutionForConvertedCollection()); dto.setNameNewInstitutionConvertedCollection( institutionChangeSuggestion.getNameForNewInstitutionForConvertedCollection()); - Institution currentEntity = institutionService.get(institutionChangeSuggestion.getEntityKey()); - dto.setCountry(getCountry(currentEntity)); - return dto; } diff --git a/registry-ws-client/src/main/java/org/gbif/registry/ws/client/collections/PrimaryCollectionEntityClient.java b/registry-ws-client/src/main/java/org/gbif/registry/ws/client/collections/PrimaryCollectionEntityClient.java index 97c163e049..f21db32b77 100644 --- a/registry-ws-client/src/main/java/org/gbif/registry/ws/client/collections/PrimaryCollectionEntityClient.java +++ b/registry-ws-client/src/main/java/org/gbif/registry/ws/client/collections/PrimaryCollectionEntityClient.java @@ -127,7 +127,7 @@ void deleteOccurrenceMapping( PagingResponse listChangeSuggestion( @RequestParam(value = "status", required = false) Status status, @RequestParam(value = "type", required = false) Type type, - @RequestParam(value = "country") Country country, + @RequestParam(value = "entityCountry") Country entityCountry, @RequestParam(value = "proposerEmail", required = false) String proposerEmail, @RequestParam(value = "entityKey", required = false) UUID entityKey, @SpringQueryMap Pageable page); diff --git a/registry-ws/src/main/java/org/gbif/registry/ws/resources/collections/PrimaryCollectionEntityResource.java b/registry-ws/src/main/java/org/gbif/registry/ws/resources/collections/PrimaryCollectionEntityResource.java index 6652dce0e1..be6a6b1f58 100644 --- a/registry-ws/src/main/java/org/gbif/registry/ws/resources/collections/PrimaryCollectionEntityResource.java +++ b/registry-ws/src/main/java/org/gbif/registry/ws/resources/collections/PrimaryCollectionEntityResource.java @@ -188,11 +188,12 @@ public R getChangeSuggestion(@PathVariable("key") int key) { public PagingResponse listChangeSuggestion( @RequestParam(value = "status", required = false) Status status, @RequestParam(value = "type", required = false) Type type, - Country country, + Country entityCountry, @RequestParam(value = "proposerEmail", required = false) String proposerEmail, @RequestParam(value = "entityKey", required = false) UUID entityKey, Pageable page) { - return changeSuggestionService.list(status, type, country, proposerEmail, entityKey, page); + return changeSuggestionService.list( + status, type, entityCountry, proposerEmail, entityKey, page); } @PutMapping(value = "changeSuggestion/{key}/discard")