Souřadnice podniku (pro mapu) budeme počítat hned při založení.
authorFrantišek Kučera <franta-hg@frantovo.cz>
Tue, 25 Jan 2011 20:28:32 +0100
changeset 1762472d9e9c0aa
parent 175 a121def64733
child 177 d874e9e3e162
Souřadnice podniku (pro mapu) budeme počítat hned při založení.
java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java
java/nekurak.net-lib/src/cz/frantovo/nekurak/ejb/PodnikRemote.java
     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  	/**