@@ -65,6 +65,21 @@ public SurveyResponseDetailsWindow(ExternalMessageDto externalMessage, Runnable
6565 ExternalMessageSurveyResponseRequest request = latest .getRequest ();
6666 ExternalMessageSurveyResponseResult result = latest .getResult ();
6767
68+ // --- External Message General Info section ---
69+ Label generalInfoHeading = new Label (I18nProperties .getCaption (Captions .surveyResponseGeneralInfo ));
70+ CssStyles .style (generalInfoHeading , CssStyles .H3 );
71+ layout .addComponent (generalInfoHeading );
72+
73+ addReadOnlyField (layout , "UUID" , externalMessage .getUuid ());
74+ addReadOnlyField (
75+ layout ,
76+ I18nProperties .getPrefixCaption (ExternalMessageDto .I18N_PREFIX , ExternalMessageDto .DISEASE ),
77+ toStringOrEmpty (externalMessage .getDisease ()));
78+ addReadOnlyField (
79+ layout ,
80+ I18nProperties .getPrefixCaption (ExternalMessageDto .I18N_PREFIX , ExternalMessageDto .STATUS ),
81+ toStringOrEmpty (externalMessage .getStatus ()));
82+
6883 // --- Metadata section ---
6984 Label metadataHeading = new Label (I18nProperties .getCaption (Captions .surveyResponseMetadata ));
7085 CssStyles .style (metadataHeading , CssStyles .H3 );
@@ -73,9 +88,9 @@ public SurveyResponseDetailsWindow(ExternalMessageDto externalMessage, Runnable
7388 addReadOnlyField (layout , "External Survey ID" , request .getExternalSurveyId ());
7489 addReadOnlyField (layout , "Token" , request .getToken ());
7590 addReadOnlyField (layout , "Respondent ID" , request .getExternalRespondentId ());
76- addReadOnlyField (layout , "Response Received" , request . getResponseReceivedDate () != null ? request .getResponseReceivedDate (). toString () : "" );
77- addReadOnlyField (layout , "Replacement Strategy" , request . getReplacementStrategy () != null ? request .getReplacementStrategy (). name () : "" );
78- addReadOnlyField (layout , "Empty Value Behavior" , request . getEmptyValueBehavior () != null ? request .getEmptyValueBehavior (). name () : "" );
91+ addReadOnlyField (layout , "Response Received" , toStringOrEmpty ( request .getResponseReceivedDate ()) );
92+ addReadOnlyField (layout , "Replacement Strategy" , toStringOrEmpty ( request .getReplacementStrategy ()) );
93+ addReadOnlyField (layout , "Empty Value Behavior" , toStringOrEmpty ( request .getEmptyValueBehavior ()) );
7994 addReadOnlyField (layout , "Patched in Case of Failures" , String .valueOf (request .isPatchedInCaseOfFailures ()));
8095
8196 // --- Patch Dictionary section ---
@@ -197,6 +212,10 @@ public SurveyResponseDetailsWindow(ExternalMessageDto externalMessage, Runnable
197212 UI .getCurrent ().addWindow (window );
198213 }
199214
215+ private static String toStringOrEmpty (Object value ) {
216+ return value != null ? value .toString () : "" ;
217+ }
218+
200219 private void addReadOnlyField (VerticalLayout layout , String caption , String value ) {
201220 Label label = new Label (value != null ? value : "" );
202221 label .setCaption (caption );
0 commit comments