diff --git a/src/main/java/org/folio/consortia/service/impl/UserServiceImpl.java b/src/main/java/org/folio/consortia/service/impl/UserServiceImpl.java index d5d8fa3e..49a37d50 100644 --- a/src/main/java/org/folio/consortia/service/impl/UserServiceImpl.java +++ b/src/main/java/org/folio/consortia/service/impl/UserServiceImpl.java @@ -8,6 +8,7 @@ import java.util.UUID; import org.folio.consortia.client.UsersClient; +import org.folio.consortia.domain.dto.Personal; import org.folio.consortia.domain.dto.User; import org.folio.consortia.exception.ConsortiumClientException; import org.folio.consortia.exception.ResourceNotFoundException; @@ -90,6 +91,12 @@ public User prepareShadowUser(UUID userId, String tenantId) { user.setUsername(String.format("%s_%s", userOptional.getUsername(), HelperUtils.randomString(RANDOM_STRING_COUNT))); user.setType(SHADOW_USER_TYPE); user.setActive(true); + if (Objects.nonNull(userOptional.getPersonal())) { + // these firstname, lastname fields needed to correctly build UI metadata objects + user.setPersonal(new Personal() + .firstName(userOptional.getPersonal().getFirstName()) + .lastName(userOptional.getPersonal().getLastName())); + } } else { log.warn("Could not find real user with id: {} in his home tenant: {}", userId.toString(), tenantId); throw new ResourceNotFoundException(USER_ID, userId.toString()); diff --git a/src/test/java/org/folio/consortia/service/UserServiceTest.java b/src/test/java/org/folio/consortia/service/UserServiceTest.java index 1b1de08d..a2c1960f 100644 --- a/src/test/java/org/folio/consortia/service/UserServiceTest.java +++ b/src/test/java/org/folio/consortia/service/UserServiceTest.java @@ -77,6 +77,8 @@ void shouldPrepareShadowUser() { User user = userService.prepareShadowUser(UUID.randomUUID(), "diku"); Assertions.assertEquals("shadow", user.getType()); Assertions.assertEquals(true, user.getActive()); + Assertions.assertEquals("testFirst", user.getPersonal().getFirstName()); + Assertions.assertEquals("testLast", user.getPersonal().getLastName()); } private User createUserEntity(Boolean updateble) {