Souřadnice podniku (pro mapu) budeme počítat hned při založení.
1.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java Sat Jan 15 23:04:15 2011 +0100
1.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java Tue Jan 25 20:28:32 2011 +0100
1.3 @@ -13,8 +13,6 @@
1.4 import cz.frantovo.nekurak.vyjimky.KomentarovaVyjimka;
1.5 import cz.frantovo.nekurak.vyjimky.TexyVyjimka;
1.6 import java.util.Collection;
1.7 -import java.util.HashSet;
1.8 -import java.util.Set;
1.9 import java.util.logging.Logger;
1.10 import javax.annotation.Resource;
1.11 import javax.annotation.security.RolesAllowed;
1.12 @@ -63,6 +61,8 @@
1.13 p.setSchvaleny(false);
1.14 p.setSpravce(ctx.getCallerPrincipal().getName());
1.15 podnikDAO.zaloz(p);
1.16 + /** TODO: asynchronní počítání */
1.17 + dopocitejSouradnice(p, new Geo());
1.18 }
1.19
1.20 @RolesAllowed("opravneny")
1.21 @@ -78,18 +78,32 @@
1.22 int pocetAktualizovanych = 0;
1.23
1.24 for (Podnik p : podnikDAO.getPodnikyBezSouradnic()) {
1.25 - Souradnice s = g.getSouradnice(p.getUlice() + " " + p.getCisloPopisne() + ", " + p.getMesto());
1.26 - if (s != null) {
1.27 + if (dopocitejSouradnice(p, g)) {
1.28 pocetAktualizovanych++;
1.29 - p.setSirka(s.getSirka());
1.30 - p.setDelka(s.getDelka());
1.31 - podnikDAO.uloz(p);
1.32 }
1.33 }
1.34
1.35 return pocetAktualizovanych;
1.36 }
1.37
1.38 + /**
1.39 + * Na základě adresy (ulice, číslo, město) se pokusí zjistit souřadnice a uloží je k podniku.
1.40 + * @param p podnik
1.41 + * @param g poskytovatel geografických služeb
1.42 + * @return zda se souřadnice podařilo dopočítat
1.43 + */
1.44 + private boolean dopocitejSouradnice(Podnik p, Geo g) {
1.45 + Souradnice s = g.getSouradnice(p.getUlice() + " " + p.getCisloPopisne() + ", " + p.getMesto());
1.46 + if (s != null) {
1.47 + p.setSirka(s.getSirka());
1.48 + p.setDelka(s.getDelka());
1.49 + podnikDAO.uloz(p);
1.50 + return true;
1.51 + } else {
1.52 + return false;
1.53 + }
1.54 + }
1.55 +
1.56 public void hlasuj(int podnik, boolean hlas, String ipAdresa) {
1.57
1.58 podnikDAO.hlasuj(podnik, hlas, ipAdresa);
2.1 --- a/java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/PodnikRemote.java Sat Jan 15 23:04:15 2011 +0100
2.2 +++ b/java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/PodnikRemote.java Tue Jan 25 20:28:32 2011 +0100
2.3 @@ -29,6 +29,10 @@
2.4
2.5 public Podnik getPodnik(int id);
2.6
2.7 + /**
2.8 + * Dopočítá souřadnice podle adresy podniku.
2.9 + * @return počet podniků u nichž jsme našli souřadnice
2.10 + */
2.11 public int dopocitejSouradnice();
2.12
2.13 /**