Revision ebedad1f
Added by Anahit Babadshanjan over 15 years ago
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/name/TaxonNameDaoHibernateImpl.java | ||
---|---|---|
28 | 28 |
import eu.etaxonomy.cdm.model.name.TaxonNameBase; |
29 | 29 |
import eu.etaxonomy.cdm.model.name.TypeDesignationBase; |
30 | 30 |
import eu.etaxonomy.cdm.model.name.TypeDesignationStatus; |
31 |
import eu.etaxonomy.cdm.model.taxon.Taxon; |
|
32 |
import eu.etaxonomy.cdm.model.taxon.TaxonBase; |
|
31 | 33 |
import eu.etaxonomy.cdm.persistence.dao.hibernate.common.IdentifiableDaoBase; |
32 | 34 |
import eu.etaxonomy.cdm.persistence.dao.name.ITaxonNameDao; |
33 | 35 |
|
... | ... | |
58 | 60 |
query.setParameter("name",name); |
59 | 61 |
return ((Long)query.uniqueResult()).intValue(); |
60 | 62 |
} |
63 |
|
|
64 |
public int countNames(String queryString) { |
|
65 |
|
|
66 |
Criteria criteria = getSession().createCriteria(TaxonNameBase.class); |
|
67 |
|
|
68 |
if (queryString != null) { |
|
69 |
criteria.add(Restrictions.ilike("nameCache", queryString)); |
|
70 |
} |
|
71 |
criteria.setProjection(Projections.projectionList().add(Projections.rowCount())); |
|
72 |
|
|
73 |
return (Integer)criteria.uniqueResult(); |
|
74 |
} |
|
61 | 75 |
|
62 | 76 |
public int countNames(String genusOrUninomial, String infraGenericEpithet, String specificEpithet, String infraSpecificEpithet, Rank rank) { |
63 | 77 |
Criteria criteria = getSession().createCriteria(TaxonNameBase.class); |
... | ... | |
182 | 196 |
return (List<TypeDesignationBase>)query.list(); |
183 | 197 |
} |
184 | 198 |
|
199 |
|
|
200 |
public List<TaxonNameBase<?,?>> searchNames(String queryString, Integer pageSize, Integer pageNumber) { |
|
201 |
|
|
202 |
Criteria criteria = getSession().createCriteria(TaxonNameBase.class); |
|
203 |
|
|
204 |
if (queryString != null) { |
|
205 |
criteria.add(Restrictions.ilike("nameCache", queryString)); |
|
206 |
} |
|
207 |
if(pageSize != null) { |
|
208 |
criteria.setMaxResults(pageSize); |
|
209 |
if(pageNumber != null) { |
|
210 |
criteria.setFirstResult(pageNumber * pageSize); |
|
211 |
} else { |
|
212 |
criteria.setFirstResult(0); |
|
213 |
} |
|
214 |
} |
|
215 |
List<TaxonNameBase<?,?>> results = criteria.list(); |
|
216 |
return results; |
|
217 |
} |
|
218 |
|
|
219 |
|
|
185 | 220 |
public List<TaxonNameBase> searchNames(String genusOrUninomial,String infraGenericEpithet, String specificEpithet, String infraSpecificEpithet, Rank rank, Integer pageSize,Integer pageNumber) { |
186 | 221 |
Criteria criteria = getSession().createCriteria(TaxonNameBase.class); |
187 | 222 |
|
... | ... | |
222 | 257 |
criteria.setFirstResult(0); |
223 | 258 |
} |
224 | 259 |
} |
225 |
|
|
226 |
|
|
260 |
|
|
227 | 261 |
return (List<TaxonNameBase>)criteria.list(); |
228 | 262 |
} |
229 | 263 |
|
Also available in: Unified diff
Name search functionality for taxonomic editor