gleimar 2016-09-02 16:46:00 +00:00
parent a2dcadab73
commit 15060cbca5
1 changed files with 7 additions and 1 deletions

View File

@ -10,8 +10,10 @@ import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.LinkedHashSet;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set;
import org.hibernate.Query; import org.hibernate.Query;
import org.hibernate.SessionFactory; import org.hibernate.SessionFactory;
@ -168,17 +170,21 @@ public class CalcularPeajeHibernateDAO extends GenericHibernateDAO<String, Strin
} }
private Map<Integer, CasetaPeaje> buscaCasetas(List<PeajeVO> pvo) { private Map<Integer, CasetaPeaje> buscaCasetas(List<PeajeVO> pvo) {
List<Integer> ids = new ArrayList<Integer>(); Set<Integer> ids = new LinkedHashSet<Integer>();
Map<Integer, CasetaPeaje> casetas = new HashMap<Integer, CasetaPeaje>(); Map<Integer, CasetaPeaje> casetas = new HashMap<Integer, CasetaPeaje>();
for (PeajeVO p : pvo) { for (PeajeVO p : pvo) {
ids.add(p.casetaPeajeId); ids.add(p.casetaPeajeId);
} }
Query query = getSession() Query query = getSession()
.createQuery("select c from CasetaPeaje c where c.casetaPeajeId in (:ids) "); .createQuery("select c from CasetaPeaje c where c.casetaPeajeId in (:ids) ");
query.setParameterList("ids", ids); query.setParameterList("ids", ids);
for (CasetaPeaje c : (List<CasetaPeaje>) query.list()) { for (CasetaPeaje c : (List<CasetaPeaje>) query.list()) {
casetas.put(c.getCasetaPeajeId(), c); casetas.put(c.getCasetaPeajeId(), c);
} }
return casetas; return casetas;
} }