--- dao/DaoAdresseService/src/dk/daoas/daoadresseservice/CsvUdtraek.java 2015/02/26 13:42:10 2386 +++ dao/DaoAdresseService/src/main/java/dk/daoas/daoadresseservice/admin/CsvUdtraek.java 2015/07/14 08:48:33 2607 @@ -1,7 +1,11 @@ -package dk.daoas.daoadresseservice; +package dk.daoas.daoadresseservice.admin; import java.io.IOException; +import java.io.PrintWriter; +import java.net.URLEncoder; import java.sql.SQLException; +import java.text.SimpleDateFormat; +import java.util.Date; import java.util.List; import javax.servlet.ServletException; @@ -10,11 +14,13 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import dk.daoas.daoadresseservice.AddressSearch; import dk.daoas.daoadresseservice.beans.Address; import dk.daoas.daoadresseservice.beans.LoggedAddress; import dk.daoas.daoadresseservice.beans.SearchResult; import dk.daoas.daoadresseservice.beans.SearchResult.Status; import dk.daoas.daoadresseservice.db.DatabaseLayer; +import dk.daoas.daoadresseservice.util.TimingHelper; /** * Servlet implementation class CsvUdtraek @@ -43,12 +49,16 @@ } if (str != null) { + type = URLEncoder.encode(type, "UTF-8"); response.setContentType("text/csv"); response.setHeader("Content-Disposition", "filename=" + type + ".csv"); response.getWriter().print(str); } else { - response.setContentType("text/plain"); - response.getWriter().print("Type parameter is blank or invalid value"); + PrintWriter w = response.getWriter(); + response.setContentType("text/html"); + w.print("Type parameter is blank or invalid value
"); + w.print("Type: ikkedaekket
"); + //w.print("Type: sammenlign
"); - Deprecated } } @@ -56,7 +66,7 @@ * */ private String udtraekIkkeDaekket() { - AdressSearch search = (AdressSearch) getServletContext().getAttribute("search"); + AddressSearch search = (AddressSearch) getServletContext().getAttribute("search"); if (search == null) { return "data struktur ikke indlæst"; } @@ -81,9 +91,10 @@ * */ + @Deprecated protected String udtraekSammenligning(HttpServletRequest request) throws IOException { - AdressSearch search = (AdressSearch) getServletContext().getAttribute("search"); + AddressSearch search = (AddressSearch) getServletContext().getAttribute("search"); if (search == null) { return "data struktur ikke indlæst"; } @@ -94,10 +105,18 @@ antal_dage = Integer.parseInt( request.getParameter("antaldage") ); } + int antal_nyfejl_glok = 0; + int antal_nyfejl_glfejl = 0; + int antal_nyok_glfejl = 0; + int antal_nyok_glgoogle = 0; + int antal_nygoogle_glgoogle = 0; + int antal_nyok_glok = 0; try { + TimingHelper timer = new TimingHelper(); + StringBuilder sb = new StringBuilder(); - sb.append("besked;postnr;adresse;gl status;ny status;ny split\n"); + sb.append("besked;postnr;adresse;gl status;ny status;ny split;ny vej\n"); List addrList = DatabaseLayer.getLoggedAdresses(antal_dage); @@ -109,21 +128,30 @@ if (addr.status != 10 ) {//Hvis gl service kunne finde adressen så er vi ude i en regression appendLogLine("ny fejler, gl ok", sb, addr, res); + antal_nyfejl_glok++; } else { appendLogLine("ny fejler, gl fejler !!!", sb, addr, res); + antal_nyfejl_glfejl++; } } else { if (addr.status == 10) { appendLogLine("ny OK, gl fejler", sb, addr, res); + antal_nyok_glfejl++; } else if (addr.status == 12 ) { if (res.google == false && res.osm == false) { - appendLogLine("ny Direkte, gl Google", sb, addr, res); - } + appendLogLine("ny Direkte, gl Google", sb, addr, res); + antal_nyok_glgoogle++; + } else { + appendLogLine("ny Google, gl Google", sb, addr, res); + antal_nygoogle_glgoogle++; + } + } else { + antal_nyok_glok++; } } @@ -134,8 +162,32 @@ // } } + } + + + + sb.append("Forbrugt tid: ;").append( timer.getElapsed() ).append(";;;\n"); + sb.append("SearchData genereret: ;").append( search.getStatistics().buildTime ).append(";;;\n"); + sb.append("Sammenligning csv genereret: ;").append( new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format( new Date() ) ).append(";;;\n"); + + + sb.append("Antal dage: ;").append( antal_dage ).append(";;;\n"); sb.append("Antal adresser testet: ;").append(addrList.size()).append(";;;\n"); + double sekunder = timer.getElapsed() / 1000.0; + int adresserPrSekund = (int) Math.round( addrList.size() / sekunder ); + sb.append("Antal adresser testet/s: ;").append(adresserPrSekund).append(";;;\n"); + + + sb.append("Antal ny ok, gl ok: ;").append( antal_nyok_glok ).append(";;;\n"); + sb.append("Antal ny ok, gl google: ;").append( antal_nyok_glgoogle ).append(";;;\n"); + sb.append("Antal ny ok, gl fejl: ;").append( antal_nyok_glfejl ).append(";;;\n"); + sb.append("Antal ny google, gl google: ;").append( antal_nygoogle_glgoogle ).append(";;;\n"); + sb.append("Antal ny fejl, gl ok: ;").append( antal_nyfejl_glok ).append(";;;\n"); + sb.append("Antal ny fejl, gl fejl: ;").append( antal_nyfejl_glfejl ).append(";;;\n"); + + + return sb.toString(); @@ -153,6 +205,7 @@ .append(addr.status).append(";") .append(res.status).append(";") .append(res.splitResult).append(";") + .append(res.vej) .append("\n"); }