# HG changeset patch # User František Kučera # Date 1295983712 -3600 # Node ID 2472d9e9c0aa5f2ef0f493f7f54541b0fdb82d7f # Parent a121def64733574bbaa3677f0232c7104007be70 Souřadnice podniku (pro mapu) budeme počítat hned při založení. diff -r a121def64733 -r 2472d9e9c0aa java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java Sat Jan 15 23:04:15 2011 +0100 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java Tue Jan 25 20:28:32 2011 +0100 @@ -13,8 +13,6 @@ import cz.frantovo.nekurak.vyjimky.KomentarovaVyjimka; import cz.frantovo.nekurak.vyjimky.TexyVyjimka; import java.util.Collection; -import java.util.HashSet; -import java.util.Set; import java.util.logging.Logger; import javax.annotation.Resource; import javax.annotation.security.RolesAllowed; @@ -63,6 +61,8 @@ p.setSchvaleny(false); p.setSpravce(ctx.getCallerPrincipal().getName()); podnikDAO.zaloz(p); + /** TODO: asynchronní počítání */ + dopocitejSouradnice(p, new Geo()); } @RolesAllowed("opravneny") @@ -78,18 +78,32 @@ int pocetAktualizovanych = 0; for (Podnik p : podnikDAO.getPodnikyBezSouradnic()) { - Souradnice s = g.getSouradnice(p.getUlice() + " " + p.getCisloPopisne() + ", " + p.getMesto()); - if (s != null) { + if (dopocitejSouradnice(p, g)) { pocetAktualizovanych++; - p.setSirka(s.getSirka()); - p.setDelka(s.getDelka()); - podnikDAO.uloz(p); } } return pocetAktualizovanych; } + /** + * Na základě adresy (ulice, číslo, město) se pokusí zjistit souřadnice a uloží je k podniku. + * @param p podnik + * @param g poskytovatel geografických služeb + * @return zda se souřadnice podařilo dopočítat + */ + private boolean dopocitejSouradnice(Podnik p, Geo g) { + Souradnice s = g.getSouradnice(p.getUlice() + " " + p.getCisloPopisne() + ", " + p.getMesto()); + if (s != null) { + p.setSirka(s.getSirka()); + p.setDelka(s.getDelka()); + podnikDAO.uloz(p); + return true; + } else { + return false; + } + } + public void hlasuj(int podnik, boolean hlas, String ipAdresa) { podnikDAO.hlasuj(podnik, hlas, ipAdresa); diff -r a121def64733 -r 2472d9e9c0aa java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/PodnikRemote.java --- a/java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/PodnikRemote.java Sat Jan 15 23:04:15 2011 +0100 +++ b/java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/PodnikRemote.java Tue Jan 25 20:28:32 2011 +0100 @@ -29,6 +29,10 @@ public Podnik getPodnik(int id); + /** + * Dopočítá souřadnice podle adresy podniku. + * @return počet podniků u nichž jsme našli souřadnice + */ public int dopocitejSouradnice(); /**