Revision 892efc69
Added by Andreas Kohlbecker almost 14 years ago
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/reference/ReferenceDaoHibernateImpl.java | ||
---|---|---|
21 | 21 |
import org.springframework.beans.factory.annotation.Qualifier; |
22 | 22 |
import org.springframework.stereotype.Repository; |
23 | 23 |
|
24 |
import eu.etaxonomy.cdm.model.agent.TeamOrPersonBase; |
|
24 | 25 |
import eu.etaxonomy.cdm.model.common.UuidAndTitleCache; |
25 | 26 |
import eu.etaxonomy.cdm.model.reference.Article; |
26 | 27 |
import eu.etaxonomy.cdm.model.reference.Book; |
... | ... | |
108 | 109 |
List<UuidAndTitleCache<ReferenceBase>> list = new ArrayList<UuidAndTitleCache<ReferenceBase>>(); |
109 | 110 |
Session session = getSession(); |
110 | 111 |
|
111 |
Query query = session.createQuery("select uuid, title from " + type.getSimpleName()); |
|
112 |
Query query = session.createQuery("select uuid, titleCache from " + type.getSimpleName());
|
|
112 | 113 |
|
113 | 114 |
List<Object[]> result = query.list(); |
114 | 115 |
|
... | ... | |
119 | 120 |
return list; |
120 | 121 |
} |
121 | 122 |
|
123 |
@Override |
|
124 |
public List<UuidAndTitleCache<ReferenceBase>> getUuidAndTitleCache() { |
|
125 |
List<UuidAndTitleCache<ReferenceBase>> list = new ArrayList<UuidAndTitleCache<ReferenceBase>>(); |
|
126 |
Session session = getSession(); |
|
127 |
|
|
128 |
Query query = session.createQuery("select r.uuid, r.titleCache, ab.titleCache from " + type.getSimpleName() + " as r join r.authorTeam as ab ");//"select uuid, titleCache from " + type.getSimpleName()); |
|
129 |
|
|
130 |
List<Object[]> result = query.list(); |
|
131 |
|
|
132 |
for(Object[] object : result){ |
|
133 |
UuidAndTitleCache<ReferenceBase> uuidAndTitleCache; |
|
134 |
String referenceTitle = (String) object[1]; |
|
135 |
|
|
136 |
if(referenceTitle != null){ |
|
137 |
String teamTitle = (String) object[2]; |
|
138 |
if(teamTitle != null){ |
|
139 |
referenceTitle = referenceTitle.replace(teamTitle + ", ", ""); |
|
140 |
referenceTitle += " - " + teamTitle; |
|
141 |
} |
|
142 |
list.add(new UuidAndTitleCache<ReferenceBase>(ReferenceBase.class, (UUID) object[0], referenceTitle)); |
|
143 |
}else{ |
|
144 |
logger.error("title cache of reference is null. UUID: " + object[0]); |
|
145 |
} |
|
146 |
} |
|
147 |
|
|
148 |
return list; |
|
149 |
} |
|
150 |
|
|
122 | 151 |
public List<ReferenceBase> getAllReferencesForPublishing(){ |
123 | 152 |
List<ReferenceBase> references = getSession().createQuery("Select r from ReferenceBase r "+ |
124 | 153 |
"where r.id IN "+ |
Also available in: Unified diff
merging /branches/cdmlib/SPRINT-Chichorieae1/ to trunk