Filtrování podniků podle kategorie.
1.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/dao/PodnikDAO.java Sat Jan 15 00:06:34 2011 +0100
1.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/dao/PodnikDAO.java Sat Jan 15 00:57:45 2011 +0100
1.3 @@ -1,5 +1,6 @@
1.4 package cz.frantovo.nekurak.dao;
1.5
1.6 +import cz.frantovo.nekurak.dto.Kategorie;
1.7 import cz.frantovo.nekurak.dto.Komentar;
1.8 import cz.frantovo.nekurak.dto.Podnik;
1.9 import cz.frantovo.nekurak.dto.VysledekHlasovani;
1.10 @@ -7,6 +8,7 @@
1.11 import java.util.Collection;
1.12 import java.util.Date;
1.13 import java.util.List;
1.14 +import java.util.Set;
1.15 import javax.ejb.LocalBean;
1.16 import javax.ejb.Stateless;
1.17 import javax.persistence.EntityManager;
1.18 @@ -31,7 +33,7 @@
1.19 }
1.20
1.21 public Collection<Podnik> getPodniky() {
1.22 - Query dotaz = em.createQuery("FROM " + DAO.t(Podnik.class) + " o ORDER BY datum DESC");
1.23 + Query dotaz = em.createQuery("FROM " + DAO.t(Podnik.class) + " p ORDER BY datum DESC");
1.24 return dotaz.getResultList();
1.25 }
1.26
1.27 @@ -39,10 +41,21 @@
1.28 * @return podniky, které nemají souřadnice (null, null)
1.29 */
1.30 public Collection<Podnik> getPodnikyBezSouradnic() {
1.31 - Query dotaz = em.createQuery("FROM " + DAO.t(Podnik.class) + " o WHERE sirka IS NULL AND delka IS NULL");
1.32 + Query dotaz = em.createQuery("FROM " + DAO.t(Podnik.class) + " p WHERE sirka IS NULL AND delka IS NULL");
1.33 return dotaz.getResultList();
1.34 }
1.35
1.36 + /**
1.37 + * @param kategorie jedna kategorie
1.38 + * @return podniky určité kategorie
1.39 + */
1.40 + public Collection<Podnik> getPodniky(Kategorie kategorie) {
1.41 + Query dotaz = em.createQuery("SELECT p FROM " + DAO.t(Podnik.class) + " p INNER JOIN p.kategorie k WHERE k = :kategorie ORDER BY datum DESC");
1.42 + dotaz.setParameter("kategorie", kategorie);
1.43 + return dotaz.getResultList();
1.44 + }
1.45 +
1.46 +
1.47 public Podnik getPodnik(int id) {
1.48 return em.find(Podnik.class, id);
1.49 }
2.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java Sat Jan 15 00:06:34 2011 +0100
2.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java Sat Jan 15 00:57:45 2011 +0100
2.3 @@ -1,6 +1,7 @@
2.4 package cz.frantovo.nekurak.ejb;
2.5
2.6 import cz.frantovo.nekurak.dao.PodnikDAO;
2.7 +import cz.frantovo.nekurak.dto.Kategorie;
2.8 import cz.frantovo.nekurak.dto.Komentar;
2.9 import cz.frantovo.nekurak.dto.Podnik;
2.10 import cz.frantovo.nekurak.dto.VysledekHlasovani;
2.11 @@ -11,6 +12,8 @@
2.12 import cz.frantovo.nekurak.vyjimky.KomentarovaVyjimka;
2.13 import cz.frantovo.nekurak.vyjimky.TexyVyjimka;
2.14 import java.util.Collection;
2.15 +import java.util.HashSet;
2.16 +import java.util.Set;
2.17 import java.util.logging.Logger;
2.18 import javax.annotation.Resource;
2.19 import javax.annotation.security.RolesAllowed;
2.20 @@ -36,6 +39,11 @@
2.21 return vysledek;
2.22 }
2.23
2.24 + public Collection<Podnik> getPodniky(Kategorie kategorie) {
2.25 + Collection<Podnik> vysledek = podnikDAO.getPodniky(kategorie);
2.26 + return vysledek;
2.27 + }
2.28 +
2.29 public Podnik getPodnik(int id) {
2.30 return podnikDAO.getPodnik(id);
2.31 }
3.1 --- a/java/nekurak.net-lib/src/cz/frantovo/nekurak/dto/Kategorie.java Sat Jan 15 00:06:34 2011 +0100
3.2 +++ b/java/nekurak.net-lib/src/cz/frantovo/nekurak/dto/Kategorie.java Sat Jan 15 00:57:45 2011 +0100
3.3 @@ -13,6 +13,13 @@
3.4
3.5 private int id;
3.6
3.7 + public Kategorie() {
3.8 + }
3.9 +
3.10 + public Kategorie(int id) {
3.11 + this.id = id;
3.12 + }
3.13 +
3.14 public int getId() {
3.15 return id;
3.16 }
4.1 --- a/java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/PodnikRemote.java Sat Jan 15 00:06:34 2011 +0100
4.2 +++ b/java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/PodnikRemote.java Sat Jan 15 00:57:45 2011 +0100
4.3 @@ -1,5 +1,6 @@
4.4 package cz.frantovo.nekurak.ejb;
4.5
4.6 +import cz.frantovo.nekurak.dto.Kategorie;
4.7 import cz.frantovo.nekurak.dto.Komentar;
4.8 import cz.frantovo.nekurak.dto.Podnik;
4.9 import cz.frantovo.nekurak.dto.VysledekHlasovani;
4.10 @@ -17,6 +18,8 @@
4.11
4.12 public Collection<Podnik> getPodniky();
4.13
4.14 + public Collection<Podnik> getPodniky(Kategorie kategorie);
4.15 +
4.16 public void zalozPodnik(Podnik p);
4.17
4.18 public void upravPodnik(Podnik p);
5.1 --- a/java/nekurak.net-lib/src/cz/frantovo/nekurak/preklady_cs.properties Sat Jan 15 00:06:34 2011 +0100
5.2 +++ b/java/nekurak.net-lib/src/cz/frantovo/nekurak/preklady_cs.properties Sat Jan 15 00:57:45 2011 +0100
5.3 @@ -28,6 +28,7 @@
5.4 chybovaStranka.500.popis=N\u011bco se bohu\u017eel nepovedlo.
5.5
5.6 uvod.naposledyPridanePodniky=Naposledy p\u0159idan\u00e9 podniky
5.7 +uvod.podnikyKategorie=Podniky z kategorie
5.8 uvod.www=webov\u00e1 str\u00e1nka podniku
5.9 uvod.adresa=Adresa
5.10
6.1 --- a/java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/Uvod.java Sat Jan 15 00:06:34 2011 +0100
6.2 +++ b/java/nekurak.net-web/src/java/cz/frantovo/nekurak/web/Uvod.java Sat Jan 15 00:57:45 2011 +0100
6.3 @@ -1,5 +1,6 @@
6.4 package cz.frantovo.nekurak.web;
6.5
6.6 +import cz.frantovo.nekurak.dto.Kategorie;
6.7 import cz.frantovo.nekurak.dto.Podnik;
6.8 import java.util.Collection;
6.9
6.10 @@ -10,8 +11,21 @@
6.11 public class Uvod {
6.12
6.13 private HledacSluzby hledac = new HledacSluzby();
6.14 + Integer kategorie = null;
6.15 +
6.16 + public void setKategorie(Integer kategorie) {
6.17 + this.kategorie = kategorie;
6.18 + }
6.19 +
6.20 + public Integer getKategorie() {
6.21 + return kategorie;
6.22 + }
6.23
6.24 public Collection<Podnik> getPodniky() {
6.25 - return hledac.getPodnikEJB().getPodniky();
6.26 + if (kategorie == null) {
6.27 + return hledac.getPodnikEJB().getPodniky();
6.28 + } else {
6.29 + return hledac.getPodnikEJB().getPodniky(new Kategorie(kategorie));
6.30 + }
6.31 }
6.32 }
7.1 --- a/java/nekurak.net-web/web/WEB-INF/casti/uvod.jsp Sat Jan 15 00:06:34 2011 +0100
7.2 +++ b/java/nekurak.net-web/web/WEB-INF/casti/uvod.jsp Sat Jan 15 00:57:45 2011 +0100
7.3 @@ -8,10 +8,22 @@
7.4 version="2.0">
7.5
7.6 <jsp:useBean id="uvod" class="cz.frantovo.nekurak.web.Uvod" scope="request"/>
7.7 + <jsp:setProperty name="uvod" property="kategorie"/>
7.8
7.9 <nk:stranka>
7.10
7.11 - <p><fmt:message key="uvod.naposledyPridanePodniky"/>:</p>
7.12 + <p>
7.13 + <c:choose>
7.14 + <c:when test="${uvod.kategorie == null}">
7.15 + <fmt:message key="uvod.naposledyPridanePodniky"/>:
7.16 + </c:when>
7.17 + <c:otherwise>
7.18 + <fmt:message key="uvod.podnikyKategorie"/>:
7.19 + <fmt:message key="dto.kategorie.${uvod.kategorie}.nazev"/>.
7.20 + </c:otherwise>
7.21 + </c:choose>
7.22 +
7.23 + </p>
7.24
7.25 <c:forEach var="p" items="${uvod.podniky}">
7.26 <nk:podnikZahlavi podnik="${p}" detailPodniku="false"/>
8.1 --- a/java/nekurak.net-web/web/WEB-INF/tags/nekurak/podnikZahlavi.tag Sat Jan 15 00:06:34 2011 +0100
8.2 +++ b/java/nekurak.net-web/web/WEB-INF/tags/nekurak/podnikZahlavi.tag Sat Jan 15 00:57:45 2011 +0100
8.3 @@ -42,7 +42,7 @@
8.4 <c:forEach var="k" items="${podnik.kategorie}">
8.5 <li class="normalni">
8.6 <fmt:message key="dto.kategorie.${k.id}.popis" var="popisKategorie"/>
8.7 - <a href="?akce=kategorie&amp;id=${k.id}" title="${popisKategorie}">
8.8 + <a href="?kategorie=${k.id}" title="${popisKategorie}">
8.9 <fmt:message key="dto.kategorie.${k.id}.nazev"/>
8.10 </a>
8.11 </li>
8.12 @@ -55,7 +55,7 @@
8.13 </c:choose>
8.14 <li class="${cssKurackost}">
8.15 <fmt:message key="dto.podnik.kurackost.${podnik.kurackost.id}.popis" var="popisKurackosti"/>
8.16 - <a href="?akce=kurackost&amp;id=${podnik.kurackost.id}" title="${popisKurackosti}">
8.17 + <a href="?kurackost=${podnik.kurackost.id}" title="${popisKurackosti}">
8.18 <fmt:message key="dto.podnik.kurackost.${podnik.kurackost.id}.nazev"/>
8.19 </a>
8.20 </li>
8.21 @@ -68,7 +68,7 @@
8.22 </c:choose>
8.23 <li class="${cssSpokojenost}">
8.24 <fmt:message key="dto.podnik.spokojenost.${spokojenost}.popis" var="popisSpokojenosti"/>
8.25 - <a href="?akce=spokojenost&amp;id=${spokojenost}" title="${popisSpokojenosti}">
8.26 + <a href="#spokojenost_${spokojenost}" title="${popisSpokojenosti}">
8.27 <fmt:message key="dto.podnik.spokojenost.${spokojenost}.nazev"/>
8.28 </a>
8.29 </li>