3232import de .symeda .sormas .api .i18n .I18nProperties ;
3333import de .symeda .sormas .api .i18n .Strings ;
3434import de .symeda .sormas .ui .highcharts .HighChart ;
35+ import org .slf4j .Logger ;
36+ import org .slf4j .LoggerFactory ;
3537
3638@ SuppressWarnings ("serial" )
3739public class CampaignDashboardDiagramComponent extends VerticalLayout {
3840
41+ private static final Logger LOG = LoggerFactory .getLogger (CampaignDashboardDiagramComponent .class );
42+
3943 private final CampaignDiagramDefinitionDto diagramDefinition ;
4044
4145 private final Map <String , Map <Object , CampaignDiagramDataDto >> diagramDataBySeriesAndXAxis = new HashMap <>();
@@ -231,8 +235,7 @@ private void appendSeries(CampaignJurisdictionLevel campaignJurisdictionLevelGro
231235
232236 Map <Object , CampaignDiagramDataDto > seriesData = diagramDataBySeriesAndXAxis .get (seriesKey );
233237 Collection <CampaignDiagramDataDto > values = seriesData .values ();
234- Iterator <CampaignDiagramDataDto > iterator = values .iterator ();
235- String fieldName = (iterator .hasNext () ? iterator .next ().getFieldCaption () : seriesKey );
238+ String fieldName = assembleFieldname (values , series , seriesKey );
236239 if (showPercentages ) {
237240 if (campaignJurisdictionLevelGroupBy == CampaignJurisdictionLevel .COMMUNITY ) {
238241 fieldName = I18nProperties .getString (Strings .populationDataByCommunity );
@@ -250,6 +253,14 @@ private void appendSeries(CampaignJurisdictionLevel campaignJurisdictionLevelGro
250253 hcjs .append ("]" );
251254 }
252255
256+ private String assembleFieldname (final Collection <CampaignDiagramDataDto > values , final CampaignDiagramSeries series , final String defaultValue ) {
257+ if (series .getCaption () != null && !series .getCaption ().isEmpty ()) {
258+ return series .getCaption ();
259+ }
260+ Iterator <CampaignDiagramDataDto > iterator = values .iterator ();
261+ return iterator .hasNext () ? iterator .next ().getFieldCaption () : defaultValue ;
262+ }
263+
253264 private void appendData (
254265 boolean isCommunityGrouping ,
255266 StringBuilder hcjs ,
0 commit comments