Revision 5f031b4f
Added by Patrick Plitzner over 7 years ago
src/main/java/eu/etaxonomy/cdm/vaadin/util/CdmQueryFactory.java | ||
---|---|---|
22 | 22 |
import com.vaadin.data.util.sqlcontainer.query.QueryDelegate; |
23 | 23 |
|
24 | 24 |
import eu.etaxonomy.cdm.model.common.Language; |
25 |
import eu.etaxonomy.cdm.model.common.Representation; |
|
25 | 26 |
import eu.etaxonomy.cdm.model.location.NamedArea; |
26 | 27 |
import eu.etaxonomy.cdm.vaadin.statement.CdmStatementDelegate; |
27 | 28 |
|
... | ... | |
97 | 98 |
"rank.titleCache AS "+RANK_COLUMN+", "; |
98 | 99 |
|
99 | 100 |
for(NamedArea namedArea : namedAreas){ |
100 |
String label; |
|
101 |
if(abbreviatedLabels){ |
|
102 |
label = namedArea.getRepresentation(Language.DEFAULT()).getAbbreviatedLabel(); |
|
101 |
String label = null; |
|
102 |
Representation representation = namedArea.getRepresentation(Language.DEFAULT()); |
|
103 |
if(representation!=null){ |
|
104 |
if(abbreviatedLabels){ |
|
105 |
label = representation.getAbbreviatedLabel(); |
|
106 |
} |
|
107 |
else{ |
|
108 |
label = representation.getLabel(); |
|
109 |
} |
|
103 | 110 |
} |
104 |
else{
|
|
105 |
label = namedArea.getTitleCache();
|
|
111 |
if(label==null){
|
|
112 |
label = namedArea.getTitleCache();
|
|
106 | 113 |
} |
107 |
SELECT_QUERY += "MAX( IF(area.titleCache = '"+ label +"', statusTerm.titleCache, NULL) ) as '"+ label +"'," ;
|
|
114 |
SELECT_QUERY += "MAX( IF(area.titleCache = '"+ namedArea.getTitleCache() +"', statusTerm.titleCache, NULL) ) as '"+ label +"'," ;
|
|
108 | 115 |
} |
109 | 116 |
SELECT_QUERY = StringUtils.stripEnd(SELECT_QUERY, ",")+" "; |
110 | 117 |
SELECT_QUERY= SELECT_QUERY + FROM_QUERY + GROUP_BY + ORDER_BY; |
Also available in: Unified diff
ref #5458 Error handling for abbreviated labels