--- dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/AddressManager.java 2016/02/03 18:51:36 2904 +++ dao/DaoAdresseVedligehold/src/main/java/dk/daoas/adressevedligehold/AddressManager.java 2016/02/05 08:15:09 2925 @@ -31,6 +31,7 @@ private TaskLogger logger = TaskLogger.getInstance(); + private int duplicateCount; List
addressList; @@ -326,7 +327,9 @@ } } } else { + duplicateCount++; logger.info( "Double visit monday " + addr); + return; // if the entry is duplicate on one day that it covers - then it will be as well on all the othters } } @@ -348,7 +351,9 @@ } } } else { + duplicateCount++; logger.info( "Double visit tuesday " + addr); + return; // if the entry is duplicate on one day that it covers - then it will be as well on all the othters } } @@ -368,7 +373,9 @@ } } } else { + duplicateCount++; logger.info( "Double visit wednesday " + addr); + return; // if the entry is duplicate on one day that it covers - then it will be as well on all the othters } } @@ -390,7 +397,9 @@ } } } else { + duplicateCount++; logger.info( "Double visit thursday " + addr); + return; // if the entry is duplicate on one day that it covers - then it will be as well on all the othters } } @@ -411,7 +420,9 @@ } } } else { + duplicateCount++; logger.info( "Double visit friday " + addr); + return; // if the entry is duplicate on one day that it covers - then it will be as well on all the othters } } @@ -433,7 +444,9 @@ } } } else { + duplicateCount++; logger.info( "Double visit saturday " + addr); + return; // if the entry is duplicate on one day that it covers - then it will be as well on all the othters } } @@ -454,7 +467,9 @@ } } } else { + duplicateCount++; logger.info( "Double visit sunday " + addr); + return; // if the entry is duplicate on one day that it covers - then it will be as well on all the othters } } @@ -482,9 +497,25 @@ private void createFromEntry(AddressSourceEntry entry) { + if (entry.husnr >= 1000) { //husnumre i DK må kun være på 3 cifre + return; + } + if (entry.husnr == 999) { return; } + + if (entry.litra.length() > 1) { //litra må kun være på 1 tegn + return; + } + if (entry.litra.length() == 1) { + char litra = entry.litra.charAt(0); + if ( Character.isLetter(litra) == false ) { + return; + } + + } + if (entry.kommunekode == 0 || entry.vejkode == 0) { return; } @@ -495,7 +526,7 @@ if (entry.gadeid == 0) { return; } - + String gadeidStr = Integer.toString(entry.gadeid); if (gadeidStr.length() != 9) { return; @@ -508,68 +539,38 @@ logger.info("Opretter adresse ud fra " + entry); - Address a = new Address(); - a.state = AddressState.CREATED; - - a.distributor = entry.distributor; - a.gadeid = entry.gadeid; - a.kommunekode = entry.kommunekode; - a.vejkode = entry.vejkode; - a.vejnavn = entry.vejnavn; - a.husnr = entry.husnr; - a.husnrbogstav = entry.litra; - a.postnr = entry.postnr; - //a.visited = true; - - if (entry.ugedage.mandag) { - a.ruteMandag = entry.rute; - a.korelisteMandag = entry.koreliste; - } - if (entry.ugedage.tirsdag) { - a.ruteTirsdag = entry.rute; - a.korelisteTirsdag = entry.koreliste; - } - if (entry.ugedage.onsdag) { - a.ruteOnsdag = entry.rute; - a.korelisteOnsdag = entry.koreliste; - } - if (entry.ugedage.torsdag) { - a.ruteTorsdag = entry.rute; - a.korelisteTorsdag = entry.koreliste; - } - if (entry.ugedage.fredag) { - a.ruteFredag = entry.rute; - a.korelisteFredag = entry.koreliste; - } - if (entry.ugedage.lordag) { - a.ruteLordag = entry.rute; - a.korelisteLordag = entry.koreliste; - } - if (entry.ugedage.sondag) { - a.ruteSondag = entry.rute; - a.korelisteLordag = entry.koreliste; - } + Address addr = new Address(); + addr.state = AddressState.CREATED; - updateDbkBane(a); + addr.distributor = entry.distributor; + addr.gadeid = entry.gadeid; + addr.kommunekode = entry.kommunekode; + addr.vejkode = entry.vejkode; + addr.vejnavn = entry.vejnavn; + addr.husnr = entry.husnr; + addr.husnrbogstav = entry.litra; + addr.postnr = entry.postnr; - // Nu er det nye adresse object oprettet - nu skal det gemmes i søge strukturen og totallisten + updateAddress(addr, entry); - TreeMap> gade = searchStructure.get( a.gadeid ); + + // Nu er det nye adresse object oprettet - nu skal det gemmes i søge strukturen og totallisten + TreeMap> gade = searchStructure.get( addr.gadeid ); if (gade == null) { gade = new TreeMap>(); - searchStructure.put(a.gadeid, gade); + searchStructure.put(addr.gadeid, gade); } - ArrayList
litraList = gade.get(a.husnr); + ArrayList
litraList = gade.get(addr.husnr); if (litraList == null) { litraList = new ArrayList
(); - gade.put(a.husnr, litraList); + gade.put(addr.husnr, litraList); } - litraList.add(a); - addressList.add(a); + litraList.add(addr); + addressList.add(addr); } @@ -643,7 +644,9 @@ return Collections.unmodifiableMap( unknownStreets ); } - + public int getDuplicateCount() { + return duplicateCount; + } public int getRejectedCount() { return rejectedEntries.size();