/[projects]/dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/afstandandenrute/Database.java
ViewVC logotype

Diff of /dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/afstandandenrute/Database.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2879 by torben, Sat Jan 30 14:12:51 2016 UTC revision 2903 by torben, Wed Feb 3 18:45:33 2016 UTC
# Line 14  import java.util.Queue; Line 14  import java.util.Queue;
14  import java.util.Set;  import java.util.Set;
15  import java.util.TreeSet;  import java.util.TreeSet;
16  import java.util.concurrent.ConcurrentLinkedQueue;  import java.util.concurrent.ConcurrentLinkedQueue;
 import java.util.logging.Logger;  
17    
18  import dk.daoas.adressevedligehold.beans.Address;  import dk.daoas.adressevedligehold.beans.Address;
19    import dk.daoas.adressevedligehold.tasks.TaskLogger;
20  import dk.daoas.adressevedligehold.util.DeduplicateHelper;  import dk.daoas.adressevedligehold.util.DeduplicateHelper;
21    import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
22    
23    
24    
25  public class Database {  public class Database {
26          Logger logger = Logger.getLogger(Database.class.getName());          private TaskLogger logger = TaskLogger.getInstance();
27    
28          int batchCount = 0;          int batchCount = 0;
29    
# Line 52  public class Database { Line 53  public class Database {
53          public Database(Connection conn)  throws SQLException,IOException {          public Database(Connection conn)  throws SQLException,IOException {
54                  this.conn = conn;                  this.conn = conn;
55    
56                  String sql = "INSERT INTO fulddaekning.afstand_anden_rute_ny (orgId,orgPostnr, orgAddress,orgGadeid,orgHusnr,orgHusnrBogstav,orgRute,id,postnr,Address,gadeid,husnr,husnrbogstav,rute,afstand,`timestamp`) "+                  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`) "+
57                                  "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, now() )";                                  "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, now() )";
58    
59                  saveStmt = conn.prepareStatement(sql);                            saveStmt = conn.prepareStatement(sql);          
# Line 72  public class Database { Line 73  public class Database {
73                  }                  }
74          }                }      
75                    
76            @SuppressFBWarnings("SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE")
77          public void renameResultTables() throws SQLException {          public void renameResultTables() throws SQLException {
78                  if (AfstandAndenRuteTask.test_mode == true) {                  if (AfstandAndenRuteTask.test_mode == true) {
79                          throw new RuntimeException("Can not rename tables in test mode");                          throw new RuntimeException("Can not rename tables in test mode");
# Line 99  public class Database { Line 101  public class Database {
101                    
102          public BoundingBox getBoundingbox(short postnr)  {          public BoundingBox getBoundingbox(short postnr)  {
103                  BoundingBox bb = bbCache.get(postnr);                  BoundingBox bb = bbCache.get(postnr);
104                  return bb.clone();//never return the original / cached object                  return new BoundingBox(bb); //never return the original / cached object
105          }          }
106                    
107                    
# Line 113  public class Database { Line 115  public class Database {
115                  logger.info("Henter alle IKKE-daekkede Addressr");                  logger.info("Henter alle IKKE-daekkede Addressr");
116    
117                  String sql = "SELECT id,a.postnr,vejnavn,gadeid,husnr,husnrbogstav,latitude,longitude,ruteMa,p.distributor as ho " +                  String sql = "SELECT id,a.postnr,vejnavn,gadeid,husnr,husnrbogstav,latitude,longitude,ruteMa,p.distributor as ho " +
118                                  "FROM fulddaekning.Addresstabel a " +                                  "FROM fulddaekning.adressetabel a " +
119                                  "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " +                                  "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " +
120                                  "WHERE ruteMa IS NULL " +  //Ingen dækning                                  "WHERE ruteMa IS NULL " +  //Ingen dækning
121                                  "AND a.postnr BETWEEN ? AND ? " +                                  "AND a.postnr BETWEEN ? AND ? " +
# Line 176  public class Database { Line 178  public class Database {
178                                    
179                  if ( alleAddressr == null ) {                  if ( alleAddressr == null ) {
180                          String sql = "SELECT id,a.postnr,vejnavn,gadeid,husnr,husnrbogstav,latitude,longitude,ruteMa,p.distributor as ho " +                          String sql = "SELECT id,a.postnr,vejnavn,gadeid,husnr,husnrbogstav,latitude,longitude,ruteMa,p.distributor as ho " +
181                                          "FROM fulddaekning.Addresstabel a " +                                          "FROM fulddaekning.adressetabel a " +
182                                          "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " +                                          "LEFT JOIN bogleveringer.postnummerdistributor p on (a.postnr=p.postnr) " +
183                                          "WHERE ruteMa IS NOT NULL " +                                          "WHERE ruteMa IS NOT NULL " +
184                                          "AND latitude IS NOT NULL " +                                          "AND latitude IS NOT NULL " +
# Line 271  public class Database { Line 273  public class Database {
273                  Constants consts = Constants.getInstance();                  Constants consts = Constants.getInstance();
274    
275                  //logger.info("Starting query");                  //logger.info("Starting query");
276                  ResultSet res = stmt.executeQuery();                  try ( ResultSet res = stmt.executeQuery() ) {
277                  //logger.info("Starting exec query done");                  
   
                 while (res.next()) {  
                           
                         double latitude = res.getDouble(7);  
                         double longitude = res.getDouble(8);  
   
                           
                         Address adr = new Address(latitude,longitude);  
278    
279                          adr.id = res.getInt(1);                          while (res.next()) {
280                          adr.postnr = res.getShort(2);                                  
281                          adr.vejnavn = vejnavnCache.getInstance( res.getString(3) );                                  double latitude = res.getDouble(7);
282                          adr.gadeid = res.getInt(4);                                  double longitude = res.getDouble(8);
283                          adr.husnr = res.getShort(5);          
284                          adr.husnrbogstav = husnrbogstavCache.getInstance( res.getString(6) );                                  
285                          //adr.latitude = res.getDouble(7);                                  Address adr = new Address(latitude,longitude);
286                          //adr.longitude = res.getDouble(8);          
287                          adr.ruteMandag =  ruteCache.getInstance( res.getString(9) );                                  adr.id = res.getInt(1);
288                          adr.ho = res.getShort(10);                                  adr.postnr = res.getShort(2);
289                                    adr.vejnavn = vejnavnCache.getInstance( res.getString(3) );
290                          list.add(adr);                                  adr.gadeid = res.getInt(4);
291                                    adr.husnr = res.getShort(5);
292                          if (consts.doCheckHO() == true && adr.ho == 0) {                                  adr.husnrbogstav = husnrbogstavCache.getInstance( res.getString(6) );
293                                  System.out.println( "Mangler HO" );                                  //adr.latitude = res.getDouble(7);
294                                  System.out.println( adr );                                  //adr.longitude = res.getDouble(8);
295                                  System.exit(0);                                  adr.ruteMandag =  ruteCache.getInstance( res.getString(9) );
296                                    adr.ho = res.getShort(10);
297            
298                                    list.add(adr);
299            
300                                    if (consts.doCheckHO() == true && adr.ho == 0) {
301                                            logger.info( "Mangler HO: " + adr );
302                                            throw new RuntimeException("Mangler HO: "+ adr);
303                                    }
304            
305                                    //logger.info( "Adress:" + adr);
306                          }                          }
307            
308                          //logger.info( "Adress:" + adr);                          res.close();
309                            stmt.close();
310            
311                            return list;
312                  }                  }
   
                 res.close();  
                 stmt.close();  
   
                 return list;  
313          }          }
314                                    
315  }  }

Legend:
Removed from v.2879  
changed lines
  Added in v.2903

  ViewVC Help
Powered by ViewVC 1.1.20