--- dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/Database.java 2015/08/10 08:59:14 2641 +++ dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/Database.java 2015/09/27 18:20:41 2708 @@ -1,7 +1,5 @@ package dk.daoas.fulddaekning; -import geocode.GeoPoint; - import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; @@ -27,10 +25,10 @@ Connection conn; PreparedStatement saveStmt; - List alleAdresser; + List alleAdresser; Adresse alleIkkeDaekkede[]; - Map> daekkedeAdresserHO = new HashMap>(); + Map> daekkedeAdresserHO = new HashMap>(); @@ -50,8 +48,8 @@ public Database(SafeProperties conf) throws SQLException,IOException { this.conn = getConnection( conf ); - String sql = "INSERT INTO fulddaekning.afstand_anden_rute_ny (orgId,orgPostnr, orgAdresse,orgGadeid,orgHusnr,orgHusnrBogstav,orgLatitude,orgLongitude,orgRute,id,postnr,adresse,gadeid,husnr,husnrbogstav,latitude,longitude,rute,afstand,`timestamp`) "+ - "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, now() )"; + String sql = "INSERT INTO fulddaekning.afstand_anden_rute_ny (orgId,orgPostnr, orgAdresse,orgGadeid,orgHusnr,orgHusnrBogstav,orgRute,id,postnr,adresse,gadeid,husnr,husnrbogstav,rute,afstand,`timestamp`) "+ + "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, now() )"; saveStmt = conn.prepareStatement(sql); @@ -101,16 +99,17 @@ "FROM fulddaekning.adressetabel a " + "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " + "WHERE rute IS NULL " + //Ingen dækning - "AND a.postnr BETWEEN ? AND ? " + - "AND a.postnr NOT BETWEEN 3900 and 3999 " + //Skip greenland - "AND a.postnr NOT BETWEEN 9000 AND 9499 " + // Skip nordjylland (DAO) + //"AND a.postnr BETWEEN ? AND ? " + + "AND a.postnr BETWEEN 8000 and 8600 " + + //"AND a.postnr BETWEEN 9000 AND 9300 " + "AND latitude IS NOT NULL " + "AND longitude IS NOT NULL " + "AND gadeid IS NOT NULL " + - "AND (a.distributor IS NULL OR a.distributor<>'LUKKET') "; + "AND (a.distributor IS NULL OR a.distributor<>'LUKKET') " + + "LIMIT 2500"; PreparedStatement stmt = conn.prepareStatement(sql); - stmt.setInt(1, minPostnr); - stmt.setInt(2, maxPostnr); + //stmt.setInt(1, minPostnr); + //stmt.setInt(2, maxPostnr); List list = hentAdresseListe( stmt ); alleIkkeDaekkede = list.toArray( new Adresse[ list.size() ] ); @@ -146,7 +145,7 @@ - public Map> getDaekkedeAdresserHO() { + public Map> getDaekkedeAdresserHO() { return daekkedeAdresserHO; } @@ -169,14 +168,14 @@ List list = hentAdresseListe( stmt ); - alleAdresser = new ArrayList(); + alleAdresser = new ArrayList(); alleAdresser.addAll(list); for(Adresse addr : list) { short ho = addr.ho; - List hoListe = daekkedeAdresserHO.get(ho); + List hoListe = daekkedeAdresserHO.get(ho); if ( hoListe == null) { - hoListe = new ArrayList(); + hoListe = new ArrayList(); daekkedeAdresserHO.put(ho, hoListe); } @@ -202,22 +201,18 @@ saveStmt.setInt(4, orgAdresse.gadeid); saveStmt.setShort(5, orgAdresse.husnr); saveStmt.setString(6, orgAdresse.husnrbogstav); - saveStmt.setDouble(7, orgAdresse.latitude); - saveStmt.setDouble(8, orgAdresse.longitude); - saveStmt.setString(9, orgAdresse.rute); - - - saveStmt.setInt(10, bedsteAdresse.id); - saveStmt.setShort(11, bedsteAdresse.postnr); - saveStmt.setString(12, bedsteAdresse.adresse); - saveStmt.setInt(13, bedsteAdresse.gadeid); - saveStmt.setShort(14, bedsteAdresse.husnr); - saveStmt.setString(15, bedsteAdresse.husnrbogstav); - saveStmt.setDouble(16, bedsteAdresse.latitude); - saveStmt.setDouble(17, bedsteAdresse.longitude); - saveStmt.setString(18, bedsteAdresse.rute); + saveStmt.setString(7, orgAdresse.rute); + + + saveStmt.setInt(8, bedsteAdresse.id); + saveStmt.setShort(9, bedsteAdresse.postnr); + saveStmt.setString(10, bedsteAdresse.adresse); + saveStmt.setInt(11, bedsteAdresse.gadeid); + saveStmt.setShort(12, bedsteAdresse.husnr); + saveStmt.setString(13, bedsteAdresse.husnrbogstav); + saveStmt.setString(14, bedsteAdresse.rute); - saveStmt.setDouble(19, bedsteAfstand); + saveStmt.setDouble(15, bedsteAfstand); saveStmt.addBatch(); batchCount++;