SI-875 Service contacts (UUID) angelegt

Signed-off-by: Ina Curdt <Ina.Curdt@pta.de>
diff --git a/src/main/java/org/eclipse/openk/contactbasedata/controller/ContactController.java b/src/main/java/org/eclipse/openk/contactbasedata/controller/ContactController.java
index 54def44..06528cb 100644
--- a/src/main/java/org/eclipse/openk/contactbasedata/controller/ContactController.java
+++ b/src/main/java/org/eclipse/openk/contactbasedata/controller/ContactController.java
@@ -76,6 +76,17 @@
                 filter, pageable);
     }
 
+
+    @ApiOperation(value = "Anzeigen eines gespeicherten Kontaktes")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "Erfolgreich durchgeführt")})
+    @ResponseStatus(HttpStatus.OK)
+    @Secured({"ROLE_KON-READER", "ROLE_KON-WRITER", "ROLE_KON-ADMIN"})
+    @GetMapping("/{contactUuid}")
+    public VwDetailedContact findContact(
+            @PathVariable( "contactUuid") UUID contactUuid){
+            return contactService.findDetailedContactByUuid(contactUuid);
+    }
+
     @ApiOperation(value = "Anonymisieren eines Kontaktes")
     @ApiResponses(value = {
         @ApiResponse(code = 200, message = "Kontakt wurde anonymisiert"),
diff --git a/src/main/java/org/eclipse/openk/contactbasedata/repository/DetailedContactRepository.java b/src/main/java/org/eclipse/openk/contactbasedata/repository/DetailedContactRepository.java
index 3634bb2..5978f7f 100644
--- a/src/main/java/org/eclipse/openk/contactbasedata/repository/DetailedContactRepository.java
+++ b/src/main/java/org/eclipse/openk/contactbasedata/repository/DetailedContactRepository.java
@@ -22,6 +22,7 @@
 import org.springframework.data.repository.query.Param;
 
 import java.util.Date;
+import java.util.Optional;
 import java.util.UUID;
 
 public interface DetailedContactRepository extends PagingAndSortingRepository<VwDetailedContact, Long> {
@@ -53,5 +54,9 @@
                                          @Param("filterDelLockExceeded") boolean filterDelLockExceeded,
                                          @Param("showAnonymized") boolean showAnonymized,
                                          Pageable pageable);
+
+    Optional<VwDetailedContact> findByUuid(UUID contactUuid);
 }
 
+
+
diff --git a/src/main/java/org/eclipse/openk/contactbasedata/service/ContactService.java b/src/main/java/org/eclipse/openk/contactbasedata/service/ContactService.java
index aa50605..fc24db2 100644
--- a/src/main/java/org/eclipse/openk/contactbasedata/service/ContactService.java
+++ b/src/main/java/org/eclipse/openk/contactbasedata/service/ContactService.java
@@ -62,4 +62,12 @@
                     pageable);
     }
 
+    public VwDetailedContact findDetailedContactByUuid(UUID contactUuid){
+        VwDetailedContact vwDetailedContact = detailedContactRepository
+                .findByUuid(contactUuid)
+                .orElseThrow(() -> new NotFoundException("contact.uuid.not.existing"));
+
+        return vwDetailedContact;
+    }
+
 }